故障現象:
- 用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,可以通。至此故障排除。