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

我们有一个 linux盒子(称为跳线),用于访问几个单独的DMZ中的服务器.每个DMZ都有自己的子域名(例如idmz.example.org,jdmz.example.org),每个子域都有自己的权威名称服务器.

我们正在用新的Linux机箱替换旧的Solaris跳线.大多数事情都运行良好,但我们在使用SSH连接到子域idmz.example.com中的服务器时遇到问题. 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
jenny@192.168.1.3's password:

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

解决方法

我们联系了DNS服务器的系统管理员,并要求他们验证idmz的设置.事实证明,他们的名称服务器声称处理IPV6,但它没有给出IPV6查询的正确答案.

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

我们将SSH的配置更改为include

AddressFamily inet

问题就消失了.

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...