您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關Linux系統ping命令怎么理解,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
ping命令運行在命令提示符終端,用法為:“ping 參數 目標主機”。其中參數為零到多個,目標主機可以是IP或者域名。
Usage: ping [-aAbBdDfhLnOqrRUvV] [-c count] [-i interval] [-I interface] [-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos] [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option] [-w deadline] [-W timeout] [hop1 ...] destination
下面是愛E族(aiezu.com)收集整理的ping詳細參數,可能部分不全或翻譯錯誤,歡迎指正:
參數 | 詳解 |
---|---|
-a | Audible ping. |
-A | 自適應ping,根據ping包往返時間確定ping的速度; |
-b | 允許ping一個廣播地址; |
-B | 不允許ping改變包頭的源地址; |
-c count | ping指定次數后停止ping; |
-d | 使用Socket的SO_DEBUG功能; |
-F flow_label | 為ping回顯請求分配一個20位的“flow label”,如果未設置,內核會為ping隨機分配; |
-f | 極限檢測,快速連續ping一臺主機,ping的速度達到100次每秒; |
-i interval | 設定間隔幾秒發送一個ping包,默認一秒ping一次; |
-I interface | 指定網卡接口、或指定的本機地址送出數據包; |
-l preload | 設置在送出要求信息之前,先行發出的數據包; |
-L | 抑制組播報文回送,只適用于 | 的目標為一個組播地址
-n | 不要將ip地址轉換成主機名; |
-p pattern | 指定填充ping數據包的十六進制內容,在診斷與數據有關的網絡錯誤時這個選項就非常有用,如:“-p ff”; |
-q | 不顯示任何傳送封包的信息,只顯示最后的結果 |
-Q tos | 設置Qos(Quality of Service),它是ICMP數據報相關位;可以是十進制或十六進制數,詳見rfc1349和rfc2474文檔; |
-R | 記錄ping的路由過程(IPv4 only); 注意:由于IP頭的限制,最多只能記錄9個路由,其他會被忽略; |
-r | 忽略正常的路由表,直接將數據包送到遠端主機上,通常是查看本機的網絡接口是否有問題;如果主機不直接連接的網絡上,則返回一個錯誤。 |
-S sndbuf | Set socket sndbuf. If not specified, it is selected to buffer not more than one packet. |
-s packetsize | 指定每次ping發送的數據字節數,默認為“56字節”+“28字節”的ICMP頭,一共是84字節; 包頭+內容不能大于65535,所以最大值為65507(linux:65507, windows:65500); |
-t ttl | 設置TTL(Time To Live)為指定的值。該字段指定IP包被路由器丟棄之前允許通過的最大網段數; |
-T timestamp_option | 設置IP timestamp選項,可以是下面的任何一個: ’tsonly’ (only timestamps) ’tsandaddr’ (timestamps and addresses) ’tsprespec host1 [host2 [host3]]’ (timestamp prespecified hops). |
-M hint | 設置MTU(最大傳輸單元)分片策略。 可設置為: ’do’:禁止分片,即使包被丟棄; ’want’:當包過大時分片; ’dont’:不設置分片標志(DF flag); |
-m mark | 設置mark; |
-v | 使ping處于verbose方式,它要ping命令除了打印ECHO-RESPONSE數據包之外,還打印其它所有返回的ICMP數據包; |
-U | Print full user-to-user latency (the old behaviour). Normally ping prints network round trip time, which can be different f.e. due to DNS failures. |
-W timeout | 以毫秒為單位設置ping的超時時間; |
-w deadline | deadline; |
顯示詳細信息
下圖為簡單的ping產生的響應內容,圖中返回內容具體的含義如下:
① ping目標主機的域名和IP(ping會自動將域名轉換為IP)
② 不帶包頭的包大小和帶包頭的包大小(參考“-s”參數)
③ icmp_seq:ping序列,從1開始;
ttl:剩余的ttl;
time: 響應時間,數值越小,聯通速度越快;
④ 發出去的包數,返回的包數,丟包率,耗費時間;
⑤ 最小/最大/平均響應時間和本機硬件耗費時間;
1、每隔0.6秒ping一次,一共ping 5次:
[root@aiezu.com ~]# ping -c 5 -i 0.6 qq.com PING qq.com (14.17.32.211) 56(84) bytes of data. 64 bytes from 14.17.32.211: icmp_seq=1 ttl=54 time=16.5 ms 64 bytes from 14.17.32.211: icmp_seq=2 ttl=54 time=17.0 ms 64 bytes from 14.17.32.211: icmp_seq=3 ttl=54 time=16.6 ms 64 bytes from 14.17.32.211: icmp_seq=4 ttl=54 time=18.3 ms 64 bytes from 14.17.32.211: icmp_seq=5 ttl=54 time=19.9 ms --- qq.com ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 2405ms rtt min/avg/max/mdev = 16.520/17.692/19.919/1.293 ms
2、極限快速的使用大包ping: 以最快的速度,使用最大的包進行
,可用于測試目標主機的承壓能力:[root@aiezu ~]# ping -f -s 65507 10.0.0.52 PING 10.0.0.52 (10.0.0.52) 65507(65535) bytes of data. .^ --- 10.0.0.52 ping statistics --- 646 packets transmitted, 646 received, 0% packet loss, time 1675ms rtt min/avg/max/mdev = 1.202/2.406/8.253/0.507 ms, ipg/ewma 2.598/2.318 ms
注意:此用法非常危險,65535(包頭+內容)*100個包每秒=6.25MB,每秒發送6.25MB的數據,相當于50Mbps的帶寬,完全可能導致目標主機拒絕服務。請勿用于非法用途,造成不良后果自負。
3、聯通不穩定,丟包嚴重的情形: 下面的ping發出17個ping icmp包,而只有序號為8、9、12的包收到響應信息,丟包率達82%,聯通非常不穩定:
[root@aiezu.com ~]# 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=8 ttl=43 time=32.3 ms 64 bytes from 8.8.8.8: icmp_seq=9 ttl=43 time=32.2 ms 64 bytes from 8.8.8.8: icmp_seq=12 ttl=43 time=32.0 ms ^C --- 8.8.8.8 ping statistics --- 17 packets transmitted, 3 received, 82% packet loss, time 16003ms rtt min/avg/max/mdev = 32.038/32.208/32.362/0.246 ms
4、完全無法ping通的情形:
[root@aiezu.com ~]# ping -c 3 9.9.9.9 PING 9.9.9.9 (9.9.9.9) 56(84) bytes of data. --- 9.9.9.9 ping statistics --- 3 packets transmitted, 0 received, 100% packet loss, time 1999ms
1、錯誤一:
ping: packet size too large: 70000 WARNING: packet size 65508 is too large. Maximum is 65507 PING 10.0.0.52 (10.0.0.52) 65508(65536) bytes of data. ping: local error: Message too long, mtu=1500 ping: local error: Message too long, mtu=1500
解決: 將ping的“-s”參數設置一個更小的值,windows最大值為“65500”,linux最大值為“65507”。
以上就是Linux系統ping命令怎么理解,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。