Linux系統(tǒng)的ping命令是常用的網(wǎng)絡(luò)命令盅蝗,它通常用來(lái)測(cè)試與目標(biāo)主機(jī)的連通性彰居,我們經(jīng)常會(huì)說(shuō)“ping一下某機(jī)器喳坠,
看是不是開著”杈曲、不能打開網(wǎng)頁(yè)時(shí)會(huì)說(shuō)“你先ping網(wǎng)關(guān)地址192.168.1.1試試”。
它通過(guò)發(fā)送ICMP ECHO_REQUEST數(shù)據(jù)包到網(wǎng)絡(luò)主機(jī)(send ICMP ECHO_REQUEST to network hosts)非驮,并顯示響應(yīng)情況
交汤,這樣我們就可以根據(jù)它輸出的信息來(lái)確定目標(biāo)主機(jī)是否可訪問(wèn)(但這不是絕對(duì)的)。
有些服務(wù)器為了防止通過(guò)ping探測(cè)到劫笙,通過(guò)防火墻設(shè)置了禁止ping或者在內(nèi)核參數(shù)中禁止ping芙扎,這樣就不能通過(guò)ping確定該主機(jī)是否還處于開啟狀態(tài)星岗。
linux下的ping和windows下的ping稍有區(qū)別,linux下ping不會(huì)自動(dòng)終止,
需要按ctrl+c終止或者用參數(shù)-c指定要求完成的回應(yīng)次數(shù)。
1.命令格式:
ping [參數(shù)] [主機(jī)名或IP地址]
2.命令功能:
ping命令用于:確定網(wǎng)絡(luò)和各外部主機(jī)的狀態(tài)纵顾;跟蹤和隔離硬件和軟件問(wèn)題伍茄;測(cè)試、評(píng)估和管理網(wǎng)絡(luò)施逾。如果主機(jī)正在運(yùn)行并連在網(wǎng)上敷矫,它就對(duì)回送信號(hào)進(jìn)行響應(yīng)。每個(gè)回送信號(hào)請(qǐng)求包含一個(gè)網(wǎng)際協(xié)議(IP)和 ICMP 頭汉额,后面緊跟一個(gè) tim 結(jié)構(gòu)曹仗,以及來(lái)填寫這個(gè)信息包的足夠的字節(jié)。缺省情況是連續(xù)發(fā)送回送信號(hào)請(qǐng)求直到接收到中斷信號(hào)(Ctrl-C)蠕搜。
ping 命令每秒發(fā)送一個(gè)數(shù)據(jù)報(bào)并且為每個(gè)接收到的響應(yīng)打印一行輸出怎茫。ping 命令計(jì)算信號(hào)往返時(shí)間和(信息)包丟失情況的統(tǒng)計(jì)信息,并且在完成之后顯示一個(gè)簡(jiǎn)要總結(jié)妓灌。ping 命令在程序超時(shí)或當(dāng)接收到 SIGINT 信號(hào)時(shí)結(jié)束轨蛤。Host 參數(shù)或者是一個(gè)有效的主機(jī)名或者是因特網(wǎng)地址。
3.命令參數(shù):
-d 使用Socket的SO_DEBUG功能虫埂。
-f 極限檢測(cè)祥山。大量且快速地送網(wǎng)絡(luò)封包給一臺(tái)機(jī)器,看它的回應(yīng)掉伏。
-n 只輸出數(shù)值缝呕。
-q 不顯示任何傳送封包的信息,只顯示最后的結(jié)果斧散。
-r 忽略普通的Routing Table供常,直接將數(shù)據(jù)包送到遠(yuǎn)端主機(jī)上。通常是查看本機(jī)的網(wǎng)絡(luò)接口是否有問(wèn)題鸡捐。
-R 記錄路由過(guò)程栈暇。
-v 詳細(xì)顯示指令的執(zhí)行過(guò)程。
<p>-c 數(shù)目:在發(fā)送指定數(shù)目的包后停止箍镜。
-i 秒數(shù):設(shè)定間隔幾秒送一個(gè)網(wǎng)絡(luò)封包給一臺(tái)機(jī)器瞻鹏,預(yù)設(shè)值是一秒送一次。
-I 網(wǎng)絡(luò)界面:使用指定的網(wǎng)絡(luò)界面送出數(shù)據(jù)包鹿寨。
-l 前置載入:設(shè)置在送出要求信息之前,先行發(fā)出的數(shù)據(jù)包薪夕。
-p 范本樣式:設(shè)置填滿數(shù)據(jù)包的范本樣式脚草。
-s 字節(jié)數(shù):指定發(fā)送的數(shù)據(jù)字節(jié)數(shù),預(yù)設(shè)值是56原献,加上8字節(jié)的ICMP頭馏慨,一共是64ICMP數(shù)據(jù)字節(jié)埂淮。
-t 存活數(shù)值:設(shè)置存活數(shù)值TTL的大小。
4.使用實(shí)例:
實(shí)例1:ping的通的情況
命令:
ping 192.168.120.205
輸出:
[root@localhost ~]# ping 192.168.120.205
PING 192.168.120.205 (192.168.120.205) 56(84) bytes of data.
64 bytes from 192.168.120.205: icmp_seq=1 ttl=64 time=0.720 ms
64 bytes from 192.168.120.205: icmp_seq=2 ttl=64 time=0.181 ms
64 bytes from 192.168.120.205: icmp_seq=3 ttl=64 time=0.191 ms
64 bytes from 192.168.120.205: icmp_seq=4 ttl=64 time=0.188 ms
64 bytes from 192.168.120.205: icmp_seq=5 ttl=64 time=0.189 ms
--- 192.168.120.205 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4000ms
rtt min/avg/max/mdev = 0.181/0.293/0.720/0.214 ms
[root@localhost ~]#
實(shí)例2:ping不通的情況
命令:
ping 192.168.120.202
輸出:
[root@localhost ~]# ping 192.168.120.202
PING 192.168.120.202 (192.168.120.202) 56(84) bytes of data.
From 192.168.120.204 icmp_seq=1 Destination Host Unreachable
From 192.168.120.204 icmp_seq=2 Destination Host Unreachable
From 192.168.120.204 icmp_seq=3 Destination Host Unreachable
From 192.168.120.204 icmp_seq=4 Destination Host Unreachable
From 192.168.120.204 icmp_seq=5 Destination Host Unreachable
From 192.168.120.204 icmp_seq=6 Destination Host Unreachable
--- 192.168.120.202 ping statistics ---
8 packets transmitted, 0 received, +6 errors, 100% packet loss, time 7005ms
, pipe 4
[root@localhost ~]#
實(shí)例3:ping網(wǎng)關(guān)
命令:
ping -b 192.168.120.1
輸出:
[root@localhost ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.120.0 * 255.255.255.0 U 0 0 0 eth0
192.168.0.0 192.168.120.1 255.255.0.0 UG 0 0 0 eth0
10.0.0.0 192.168.120.1 255.0.0.0 UG 0 0 0 eth0
default 192.168.120.240 0.0.0.0 UG 0 0 0 eth0
[root@localhost ~]# ping -b 192.168.120.1
PING 192.168.120.1 (192.168.120.1) 56(84) bytes of data.
64 bytes from 192.168.120.1: icmp_seq=1 ttl=255 time=2.02 ms
64 bytes from 192.168.120.1: icmp_seq=2 ttl=255 time=1.83 ms
64 bytes from 192.168.120.1: icmp_seq=3 ttl=255 time=1.68 ms
64 bytes from 192.168.120.1: icmp_seq=4 ttl=255 time=1.98 ms
64 bytes from 192.168.120.1: icmp_seq=5 ttl=255 time=1.88 ms
--- 192.168.120.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4000ms
rtt min/avg/max/mdev = 1.682/1.880/2.020/0.129 ms
實(shí)例4:ping指定次數(shù)
命令:
ping -c 10 192.168.120.206
輸出:
[root@localhost ~]# ping -c 10 192.168.120.206
PING 192.168.120.206 (192.168.120.206) 56(84) bytes of data.
64 bytes from 192.168.120.206: icmp_seq=1 ttl=64 time=1.25 ms
64 bytes from 192.168.120.206: icmp_seq=2 ttl=64 time=0.260 ms
64 bytes from 192.168.120.206: icmp_seq=3 ttl=64 time=0.242 ms
64 bytes from 192.168.120.206: icmp_seq=4 ttl=64 time=0.271 ms
64 bytes from 192.168.120.206: icmp_seq=5 ttl=64 time=0.274 ms
64 bytes from 192.168.120.206: icmp_seq=6 ttl=64 time=0.295 ms
64 bytes from 192.168.120.206: icmp_seq=7 ttl=64 time=0.269 ms
64 bytes from 192.168.120.206: icmp_seq=8 ttl=64 time=0.270 ms
64 bytes from 192.168.120.206: icmp_seq=9 ttl=64 time=0.253 ms
64 bytes from 192.168.120.206: icmp_seq=10 ttl=64 time=0.289 ms
--- 192.168.120.206 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9000ms
rtt min/avg/max/mdev = 0.242/0.367/1.251/0.295 ms
[root@localhost ~]#
實(shí)例5:時(shí)間間隔和次數(shù)限制的ping
命令:
ping -c 10 -i 0.5 192.168.120.206
輸出:
[root@localhost ~]# ping -c 10 -i 0.5 192.168.120.206
PING 192.168.120.206 (192.168.120.206) 56(84) bytes of data.
64 bytes from 192.168.120.206: icmp_seq=1 ttl=64 time=1.24 ms
64 bytes from 192.168.120.206: icmp_seq=2 ttl=64 time=0.235 ms
64 bytes from 192.168.120.206: icmp_seq=3 ttl=64 time=0.244 ms
64 bytes from 192.168.120.206: icmp_seq=4 ttl=64 time=0.300 ms
64 bytes from 192.168.120.206: icmp_seq=5 ttl=64 time=0.255 ms
64 bytes from 192.168.120.206: icmp_seq=6 ttl=64 time=0.264 ms
64 bytes from 192.168.120.206: icmp_seq=7 ttl=64 time=0.263 ms
64 bytes from 192.168.120.206: icmp_seq=8 ttl=64 time=0.331 ms
64 bytes from 192.168.120.206: icmp_seq=9 ttl=64 time=0.247 ms
64 bytes from 192.168.120.206: icmp_seq=10 ttl=64 time=0.244 ms
--- 192.168.120.206 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 4499ms
rtt min/avg/max/mdev = 0.235/0.362/1.241/0.294 ms
[root@localhost ~]# ping -c 10 -i 0.01 192.168.120.206
PING 192.168.120.206 (192.168.120.206) 56(84) bytes of data.
64 bytes from 192.168.120.206: icmp_seq=1 ttl=64 time=0.244 ms
64 bytes from 192.168.120.206: icmp_seq=2 ttl=64 time=0.195 ms
64 bytes from 192.168.120.206: icmp_seq=3 ttl=64 time=0.219 ms
64 bytes from 192.168.120.206: icmp_seq=4 ttl=64 time=0.204 ms
64 bytes from 192.168.120.206: icmp_seq=5 ttl=64 time=3.56 ms
64 bytes from 192.168.120.206: icmp_seq=6 ttl=64 time=1.93 ms
64 bytes from 192.168.120.206: icmp_seq=7 ttl=64 time=0.193 ms
64 bytes from 192.168.120.206: icmp_seq=8 ttl=64 time=0.193 ms
64 bytes from 192.168.120.206: icmp_seq=9 ttl=64 time=0.202 ms
64 bytes from 192.168.120.206: icmp_seq=10 ttl=64 time=0.211 ms
--- 192.168.120.206 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 90ms
rtt min/avg/max/mdev = 0.193/0.716/3.564/1.080 ms
[root@localhost ~]#
實(shí)例6:通過(guò)域名ping公網(wǎng)上的站點(diǎn)
命令:
ping -c 5 www.58.com
輸出:
peida-VirtualBox ~ # ping -c 5 www.58.com
PING www.58.com (211.151.111.30) 56(84) bytes of data.
64 bytes from 211.151.111.30: icmp_req=1 ttl=49 time=14.7 ms
64 bytes from 211.151.111.30: icmp_req=2 ttl=49 time=16.4 ms
64 bytes from 211.151.111.30: icmp_req=3 ttl=49 time=15.2 ms
64 bytes from 211.151.111.30: icmp_req=4 ttl=49 time=14.6 ms
64 bytes from 211.151.111.30: icmp_req=5 ttl=49 time=19.9 ms
--- www.58.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 20101ms
rtt min/avg/max/mdev = 14.618/16.192/19.917/1.965 ms
peida-VirtualBox ~ #
實(shí)例7:多參數(shù)使用
命令:
ping -i 3 -s 1024 -t 255 192.168.120.206
輸出:
[root@localhost ~]# ping -i 3 -s 1024 -t 255 192.168.120.206
PING 192.168.120.206 (192.168.120.206) 1024(1052) bytes of data.
1032 bytes from 192.168.120.206: icmp_seq=1 ttl=64 time=1.99 ms
1032 bytes from 192.168.120.206: icmp_seq=2 ttl=64 time=0.694 ms
1032 bytes from 192.168.120.206: icmp_seq=3 ttl=64 time=0.300 ms
1032 bytes from 192.168.120.206: icmp_seq=4 ttl=64 time=0.481 ms
1032 bytes from 192.168.120.206: icmp_seq=5 ttl=64 time=0.415 ms
1032 bytes from 192.168.120.206: icmp_seq=6 ttl=64 time=0.600 ms
1032 bytes from 192.168.120.206: icmp_seq=7 ttl=64 time=0.411 ms
1032 bytes from 192.168.120.206: icmp_seq=8 ttl=64 time=0.281 ms
1032 bytes from 192.168.120.206: icmp_seq=9 ttl=64 time=0.318 ms
1032 bytes from 192.168.120.206: icmp_seq=10 ttl=64 time=0.362 ms
1032 bytes from 192.168.120.206: icmp_seq=11 ttl=64 time=0.408 ms
1032 bytes from 192.168.120.206: icmp_seq=12 ttl=64 time=0.445 ms
1032 bytes from 192.168.120.206: icmp_seq=13 ttl=64 time=0.397 ms
1032 bytes from 192.168.120.206: icmp_seq=14 ttl=64 time=0.406 ms
1032 bytes from 192.168.120.206: icmp_seq=15 ttl=64 time=0.458 ms
--- 192.168.120.206 ping statistics ---
15 packets transmitted, 15 received, 0% packet loss, time 41999ms
rtt min/avg/max/mdev = 0.281/0.531/1.993/0.404 ms
[root@localhost ~]#
說(shuō)明:
-i 3 發(fā)送周期為 3秒 -s 設(shè)置發(fā)送包的大小為1024 -t 設(shè)置TTL值為 255