Ubuntu

需要了解:ping

  • December 6, 2014

我使用的是 ubuntu 13.10,並且我之前使用過 ping 來檢查伺服器是否啟動/關閉。

有人可以幫我理解嗎,因為我找不到任何解釋這一點的東西我做了通常的 ping 命令

ping 8.8.8.8

沒有Google域的輸出

64 bytes from 8.8.8.8: icmp_seq=1 ttl=48 time=35.9 ms

請注意 IP 中的尾隨 .(句點)

ping 8.8.8.8.

用Google域輸出

64 bytes from google-public-dns-a.google.com (8.8.8.8): icmp_seq=1 ttl=48 time=35.3 ms

輸出:

developer@chnphp006:~$ ping 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=48 time=35.9 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=48 time=35.7 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=48 time=46.2 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=48 time=36.6 ms
^C
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 35.779/38.658/46.276/4.415 ms


developer@chnphp006:~$ ping 8.8.8.8.

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from google-public-dns-a.google.com (8.8.8.8): icmp_seq=1 ttl=48 time=35.3 ms
64 bytes from google-public-dns-a.google.com (8.8.8.8): icmp_seq=2 ttl=48 time=35.1 ms
64 bytes from google-public-dns-a.google.com (8.8.8.8): icmp_seq=3 ttl=48 time=36.1 ms
64 bytes from google-public-dns-a.google.com (8.8.8.8): icmp_seq=4 ttl=48 time=35.8 ms
^C
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3001ms
rtt min/avg/max/mdev = 35.128/35.631/36.145/0.441 ms

ping 命令中的尾隨句點有什麼區別?

更新:

這只發生在Ubuntu系統上,而不是 centos/Debian。

其他例子:

developer@chnphp006:~$ ping 198.252.206.16
PING 198.252.206.16 (198.252.206.16) 56(84) bytes of data.
64 bytes from 198.252.206.16: icmp_seq=1 ttl=52 time=258 ms
64 bytes from 198.252.206.16: icmp_seq=2 ttl=52 time=258 ms
64 bytes from 198.252.206.16: icmp_seq=3 ttl=52 time=273 ms
^C
--- 198.252.206.16 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 258.144/263.339/273.598/7.278 ms

developer@chnphp006:~$ ping 198.252.206.16.
PING 198.252.206.16 (198.252.206.16) 56(84) bytes of data.
64 bytes from stackoverflow.com (198.252.206.16): icmp_seq=1 ttl=52 time=259 ms
64 bytes from stackoverflow.com (198.252.206.16): icmp_seq=2 ttl=52 time=267 ms
64 bytes from stackoverflow.com (198.252.206.16): icmp_seq=3 ttl=52 time=271 ms
^C
--- 198.252.206.16 ping statistics ---
7 packets transmitted, 6 received, 14% packet loss, time 6000ms
rtt min/avg/max/mdev = 258.292/264.777/274.093/6.447 ms

通常使用尾隨點來表示使用的主機名是完全限定的域名(在 DNS 根目錄下)。

附加點將防止在 DNS 查找中將搜尋域附加到(短)主機名。為什麼它在您的範例中具有IP-address的結果,我不知道。

可能通常帶有點的主機名.也被解釋為 FQDN,除非 IP 地址的十進製表示(四個數字

$$ 0-255 $$點分隔)被檢測到,但是當尾隨點添加到 ip 地址時匹配規則失敗。 如果您的搜尋域是example.com並且 A 記錄www.example.com.存在:

ping www

應解決:

ping www.example.com. 

和您的網路伺服器的 A 記錄,並導致一些 ICMP 數據包被發送到您的網路伺服器。

ping www.

將失敗,因為 AFAIK 沒有頂級域www

引用自:https://serverfault.com/questions/641102