解決linux ping:unknown host www.baidu.com

1798 ワード

Linuxサーバpingがドメイン名を知らない場合は、次のヒントがあります.
[root@localhost ~]# ping www.baidu.com
ping: unknown host www.baidu.com 

まず、ルータが接続されており、ルータが外部ネットワークにアクセスできることを決定し、ゲートウェイにアクセスして決定することができる.
[root@localhost ~]# ping 8.8.8.8
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
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=1.75 ms 

ネットワークに問題がないと判断した場合、以下の手順で解決策を探すことができます:1)ドメイン名サーバが設置されていることを確定し、なければGoogleの公共DNSサービスを設置することをお勧めします.問題はないはずです.
[root@localhost ~]# cat /etc/resolv.conf

search localdomain

私のDNSが設定されていないのでping外部ネットワークのpingが通じません.dnsをファイルに追加
 [root@localhost ~]# vi /etc/resolv.conf
nameserver 202.98.96.68
nameserver 61.139.2.69

2)ゲートウェイが設定されていることを確認する
# grep GATEWAY /etc/sysconfig/network-scripts/ifcfg* 

/etc/sysconfig/network-scripts/ifcfg-eth0:GATEWAY=192.168.40.1 

設定されていない場合は、ゲートウェイを次のように追加します.
# route add default gw 192.168.40.1

または、/etc/sysconfig/network-scripts/ifcfg*ファイルを手動で作成した後、networkサービスを再起動します.
service network restart 

3)利用可能なdns解析の確保
grep hosts /etc/nsswitch.conf 
hosts:      files dns 

以上のどれかに問題があれば、修正してからテストすれば、問題ないはずです.
#ping -c 3 www.baidu.com 
PING 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 
64 bytes from 220.181.6.175: icmp_seq=1 ttl=50 time=8.45 ms 
64 bytes from 220.181.6.175: icmp_seq=2 ttl=50 time=8.97 ms 
— www.a.shifen.com ping statistics — 
3 packets transmitted, 3 received, 0% packet loss, time 2002ms 
rtt min/avg/max/mdev = 8.450/8.977/9.511/0.446 ms, pipe 2