我在linux和freebsd下做过,改.netd、te.netd、login
之类的程序,把里面用到gethostbyaddr()去掉就可以了。
solaris没有源代码,估计是很难搞定的。
或许可以自己写一个dll,用ld_preload屏蔽掉gethostbyaddr()
的功能?
【 在 elale (虎子) 的大作中提到: 】
: 关于solaris系统登录的问题
: 我现在用的是solaris2.5.1操作系统,每次登录的时候都需要
: 逆向解析我的登录地址。但是因为有时候我是拨号上来的,所以
: 地址一般都不知道是什么,所以就显得特别的慢。我不能通过向
: /etc/hosts添加一条记录来修正这个问题,因为我根本不知道地址
: 是什么?
: 我该怎样去掉solaris系统登录时的逆向解析?
: 多谢!
--
发信人: hellguard (小四), 信区: unix
标 题: re: 我该怎样去掉solaris系统登录时的逆向解析
发信站: bbs 水木清华站 (tue oct 26 17:28:55 1999)
【 在 cirrus (望眼欲穿) 的大作中提到: 】
: 或许可以自己写一个dll,用ld_preload屏蔽掉gethostbyaddr()
: 的功能?
这招比较黑,可是我觉得也是理论上的吧。
gethostbyaddr之外的那些库函数你打算怎么
提供,一般都在同一个so中的呀。有没有办法
用什么bin编辑器把这个函数的return语句提前
到进入点上,就是无论如何都返回失败,不要
做无谓等待,不过咱对so很不熟悉,不敢动刀,
也是理论上说说
--
发信人: cirrus (望眼欲穿), 信区: unix
标 题: re: 我该怎样去掉solaris系统登录时的逆向解析
发信站: bbs 水木清华站 (tue oct 26 20:44:51 1999)
【 在 hellguard (小四) 的大作中提到: 】
: 这招比较黑,可是我觉得也是理论上的吧。
: gethostbyaddr之外的那些库函数你打算怎么
: 提供,一般都在同一个so中的呀。有没有办法
这是windowsdll的想法吧。
unix下用ld_preload可以只替换感兴趣的函数,
其余的还是调用原来的。
我试过用ld_preload加载自己写的一个几行的dll,
然后程序里的puts()不管什么参数统统输出helloworld,嘿嘿。
我试试看改一下gethostbyaddr()吧。不过我对solaris下
做dll一点经验都没有,嘿嘿。
: 用什么bin编辑器把这个函数的return语句提前
: 到进入点上,就是无论如何都返回失败,不要
: 做无谓等待,不过咱对so很不熟悉,不敢动刀,
: 也是理论上说说
--
发信人: cirrus (望眼欲穿), 信区: unix
标 题: 去掉solaris登录时的反向域名解析
发信站: bbs 水木清华站 (tue oct 26 22:23:38 1999)
/* rdns.c */
#include <.netdb.h>
struct hostent *gethostbyaddr(const char * a, int s, int t)
{
return null;
}
用gcc -o rdns.so -wl,-g rdns.c
得到rdns.so,放到/usr/lib/下。kill掉.netd,然后
ld_preload=/usr/lib/rdns.so /usr/sbin/.netd -s
这一句可以考虑放到/etc/init.d/.netsvc里
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器