如果某台Linux服務器ping不通域名, 如下提示:
[root@localhost ~]# ping www.baidu.com
ping: unknown host www.baidu.com
首先確定已經連接上路由器,並且路由器能夠訪問外網,可以通過訪問網關進行確定
[root@localhost ~]# ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=2.96 ms
如果確定網絡沒問題的情況下, 可以通過如下步驟尋找解決辦法:
1) 確定設置了域名服務器
[root@localhost ~]# cat /etc/resolv.conf
因為我的DNS沒有設置所以導致了ping外網ping不通。將dns添加到該文件中
[root@localhost ~]# vi /etc/resolv.conf
nameserver 192.168.1.1 (默認網關)
2) 確保網關已設置
# grep GATEWAY /etc/sysconfig/network-scripts/ifcfg*
/etc/sysconfig/network-scripts/ifcfg-eth0:GATEWAY=192.168.1.1
如果未設置, 則通過如下方式增加網關:
# route add default gw 192.168.1.1
# service network restart (重啟網關設置)
3) 確保可用dns解析
# grep hosts /etc/nsswitch.conf
hosts: files dns
接下來就可以ping通百度了
#ping -c 3 www.baidu.com
ING www.a.shifen.com (220.181.6.175) 56(84) bytes of data.
64 bytes from 220.181.6.175: icmp_seq=0 ttl=50 time=9.51 ms