我们有一个linux box(称为jumper ),用于访问几个独立的DMZ中的服务器。 每个DMZ都有自己的子域名(如idmz.example.org , jdmz.example.org ),每个子域都有自己的权威域名服务器。
我们正在用新的Linux机器replace旧的Solaris跳线。 大多数情况都运行良好,但使用SSH连接到子域idmz.example.com服务器时出现问题。 Ping工作正常; 我们可以使用digparsing这个名字,但是SSH表示“无法parsing”。
名称parsing在服务器端运行良好,当我们使用IP地址连接时,没有延迟或超时。 但客户端的SSH声称无法parsing服务器。
jenny@jumper$ ping server.idmz.example.com PING server.idmz.example.com (192.168.1.3) 56(84) bytes of data. jenny@jumper$ ssh -v server.idmz.example.com OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * ssh: Could not resolve hostname server.idmz.example.com: Name or service not known
jenny@jumper$ ssh 192.168.1.3 [email protected]'s password:
我从客户端看到的一个区别是,我无法从名称服务器获得idmz的权威答案,但我确实从其他所有DMZ域获得了答案。
我们联系了DNS服务器的系统pipe理员,并要求他们validationidmz的设置。 事实certificate,他们的名字服务器声称处理IPV6,但它没有给出正确的答案IPV6查询。
在Solaris服务器上,默认情况下使用IPV4。 在新的Linux服务器上,SSH首先尝试了IPV6。 在这种情况下,这意味着由于无法使用IPV6parsing服务器名称,因此认为它是无法parsing的。 对于其他dmz域名,即使在使用IPV6时,域名服务器也给出了正确的响应。
我们改变了包含SSH的configuration
AddressFamily inet
问题就消失了。