对于可解析的名称,SSH 客户端名称解析失败

对于可解析的名称,SSH 客户端名称解析失败

我们有一个 Linux 机器(称为jumper),用于访问几个单独的 DMZ 中的服务器。每个 DMZ 都有自己的子域名(例如idmz.example.orgjdmz.example.org),每个子域名都有自己的权威名称服务器。

我们正在用新的 Linux 机器替换旧的 Solaris 跳线。大多数事情都运行良好,但我们在idmz.example.com使用 SSH 连接到子域中的服务器时遇到了问题。Ping 工作正常;我们可以使用 解析名称dig,但 SSH 显示“无法解析”。

名称解析在服务器端运行良好,当我们使用 IP 地址连接时,没有延迟或超时。但客户端的 SSH 声称无法解析服务器。

Ping 并且 SSH 连接失败:

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

使用 IP 而不是主机名成功建立 SSH 连接:

jenny@jumper$  ssh 192.168.1.3
[email protected]'s password: 

我从客户端看到的一个区别是,我无法从名称服务器获得权威答案idmz,但我可以从所有其他 DMZ 域获得答案。

答案1

我们联系了 DNS 服务器的系统管理员,并要求他们验证 的设置idmz。结果发现,他们的名称服务器声称可以处理 IPV6,但无法为 IPV6 查询提供正确答案。

在 Solaris 服务器上,默认使用 IPV4。在新的 Linux 服务器上,SSH 首先尝试 IPV6。在这种情况下,这意味着由于它无法使用 IPV6 解析服务器名称,因此它认为该名称不可解析。对于其他 dmz 域,即使使用 IPV6,名称服务器也会给出正确的响应。

我们修改了 SSH 的配置,使其包括

AddressFamily inet

问题就解决了。

相关内容