telnet建立连接特别慢,但是可以成功问题

telnet 连接慢,但是可以成功

在 telnet 192.168.x.x 时,发现可以连接成功,但是很慢,大概需5秒左右, 在百度后发现是DNS反向解析的问题

解决办法:

1.注掉 /etc/resolv.conf 里的内容 (略粗暴,没法ping外网了)

首次测试的确ok,但是在设置过网卡配置文件

/etc/sysconfig/network-scripts/ifcfg-eth0(网卡配置文件)

重启网络服务后发现,前者文件内容是依附于网卡配置文件,即使更改,重启网络后依旧会被覆盖

2.设置两个DNS (方法一的改进版)

/etc/sysconfig/network-scripts/ifcfg-eth0(网卡配置文件)

此文件中可设置DNS优先级, 第一优先级设置成网关,第二个设置成正常的即可

连telnet,ping外网都ok

3.让telnet连接时不使用DNS解析 (高定制,不影响其他程序)

老版本 适用(我rhel6没这个文件,只有xinetd,没这个字段)

编辑/etc/inetd.conf文件,加参数c在telnet和ftp两行最后,如下

ftp stream tcp6 nowait root /usr/sbin/ftpd ftpd -c(关FTP的)

telnet stream tcp6 nowait root /usr/sbin/telnetd telnetd -a -c

刷新inetd服务: refresh -s inetd

4.连接慢还有一个原因是,有程序在用网络,例如下电影啥的

后来发现(将DNS设置成8.8.8.8,不设网关为DNS竟然也有效,不知为啥

额,换了个虚拟机测试竟然又失效了...还是加第一DNS为网关靠谱)

PS : (在不进行上述改动的情况下)

在测试中发现远程主机好像会缓存本机ip,但断开局域网后又会清除缓存

连上局域网后,首次telnet需要5秒,再连就是秒连

[好像这事和DNS缓存无关,我后来才开启的nscd服务,之前缓存服务是关闭的

而且nscd缓存有个超时,超过一段时间就会被清理,现在连接时间已经达到了17秒...

关闭nscd服务就会关闭缓存]

ps.不要将 /etc/xind.conf 中[mdns]字段改为no,否则连接时间会由原来5秒变10秒

改回去重启服务还是10s...

telnet 连接不上

安装telnet服务后, 需要将 /etc/xinetd.d/telnet 文件中 "only-from"字段注销掉,

另外再操作一次关闭防火墙

重启后生效 : chkconfig iptables off [on为开启]

一次性生效 : service iptables stop [start为开启]