Chinaunix首页 | 论坛 | 博客
  • 博客访问: 546700
  • 博文数量: 105
  • 博客积分: 6010
  • 博客等级: 准将
  • 技术积分: 1132
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-15 09:57
文章分类

全部博文(105)

文章存档

2011年(1)

2009年(41)

2008年(63)

我的朋友

分类: LINUX

2008-12-08 16:02:36

  项目中,使用红旗 Asianux 3.0 for x86系统,对外提供telnet服务。修改/etc/xinetd.d/telnet配置文件,重启xinetd服务,使用netstat -ln|grep 23确认服务器已经打开23端口。但使用客户端Netterm或Windows终端去连接,都报如下错误:
引用
getnameinfo: localhost: Success
                               Temporary failure in name resolution: Illegal seek

    怀疑安全设置中需要DNS回访导致的。

◎ 解决方案
同样的配置方式,原在虚拟机上没出现同样的问题。后经排查,原来与我在虚拟机上设置的网络配置有关,也与系统NIS服务配置文件有关。解决方法有三个:
1、提供正确的DNS服务器
正是因为我把虚拟机的网卡设置为Bridged模式,该网卡通过DHCP获取了正确的DNS服务器:
引用
# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
nameserver 218.85.157.99
nameserver 202.101.110.55

如果您也配置了正确的DNS服务器的话,那就不会出现上面的报错信息了。

2、设定指定的客户主机和IP
出现该错误,可以说也是一种安全限制吧。使用telnet访问服务端的客户端需要在服务器上有主机名和IP对应信息。既然这样,如果你没有配置DNS服务器,那只要把要访问telnet的客户端的IP和主机名加到/etc/hosts文件中,例如:
引用
# cat /etc/hosts
192.168.48.1 test

这样,该客户端IP为192.168.48.1的机器就可以通过telnet访问服务器了。

3、修改NIS设定文件
若有大量的客户端需要访问服务器,第二种方法就很麻烦了。这时,只要修改/etc/nsswitch.conf文件,找:
引用
#hosts:     db files nisplus nis dns
hosts:      files dns

修改为:
引用
#hosts:     db files nisplus nis dns
hosts:      files

保存后,就再也不会出现开头的错误了。
※ 注意,该修改会导致在/etc/resolv.conf中设置的DNS失效。请根据实际情况选择上述其中一个方法。
阅读(3294) | 评论(1) | 转发(0) |
0

上一篇:sed使用手册(1)

下一篇:Linux OS的一些补充

给主人留下些什么吧!~~

chinaunix网友2008-12-24 13:51:43

我也碰到相同的问题,按照你的第二种方法解决。谢谢!