ping命令的高級用法
對于Windows下ping命令相信大家已經再熟悉不過了,但是能把ping的功能發揮到最大的人卻并不是很多,當然我也并不是說我可以讓ping發揮最大的功能,我也只不過經常用ping這個工具,也總結了一些小經驗,現在和大家分享一下。?
現在我就參照ping命令的幫助說明來給大家說說我使用ping時會用到的技巧,ping只有在安裝了TCP/IP協議以后才可以使用:?
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j computer-list] │ [-k computer-list] [-w timeout] destination-list?
Options:?
-t Ping the specified host until stopped.To see statistics and continue - type Control-Break;To stop - type Control-C.?
不停的ping地方主機,直到你按下Control-C。?
此功能沒有什么特別的技巧,不過可以配合其他參數使用,將在下面提到。?
-a Resolve addresses to hostnames.?
解析計算機NetBios名。?
示例:C:\ping -a 192.168.1.21?
Pinging iceblood.yofor.com [192.168.1.21] with 32 bytes of data:?
Reply from 192.168.1.21: bytes=32 timeping -n 50 202.103.96.68?
Pinging 202.103.96.68 with 32 bytes of data:?
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241?
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241?
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241?
Request timed out.?
………………?
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241?
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241?
Ping statistics for 202.103.96.68:?
Packets: Sent = 50, Received = 48, Lost = 2 (4% loss),Approximate round trip times in milli-seconds:?
Minimum = 40ms, Maximum = 51ms, Average = 46ms?
從以上我就可以知道在給202.103.96.68發送50個數據包的過程當中,返回了48個,其中有兩個由于未知原因丟失,這48個數據包當中返回速度最快為40ms,最慢為51ms,平均速度為46ms。?
-l size Send buffer size.?
定義echo數據包大小。?
在默認的情況下windows的ping發送的數據包大小為32byt,我們也可以自己定義它的大小,但有一個大小的限制,就是最大只能發送65500byt,也許有人會問為什么要限制到65500byt,因為Windows系列的系統都有一個安全漏洞(也許還包括其他系統)就是當向對方一次發送的數據包大于或等于65532時,對方就很有可能擋機,所以微軟公司為了解決這一安全漏洞于是限制了ping的數據包大小。雖然微軟公司已經做了此限制,但這個參數配合其他參數以后危害依然非常強大,比如我們就可以通過配合-t參數來實現一個帶有攻擊性的命令:(以下介紹帶有危險性,僅用于試驗,請勿輕易施于別人機器上,否則后果自負)?
C:\ping -l 65500 -t 192.168.1.21?
Pinging 192.168.1.21 with 65500 bytes of data:?
Reply from 192.168.1.21: bytes=65500 timeping -n 1 -r 9 202.96.105.101 (發送一個數據包,最多記錄9個路由)?
Pinging 202.96.105.101 with 32 bytes of data:?
Reply from 202.96.105.101: bytes=32 time=10ms TTL=249?
Route: 202.107.208.187 -?
202.107.210.214 -?
61.153.112.70 -?
61.153.112.89 -?
202.96.105.149 -?
202.96.105.97 -?
202.96.105.101 -?
202.96.105.150 -?
61.153.112.90?
Ping statistics for 202.96.105.101:?
Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),?
Approximate round trip times in milli-seconds:?
Minimum = 10ms, Maximum = 10ms, Average = 10ms?
從上面我就可以知道從我的計算機到202.96.105.101一共通過了202.107.208.187 ,202.107.210.214 , 61.153.112.70 , 61.153.112.89 , 202.96.105.149 , 202.96.105.97這幾個路由。?
-s count Timestamp for count hops.?
指定 count 指定的躍點數的時間戳。?
此參數和-r差不多,只是這個參數不記錄數據包返回所經過的路由,最多也只記錄4個。?
-j host-list Loose source route along host-list.?
利用 computer-list 指定的計算機列表路由數據包。連續計算機可以被中間網關分隔(路由稀疏源)IP 允許的最大數量為 9。?
-k host-list Strict source route along host-list.?
利用 computer-list 指定的計算機列表路由數據包。連續計算機不能被中間網關分隔(路由嚴格源)IP 允許的最大數量為 9。?
-w timeout Timeout in milliseconds to wait for each reply.?
指定超時間隔,單位為毫秒。?
此參數沒有什么其他技巧。?
ping命令的其他技巧:在一般情況下還可以通過ping對方讓對方返回給你的TTL值大小,粗略的判斷目標主機的系統類型是Windows系列還是UNIX/Linux系列,一般情況下Windows系列的系統返回的TTL值在100-130之間,而UNIX/Linux系列的系統返回的TTL值在240-255之間,當然TTL的值在對方的主機里是可以修改的,Windows系列的系統可以通過修改注冊表以下鍵值實現:?
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]?
"DefaultTTL"=dword:000000ff?
255---FF?
128---80?
64----40?
32----20?
好了,ping命令也基本上被我COPY過來了,有什么疑惑就跟帖?
★PING參數(轉載)?
ping參數?
-a 將目標的機器標識轉換為ip地址?
-t 若使用者不人為中斷會不斷的ping下去?
-c count 要求ping命令連續發送數據包,直到發出并接收到count個請求?
-d 為使用的套接字打開調試狀態?
-f 是一種快速方式ping。使得ping輸出數據包的速度和數據包從遠程主機返回一樣快,或者更快,達到每秒100次。在這種方式下,每個請求用一個句點表示。對于每一個響應打印一個空格鍵。?
-i seconds 在兩次數據包發送之間間隔一定的秒數。不能同-f一起使用。?
-n 只使用數字方式。在一般情況下ping會試圖把IP地址轉換成主機名。這個選項要求ping打印IP地址而不去查找用符號表示的名字。如果由于某種原因無法使用本地DNS服務器這個選項就很重要了。?
-p pattern 擁護可以通過這個選項標識16 pad字節,把這些字節加入數據包中。當在網絡中診斷與數據有關的錯誤時這個選項就非常有用。?
-q 使ping只在開始和結束時打印一些概要信息。?
-R 把ICMP RECORD-ROUTE選項加入到ECHO_REQUEST數據包中,要求在數據包中記錄路由,這樣當數據返回時ping就可以把路由信息打印出來。每個數據包只能記錄9個路由節點。許多主機忽略或者放棄這個選項。?
-r 使ping命令旁路掉用于發送數據包的正常路由表。?
-s packetsize 使用戶能夠標識出要發送數據的字節數。缺省是56個字符,再加上8個字節的ICMP數據頭,共64個ICMP數據字節。?
-v 使ping處于verbose方式。它要ping命令除了打印ECHO-RESPONSE數據包之外,還打印其它所有返回的ICMP數據包。?
再次補充?
ping命令--詳細幫助?
校驗與遠程計算機或本地計算機的連接。只有在安裝 TCP/IP 協議之后才能使用該命令。?
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j computer-list] │ [-k computer-list] [-w timeout] destination-list?
參數?
-t?
校驗與指定計算機的連接,直到用戶中斷。?
-a?
將地址解析為計算機名。?
-n count?
發送由 count 指定數量的 ECHO 報文,默認值為 4。?
-l length?
發送包含由 length 指定數據長度的 ECHO 報文。默認值為 64 字節,最大值為 8192 字節。?
-f?
在包中發送“不分段”標志。該包將不被路由上的網關分段。?
-i ttl?
將“生存時間”字段設置為 ttl 指定的數值。?
-v tos?
將“服務類型”字段設置為 tos 指定的數值。?
-r count?
在“記錄路由”字段中記錄發出報文和返回報文的路由。指定的 Count 值最小可以是 1,最大可以是 9 。?
-s count?
指定由 count 指定的轉發次數的時間郵票。?
-j computer-list?
經過由 computer-list 指定的計算機列表的路由報文。中間網關可能分隔連續的計算機(松散的源路由)。允許的最大 IP 地址數目是 9 。?
-k computer-list?
經過由 computer-list 指定的計算機列表的路由報文。中間網關可能分隔連續的計算機(嚴格源路由)。允許的最大 IP 地址數目是 9 。?
-w timeout?
以毫秒為單位指定超時間隔。?
destination-list?
指定要校驗連接的遠程計算機。?
關于 Ping 的詳細信息?
Ping--注意?
Ping 命令通過向計算機發送 ICMP 回應報文并且監聽回應報文的返回,以校驗與遠程計算機或本地計算機的連接。對于每個發送報文, Ping 最多等待 1 秒,并打印發送和接收把報文的數量。比較每個接收報文和發送報文,以校驗其有效性。默認情況下,發送四個回應報文,每個報文包含 64 字節的數據(周期性的大寫字母序列)。?
可以使用 Ping 實用程序測試計算機名和 IP 地址。如果能夠成功校驗 IP 地址卻不能成功校驗計算機名,則說明名稱解析存在問題。這種情況下,要保証在本地 HOSTS 文件中或 DNS?
數據庫中存在要查詢的計算機名。?
下面顯示 Ping 輸出的示例:(Windows用戶可用:開始-?#092;行,輸入"command" 調出command窗口使用此命令)?
Cing ds.internic.net?
Pinging ds.internic.net [192.20.239.132] with 32 bytes of data:?
Reply from 192.20.239.132: bytes=32 time=101ms TTL=243?
Reply from 192.20.239.132: bytes=32 time=100ms TTL=243?
Reply from 192.20.239.132: bytes=32 time=120ms TTL=243?
Reply from 192.20.239.132: bytes=32 time=120ms TTL=243?
本文參與騰訊云自媒體分享計劃,歡迎正在閱讀的你也加入,一起分享。