当使用ssh连接到Debian服务器时,如果使用[email protected](服务器的IP地址),连接是即时的。
但是,如果使用[email protected](将DNSredirect到服务器的IP地址),则连接成功之前,ssh连接将挂起20秒。 ssh日志显示如下:
[alex@alex home]$ ssh -v -v [email protected] OpenSSH_5.5p1, OpenSSL 1.0.0c-fips 2 Dec 2010 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug2: ssh_connect: needpriv 0
在这里它持续20秒钟之前挂起。
我认为这可能与反向DNS或类似的东西有关(服务器并不真正“知道”它的名字是hostname.com,它只是将DNSredirect到它的IP地址)。
我已经将以下选项添加到/ etc / ssh / sshd_config中:
UseDNS no GSSAPIAuthentication no
没有效果。
/etc/resolv.conf中的服务器DNSloggingconfiguration正确:
ping hostname.com PING sub.domain.com (XXXX) 56(84) bytes of data. 64 bytes from replicant (XXXX): icmp_seq=1 ttl=64 time=0.029 ms 64 bytes from replicant (XXXX): icmp_seq=2 ttl=64 time=0.050 ms s
谢谢您的帮助。
解决scheme:似乎我的ISP负责我的DSL路由器正在造成麻烦。
改变我的DNS服务器从192.168.1.1(路由器的IP)到谷歌(8.8.8.8,总是很好知道什么时候你很急)瞬间解决了连接延迟问题。
我猜测,提供的50€路由器不会cachingDNS条目,但我不明白为什么ping DNS地址没有延迟,并且20秒等待太久,即使是未caching的DNS。
Tnanks再次寻求帮助!
你需要添加
GSSAPIAuthentication no
…到/etc/ssh/ssh_config , 而不是 /etc/ssh/sshd_config如你所说。 要检查是否确实是修复,请尝试在您的命令行中添加-o GSSAPIAuthentication=no以查看是否更改了这些内容。
您可能在客户端有一些DNS问题,请检查解决您的服务器的主机名需要多less时间:
[vitalie@silver ~]$ time host www.google.com www.google.com is an alias for www.l.google.com. www.l.google.com has address 74.125.87.99 www.l.google.com has address 74.125.87.104 real 0m0.727s user 0m0.002s sys 0m0.008s
我正在使用Mac客户端。 在服务器上禁用GSSAPIAuthentication不起作用。
我遵循http://hints.macworld.com/article.php?story=20111020115417965,并在我的〜/ .ssh / config中join了IPv6:
Host ... AddressFamily inet
这解决了这个问题:-)