haizdl
作者haizdl·2017-03-27 15:36
技术经理·大连

关于SSH登录非常慢的案例

字数 967阅读 1963评论 2赞 3

【问题背景及现象】

Server A:
Ip Address = 10.6.12.251
OS = AIX 7.1-03-07
PowerVM@Dlpar

Server B:
Ip Address = 10.6.12.241
OS = AIX 7.1-03-07
PowerVM@Dlpar

从A到B,或者是从B到A,ssh登录,非常慢,差不多两分钟才能反应到密码输入的地方。一旦登录到系统中,那么接下来的操作一些正常。

【问题诊断思路】

  1. 按照以往的经验,这种问题多半是跟DNS有关系。于是作了以下动作:
    1)查看DNS配置。
    /etc/resolv.conf
    nameserver 10.7.2.151

2)ping 10.8.7.2.151
3)nslookup
=> 结果:DNS可达,可解析,看起来DNS并没有故障。

  1. DNS本身没有问题,并不代表跟DNS没有关系,因为SSH登录操作时,一般会做反向解析。于是又作了以下动作:
    1)修改SSH配置文件。
    /etc/ssh/sshd_config
    UseDNS no
    GSSAPIAuthentication no
    =>结果:还是慢。
  2. 有点郁闷了,难道跟DNS没关系?于是又作了以下测试:
    1)干脆把/etc/resolv.conf清除掉试试看。
    =>立马回复正常。
    2)再次把/etc/resolv.conf恢复。
    =>也是立竿见影,立马又慢了。

=> 肯定是跟DNS有关系了,但是目前似乎找不到关系在哪儿。

  1. 最后一步了,抓包。
    1)iptrace
    2)tcpdump
    3)ssh -v
    监控了三个东西,结果从ipreport发现事情了。

在做DNS解析的前后,好多类似以下的日志:

====( 49 bytes transmitted on interface lo0 )==== 13:40:40.980246968
loopback IPv6 packet (IPv6)
IPv6 header breakdown:

< SRC = ::1 >  (loopback)
< DST = ::1 >  (loopback)
ip_v=6, ip_pri=0, ip_flowid=0
ip_len=9, ip_hoplimit=30, ip_nexthdr=17(UDP)

UDP header breakdown:


[ udp length = 9 | udp checksum = 0 ]

00000000 00

=> 它在搞什么,怎么还弄出IPv6?

  1. 查询IBM 官方文档,关于DNS解析的详细说明。
    /etc/netsvc.conf
    做如下更改:
    hosts=local,bind -> hosts=local4,bind4

问题解决。
留给大家作为一个经验点留存。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

3

添加新评论2 条评论

mashuaiasmashuaias系统运维工程师华胜
2017-03-27 18:11
解析的顺序出现了错误,
saigonsaigon系统运维工程师China
2017-03-27 16:14
只把bind改成bind4就行了吧

haizdl@saigon 没错,功能上只把bind改成bind4就可以了。标准做法把local也改了

2017-03-27 20:25
Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广