故障现象:
- 用telnet IP+端口的方式测试正常,能够访问;
- 通过telnet域名+端口方式,提示:未知的名称或服务(Name or service not known)。
- 测试百度的网络地址,ping能够通。但是ping域名,出现同样的提示。
根据上面的故障现象分析,初步判断是DNS配置问题。
故障排查过程:
通过nslookup测试DNS解析,从结果来看,本地的DNS的服务器配置应该是可用的。
但是测试发现,使用telnet 域名+端口的方式测试,依然提示:未知的名称或服务。
测试了同网段的其它机器,通过所配置的DNS服务器X.X.X.X可以正常的进行解析,所以还是怀疑是本机配置问题。
搜索相关的资料。发现LINUX系统中有一个配置文件/etc/nsswitch.conf,这个文件里面定义了域名解析的搜索顺序。
一般来说,域名的解析通过两种方式。一种是静态解析,通过/etc/hosts文件进行配置;另外一种就是通过DNS服务器。
检查/etc/nsswitch.conf,发现对应项的配置如下,DNS被注释掉了,所以主机始终不会用到DNS的配置取解析地址。。
修改配置,将注释去掉以后,重新测试,通过域名的方式telnet,可以通。至此故障排除。