backup2007

          導(dǎo)航

          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          統(tǒng)計(jì)

          公告

          @import url(http://www.aygfsteel.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);


          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          [分享]Ping 命令總結(jié)

          Ping 是個(gè)使用頻率極高的實(shí)用程序,用于確定本地主機(jī)是否能與另一臺(tái)主機(jī)交換(發(fā)送與接收)數(shù)據(jù)報(bào)。根據(jù)返回的信息,你就可以推斷TCP/IP參數(shù)是否設(shè)置得正確以及運(yùn)行是否正常。需要注意的是:成功地與另一臺(tái)主機(jī)進(jìn)行一次或兩次數(shù)據(jù)報(bào)交換并不表示TCP/IP配置就是正確的,你必須執(zhí)行大量的本地主機(jī)與遠(yuǎn)程主機(jī)的數(shù)據(jù)報(bào)交換,才能確信TCP/IP的正確性。
          簡(jiǎn)單的說,Ping就是一個(gè)測(cè)試程序,如果Ping運(yùn)行正確,你大體上就可以排除網(wǎng)絡(luò)訪問層、網(wǎng)卡、MODEM的輸入輸出線路、電纜和路由器等存在的故障,從而減小了問題的范圍。但由于可以自定義所發(fā)數(shù)據(jù)報(bào)的大小及無休止的高速發(fā)送,Ping也被某些別有用心的人作為DDOS(拒絕服務(wù)攻擊)的工具,曾經(jīng)Yahoo就是被黑客利用數(shù)百臺(tái)可以高速接入互聯(lián)網(wǎng)的電腦連續(xù)發(fā)送大量Ping數(shù)據(jù)包而癱瘓的。

          按照缺省設(shè)置,Windows上運(yùn)行的Ping命令發(fā)送4個(gè)ICMP(網(wǎng)間控制報(bào)文協(xié)議)回送請(qǐng)求,每個(gè)32字節(jié)數(shù)據(jù),如果一切正常,你應(yīng)能得到4個(gè)回送應(yīng)答。

          Ping能夠以毫秒為單位顯示發(fā)送回送請(qǐng)求到返回回送應(yīng)答之間的時(shí)間量。如果應(yīng)答時(shí)間短,表示數(shù)據(jù)報(bào)不必通過太多的路由器或網(wǎng)絡(luò)連接速度比較快。Ping 還能顯示TTL(Time To Live存在時(shí)間)值,你可以通過TTL值推算一下數(shù)據(jù)包已經(jīng)通過了多少個(gè)路由器:源地點(diǎn)TTL起始值(就是比返回TTL略大的一個(gè)2的乘方數(shù))-返回時(shí) TTL值。例如,返回TTL值為119,那么可以推算數(shù)據(jù)報(bào)離開源地址的TTL起始值為128,而源地點(diǎn)到目標(biāo)地點(diǎn)要通過9個(gè)路由器網(wǎng)段(128- 119);如果返回TTL值為246,TTL起始值就是256,源地點(diǎn)到目標(biāo)地點(diǎn)要通過9個(gè)路由器網(wǎng)段。

          通過Ping檢測(cè)網(wǎng)絡(luò)故障的典型次序

          正常情況下,當(dāng)你使用Ping命令來查找問題所在或檢驗(yàn)網(wǎng)絡(luò)運(yùn)行情況時(shí),你需要使用許多Ping命令,如果所有都運(yùn)行正確,你就可以相信基本的連通性和配置參數(shù)沒有問題;如果某些Ping命令出現(xiàn)運(yùn)行故障,它也可以指明到何處去查找問題。下面就給出一個(gè)典型的檢測(cè)次序及對(duì)應(yīng)的可能故障:

          ping 127.0.0.1--這個(gè)Ping命令被送到本地計(jì)算機(jī)的IP軟件,該命令永不退出該計(jì)算機(jī)。如果沒有做到這一點(diǎn),就表示TCP/IP的安裝或運(yùn)行存在某些最基本的問題。

          ping 本機(jī)IP--這個(gè)命令被送到你計(jì)算機(jī)所配置的IP地址,你的計(jì)算機(jī)始終都應(yīng)該對(duì)該P(yáng)ing命令作出應(yīng)答,如果沒有,則表示本地配置或安裝存在問題。出現(xiàn)此問題時(shí),局域網(wǎng)用戶請(qǐng)斷開網(wǎng)絡(luò)電纜,然后重新發(fā)送該命令。如果網(wǎng)線斷開后本命令正確,則表示另一臺(tái)計(jì)算機(jī)可能配置了相同的IP地址。

          ping 局域網(wǎng)內(nèi)其他IP--這個(gè)命令應(yīng)該離開你的計(jì)算機(jī),經(jīng)過網(wǎng)卡及網(wǎng)絡(luò)電纜到達(dá)其他計(jì)算機(jī),再返回。收到回送應(yīng)答表明本地網(wǎng)絡(luò)中的網(wǎng)卡和載體運(yùn)行正確。但如果收到0個(gè)回送應(yīng)答,那么表示子網(wǎng)掩碼(進(jìn)行子網(wǎng)分割時(shí),將IP地址的網(wǎng)絡(luò)部分與主機(jī)部分分開的代碼)不正確或網(wǎng)卡配置錯(cuò)誤或電纜系統(tǒng)有問題。

          ping 網(wǎng)關(guān)IP--這個(gè)命令如果應(yīng)答正確,表示局域網(wǎng)中的網(wǎng)關(guān)路由器正在運(yùn)行并能夠作出應(yīng)答。

          ping 遠(yuǎn)程IP--如果收到4個(gè)應(yīng)答,表示成功的使用了缺省網(wǎng)關(guān)。對(duì)于撥號(hào)上網(wǎng)用戶則表示能夠成功的訪問Internet(但不排除ISP的DNS會(huì)有問題)。

          ping localhost--localhost是個(gè)作系統(tǒng)的網(wǎng)絡(luò)保留名,它是127.0.0.1的別名,每太計(jì)算機(jī)都應(yīng)該能夠?qū)⒃撁洲D(zhuǎn)換成該地址。如果沒有做到這一帶內(nèi),則表示主機(jī)文件(/Windows/host)中存在問題。

          pingwww.yahoo.com--對(duì)這個(gè)域名執(zhí)行Ping命...是通過DNS服務(wù)器 如果這里出現(xiàn)故障,則表示DNS服務(wù)器的IP地址配置不正確或DNS服務(wù)器有故障(對(duì)于撥號(hào)上網(wǎng)用戶,某些ISP已經(jīng)不需要設(shè)置DNS服務(wù)器了)。順便說一句:你也可以利用該命令實(shí)現(xiàn)域名對(duì)IP地址的轉(zhuǎn)換功能。

          如果上面所列出的所有Ping命令都能正常運(yùn)行,那么你對(duì)你的計(jì)算機(jī)進(jìn)行本地和遠(yuǎn)程通信的功能基本上就可以放心了。但是,這些命令的成功并不表示你所有的網(wǎng)絡(luò)配置都沒有問題,例如,某些子網(wǎng)掩碼錯(cuò)誤就可能無法用這些方法檢測(cè)到。

          Ping命令的常用參數(shù)選項(xiàng) :
          ping IP -t--連續(xù)對(duì)IP地址執(zhí)行Ping命令,直到被用戶以Ctrl+C中斷。

          ping IP -l 2000--指定Ping命令中的數(shù)據(jù)長(zhǎng)度為2000字節(jié),而不是缺省的32字節(jié)。

          ping IP -n--執(zhí)行特定次數(shù)的Ping命令
          _____________________________________________________________________________
          校驗(yàn)與遠(yuǎn)程計(jì)算機(jī)或本地計(jì)算機(jī)的連接。只有在安裝 TCP/IP 協(xié)議之后才能使用該命令。

          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

          參數(shù)

          -t

          校驗(yàn)與指定計(jì)算機(jī)的連接,直到用戶中斷。

          -a

          將地址解析為計(jì)算機(jī)名。

          -n count

          發(fā)送由 count 指定數(shù)量的 ECHO 報(bào)文,默認(rèn)值為 4。

          -l length

          發(fā)送包含由 length 指定數(shù)據(jù)長(zhǎng)度的 ECHO 報(bào)文。默認(rèn)值為 64 字節(jié),最大值為 8192 字節(jié)。

          -f

          在包中發(fā)送“不分段”標(biāo)志。該包將不被路由上的網(wǎng)關(guān)分段。

          -i ttl

          將“生存時(shí)間”字段設(shè)置為 ttl 指定的數(shù)值。

          -v tos

          將“服務(wù)類型”字段設(shè)置為 tos 指定的數(shù)值。

          -r count

          在“記錄路由”字段中記錄發(fā)出報(bào)文和返回報(bào)文的路由。指定的 Count 值最小可以是 1,最大可以是 9 。

          -s count

          指定由 count 指定的轉(zhuǎn)發(fā)次數(shù)的時(shí)間郵票。

          -j computer-list

          經(jīng)過由 computer-list 指定的計(jì)算機(jī)列表的路由報(bào)文。中間網(wǎng)關(guān)可能分隔連續(xù)的計(jì)算機(jī)(松散的源路由)。允許的最大 IP 地址數(shù)目是 9 。

          -k computer-list

          經(jīng)過由 computer-list 指定的計(jì)算機(jī)列表的路由報(bào)文。中間網(wǎng)關(guān)可能分隔連續(xù)的計(jì)算機(jī)(嚴(yán)格源路由)。允許的最大 IP 地址數(shù)目是 9 。

          -w timeout

          以毫秒為單位指定超時(shí)間隔。

          destination-list

          指定要校驗(yàn)連接的遠(yuǎn)程計(jì)算機(jī)。

          關(guān)于 Ping 的詳細(xì)信息

          Ping--注意

          Ping 命令通過向計(jì)算機(jī)發(fā)送 ICMP 回應(yīng)報(bào)文并且監(jiān)聽回應(yīng)報(bào)文的返回,以校驗(yàn)與遠(yuǎn)程計(jì)算機(jī)或本地計(jì)算機(jī)的連接。對(duì)于每個(gè)發(fā)送報(bào)文, Ping 最多等待 1 秒,并打印發(fā)送和接收把報(bào)文的數(shù)量。比較每個(gè)接收?qǐng)?bào)文和發(fā)送報(bào)文,以校驗(yàn)其有效性。默認(rèn)情況下,發(fā)送四個(gè)回應(yīng)報(bào)文,每個(gè)報(bào)文包含 64 字節(jié)的數(shù)據(jù)(周期性的大寫字母序列)。

          可以使用 Ping 實(shí)用程序測(cè)試計(jì)算機(jī)名和 IP 地址。如果能夠成功校驗(yàn) IP 地址卻不能成功校驗(yàn)計(jì)算機(jī)名,則說明名稱解析存在問題。這種情況下,要保證在本地 HOSTS 文件中或 DNS

          數(shù)據(jù)庫(kù)中存在要查詢的計(jì)算機(jī)名。

          下面顯示 Ping 輸出的示例:(Windows用戶可用:開始->運(yùn)行,輸入"command" 調(diào)出command窗口使用此命令)

          C:">ping 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
          ______________________________________________________________________________
          對(duì)于Windows下ping命令相信大家已經(jīng)再熟悉不過了,但是能把ping的功能發(fā)揮到最大的人卻并不是很多,當(dāng)然我也并不是說我可以讓ping發(fā)揮最大的功能,我也只不過經(jīng)常用ping這個(gè)工具,也總結(jié)了一些小經(jīng)驗(yàn),現(xiàn)在和大家分享一下。



          現(xiàn)在我就參照ping命令的幫助說明來給大家說說我使用ping時(shí)會(huì)用到的技巧,ping只有在安裝了TCP/IP協(xié)議以后才可以使用:


          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地方主機(jī),直到你按下Control-C。

          此功能沒有什么特別的技巧,不過可以配合其他參數(shù)使用,將在下面提到。

          -a Resolve addresses to hostnames.


          解析計(jì)算機(jī)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 time<10ms TTL=254
          Reply from 192.168.1.21: bytes=32 time<10ms TTL=254
          Reply from 192.168.1.21: bytes=32 time<10ms TTL=254
          Reply from 192.168.1.21: bytes=32 time<10ms TTL=254
          Ping statistics for 192.168.1.21:
          Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),Approximate round trip times in milli-seconds:
          Minimum = 0ms, Maximum = 0ms, Average = 0ms

          從上面就可以知道IP為192.168.1.21的計(jì)算機(jī)NetBios名為iceblood.yofor.com。

          -n count Number of echo requests to send.
          發(fā)送count指定的Echo數(shù)據(jù)包數(shù)。

          在默認(rèn)情況下,一般都只發(fā)送四個(gè)數(shù)據(jù)包,通過這個(gè)命令可以自己定義發(fā)送的個(gè)數(shù),對(duì)衡量網(wǎng)絡(luò)速度很有幫助,比如我想測(cè)試發(fā)送50個(gè)數(shù)據(jù)包的返回的平均時(shí)間為多少,最快時(shí)間為多少,最慢時(shí)間為多少就可以通過以下獲知:

          C:\>ping -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發(fā)送50個(gè)數(shù)據(jù)包的過程當(dāng)中,返回了48個(gè),其中有兩個(gè)由于未知原因丟失,這48個(gè)數(shù)據(jù)包當(dāng)中返回速度最快為40ms,最慢為51ms,平均速度為46ms。

          -l size Send buffer size.
          定義echo數(shù)據(jù)包大小。

          在默認(rèn)的情況下windows的ping發(fā)送的數(shù)據(jù)包大小為32byt,我們也可以自己定義它的大小,但有一個(gè)大小的限制,就是最大只能發(fā)送65500byt,也許有人會(huì)問為什么要限制到 65500byt,因?yàn)閃indows系列的系統(tǒng)都有一個(gè)安全漏洞(也許還包括其他系統(tǒng))就是當(dāng)向?qū)Ψ揭淮伟l(fā)送的數(shù)據(jù)包大于或等于65532時(shí),對(duì)方就很有可能當(dāng)機(jī),所以微軟公司為了解決這一安全漏洞于是限制了ping的數(shù)據(jù)包大小。雖然微軟公司已經(jīng)做了此限制,但這個(gè)參數(shù)配合其他參數(shù)以后危害依然非常強(qiáng)大,比如我們就可以通過配合-t參數(shù)來實(shí)現(xiàn)一個(gè)帶有攻擊性的命令:(以下介紹帶有危險(xiǎn)性,僅用于試驗(yàn),請(qǐng)勿輕易施于別人機(jī)器上,否則后果自負(fù))

          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 time<10ms TTL=254
          Reply from 192.168.1.21: bytes=65500 time<10ms TTL=254
          ………………

          這樣它就會(huì)不停的向192.168.1.21計(jì)算機(jī)發(fā)送大小為65500byt的數(shù)據(jù)包,如果你只有一臺(tái)計(jì)算機(jī)也許沒有什么效果,但如果有很多計(jì)算機(jī)那么就可以使對(duì)方完全癱瘓,我曾經(jīng)就做過這樣的試驗(yàn),當(dāng)我同時(shí)使用10臺(tái)以上計(jì)算機(jī)ping一臺(tái)Win2000Pro系統(tǒng)的計(jì)算機(jī)時(shí),不到5分鐘對(duì)方的網(wǎng)絡(luò)就已經(jīng)完全癱瘓,網(wǎng)絡(luò)嚴(yán)重堵塞,HTTP和FTP服務(wù)完全停止,由此可見威力非同小可。

          -f Set Don't Fragment flag in packet.
          在數(shù)據(jù)包中發(fā)送“不要分段”標(biāo)志。

          在一般你所發(fā)送的數(shù)據(jù)包都會(huì)通過路由分段再發(fā)送給對(duì)方,加上此參數(shù)以后路由就不會(huì)再分段處理。

          -i TTL Time To Live.
          指定TTL值在對(duì)方的系統(tǒng)里停留的時(shí)間。
          此參數(shù)同樣是幫助你檢查網(wǎng)絡(luò)運(yùn)轉(zhuǎn)情況的。


          -v TOS Type Of Service.
          將“服務(wù)類型”字段設(shè)置為 tos 指定的值。

          -r count Record route for count hops.
          在“記錄路由”字段中記錄傳出和返回?cái)?shù)據(jù)包的路由。

          在一般情況下你發(fā)送的數(shù)據(jù)包是通過一個(gè)個(gè)路由才到達(dá)對(duì)方的,但到底是經(jīng)過了哪些路由呢?通過此參數(shù)就可以設(shè)定你想探測(cè)經(jīng)過的路由的個(gè)數(shù),不過限制在了9個(gè),也就是說你只能跟蹤到9個(gè)路由,如果想探測(cè)更多,可以通過其他命令實(shí)現(xiàn),我將在以后的文章中給大家講解。以下為示例:

          C:\>ping -n 1 -r 9 202.96.105.101 (發(fā)送一個(gè)數(shù)據(jù)包,最多記錄9個(gè)路由)

          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

          從上面我就可以知道從我的計(jì)算機(jī)到 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這幾個(gè)路由。


          -s count Timestamp for count hops.
          指定 count 指定的躍點(diǎn)數(shù)的時(shí)間戳。

          此參數(shù)和-r差不多,只是這個(gè)參數(shù)不記錄數(shù)據(jù)包返回所經(jīng)過的路由,最多也只記錄4個(gè)。


          -j host-list Loose source route along host-list.
          利用 computer-list 指定的計(jì)算機(jī)列表路由數(shù)據(jù)包。連續(xù)計(jì)算機(jī)可以被中間網(wǎng)關(guān)分隔(路由稀疏源)IP 允許的最大數(shù)量為 9。


          -k host-list Strict source route along host-list.
          利用 computer-list 指定的計(jì)算機(jī)列表路由數(shù)據(jù)包。連續(xù)計(jì)算機(jī)不能被中間網(wǎng)關(guān)分隔(路由嚴(yán)格源)IP 允許的最大數(shù)量為 9。


          -w timeout Timeout in milliseconds to wait for each reply.
          指定超時(shí)間隔,單位為毫秒。

          此參數(shù)沒有什么其他技巧。

          ping命令的其他技巧:在一般情況下還可以通過 ping對(duì)方讓對(duì)方返回給你的TTL值大小,粗略的判斷目標(biāo)主機(jī)的系統(tǒng)類型是Windows系列還是UNIX/Linux系列,一般情況下Windows 系列的系統(tǒng)返回的TTL值在100-130之間,而UNIX/Linux系列的系統(tǒng)返回的TTL值在240-255之間,當(dāng)然TTL的值在對(duì)方的主機(jī)里是可以修改的,Windows系列的系統(tǒng)可以通過修改注冊(cè)表以下鍵值實(shí)現(xiàn):

          [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
          "DefaultTTL"=dword:000000ff
          255---FF
          128---80
          64----40
          32----20

          =============================================================================

          網(wǎng)絡(luò)工程師都會(huì)用到Ping,它是檢查路由問題的有效辦法。但也常聽工程師抱怨:不可能,怎么會(huì)不通呢?

          這樣的困惑一般發(fā)生在自認(rèn)為路由設(shè)置正確的時(shí)候。舉幾個(gè)筆者遇到的問題,歡迎大家補(bǔ)充。 最簡(jiǎn)單的三種情況:

          1.太心急。即網(wǎng)線剛插到交換機(jī)上就想Ping通網(wǎng)關(guān),忽略了生成樹的收斂時(shí) 間。當(dāng)然,較新的交換機(jī)都支持快速生成樹,或者有的管理員干脆把用戶端口(access port)的生成樹協(xié)議關(guān)掉,問題就解決了。

          2.訪問控制。不管中間跨越了多少跳,只要有節(jié)點(diǎn)(包括端節(jié)點(diǎn))對(duì)ICMP進(jìn)行了過濾,Ping不通是正常的。最常見的就是防火墻的行為。

          3.某些路由器端口是不允許用戶Ping的。

          還遇到過這樣的情形,更為隱蔽。

          1.網(wǎng)絡(luò)因設(shè)備間的時(shí)延太大,造成ICMP echo報(bào)文無法在缺省時(shí)間(2秒)內(nèi)收到。時(shí)延的原因有若干,比如線路(衛(wèi)星網(wǎng)時(shí)延上下星為540毫秒),路由器處理時(shí)延,或路由設(shè)計(jì)不合理造成迂回路徑。使用擴(kuò)展Ping,增加timed out時(shí) 間,可Ping通的話就屬路由時(shí)延太大問題。

          2.引入NAT的場(chǎng)合會(huì)造成單向Ping通。NAT可以起到隱蔽內(nèi)部地址的作用,當(dāng)由內(nèi)Ping外時(shí),可以Ping通是因?yàn)镹AT表的映射關(guān)系存在,當(dāng)由外發(fā)起Ping內(nèi)網(wǎng)主機(jī)時(shí),就無從查找邊界路由器的NAT表項(xiàng)了。

          3.多路由負(fù)載均衡場(chǎng)合。比如Ping遠(yuǎn)端目的主機(jī),成功的reply和timed out交錯(cuò)出現(xiàn),結(jié)果發(fā)現(xiàn)在網(wǎng)關(guān)路由器上存在兩條到目的網(wǎng)段的路由,兩條路由權(quán)重相等,但經(jīng)查一條路由存在問題。

          4.IP地址分配不連續(xù)。地址規(guī)劃出現(xiàn)問題象是在網(wǎng)絡(luò)中埋了地雷,地址重疊或掩碼劃分不連續(xù)都可能在Ping時(shí)出現(xiàn)問題。比如一個(gè)極端情況,A、B兩臺(tái)主機(jī),經(jīng)過多跳相連,A能Ping通B的網(wǎng)關(guān),而且B的網(wǎng)關(guān)設(shè)置正確,但A、B就是Ping不通。經(jīng)查,在B的網(wǎng)卡上還設(shè)有第二個(gè)地址,并且這個(gè)地址與 A所在的網(wǎng)段重疊。

          5.指定源地址的擴(kuò)展Ping。登陸到路由器上,Ping遠(yuǎn)程主機(jī),當(dāng)ICMP echo request從串行廣域網(wǎng)接口發(fā)出去的時(shí)候,路由器會(huì)指定某個(gè)IP地址作為源IP,這個(gè)IP地址可能不是此接口的IP或這個(gè)接口根本沒有IP地址。而某個(gè)下游路由器可能并沒有到這個(gè)IP網(wǎng)段的路由,導(dǎo)致不能Ping通。可以采用擴(kuò)展Ping,指定好源IP地址。

          當(dāng)主機(jī)網(wǎng)關(guān)和中間路由的配置認(rèn)為正確時(shí),出現(xiàn)Ping問題也是很普遍的現(xiàn)象。此時(shí)應(yīng)該忘掉"不可能"幾個(gè)字,把Ping的擴(kuò)展參數(shù)和反饋信息、traceroute、路由器debug、以及端口鏡像和Sniffer等工具結(jié)合起來進(jìn)行分析。

          比如,當(dāng)A、B兩臺(tái)主機(jī)經(jīng)過多跳路由器相連時(shí),二者網(wǎng)關(guān)設(shè)置正確,在A上可以Ping通B,但在B上不能Ping通A。可以通過在交換機(jī)做鏡像,并用 Sniffer抓包,來找出ICMP 報(bào)文終止于何處,報(bào)文內(nèi)容是什么,就可以發(fā)現(xiàn)ICMP報(bào)文中的源IP地址并非預(yù)期的那樣,此時(shí)很容易想象出可能是路由器的NAT功能使然,這樣就能夠逐步地發(fā)現(xiàn)一些被忽視的問題。而Ping不通時(shí)的反饋信息是"destination_net_unreachable"還是"timed out"也是有區(qū)別的

          ===========================================================================

          Windows下ping命令相信大家已經(jīng)再熟悉不過了,但是能把ping的功能發(fā)揮到最大的人卻并不
          是很多,當(dāng)然我也并不是說我可以讓ping發(fā)揮最大的功能,我也只不過經(jīng)常用ping這個(gè)工具,
          也總結(jié)了一些小經(jīng)驗(yàn),現(xiàn)在和大家分享一下。
          現(xiàn)在我就參照ping命令的幫助說明來給大家說說我使用ping時(shí)會(huì)用到的技巧,ping只有在安
          裝了TCP/IP協(xié)議以后才可以使用:
          ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s coun
          t] [-j computer-list] | [-k computer-list] [-w timeout] destination-list
          Options:
          -t Ping the specified host until stopped.To see statistics and continue - type C
          ontrol-Break;To stop - type Control-C.
          不停的ping地方主機(jī),直到你按下Control-C。
          此功能沒有什么特別的技巧,不過可以配合其他參數(shù)使用,將在下面提到。


          -a Resolve addresses to hostnames.
          解析計(jì)算機(jī)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 time<10ms TTL=254
          Reply from 192.168.1.21: bytes=32 time<10ms TTL=254
          Reply from 192.168.1.21: bytes=32 time<10ms TTL=254
          Reply from 192.168.1.21: bytes=32 time<10ms TTL=254
          Ping statistics for 192.168.1.21:
          Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),Approximate round trip times
          in milli-seconds:
          Minimum = 0ms, Maximum = 0ms, Average = 0ms
          從上面就可以知道IP為192.168.1.21的計(jì)算機(jī)NetBios名為iceblood.yofor.com。

          -n count Number of echo requests to send.
          發(fā)送count指定的Echo數(shù)據(jù)包數(shù)。
          在默認(rèn)情況下,一般都只發(fā)送四個(gè)數(shù)據(jù)包,通過這個(gè)命令可以自己定義發(fā)送的個(gè)數(shù),對(duì)衡量
          網(wǎng)絡(luò)速度很有幫助,比如我想測(cè)試發(fā)送50個(gè)數(shù)據(jù)包的返回的平均時(shí)間為多少,最快時(shí)間為多少
          ,最慢時(shí)間為多少就可以通過以下獲知:
          C:\>ping -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 tim
          es in milli-seconds:
          Minimum = 40ms, Maximum = 51ms, Average = 46ms
          從以上我就可以知道在給202.103.96.68發(fā)送50個(gè)數(shù)據(jù)包的過程當(dāng)中,返回了48個(gè),其中有兩
          個(gè)由于未知原因丟失,這48個(gè)數(shù)據(jù)包當(dāng)中返回速度最快為40ms,最慢為51ms,平均速度為46m
          s。


          -l size Send buffer size.
          定義echo數(shù)據(jù)包大小。
          在默認(rèn)的情況下windows的ping發(fā)送的數(shù)據(jù)包大小為32byt,我們也可以自己定義它的大小,
          但有一個(gè)大小的限制,就是最大只能發(fā)送65500byt,也許有人會(huì)問為什么要限制到65500byt,
          因?yàn)閃indows系列的系統(tǒng)都有一個(gè)安全漏洞(也許還包括其他系統(tǒng))就是當(dāng)向?qū)Ψ揭淮伟l(fā)送的
          數(shù)據(jù)包大于或等于65532時(shí),對(duì)方就很有可能擋機(jī),所以微軟公司為了解決這一安全漏洞于是
          限制了ping的數(shù)據(jù)包大小。雖然微軟公司已經(jīng)做了此限制,但這個(gè)參數(shù)配合其他參數(shù)以后危害
          依然非常強(qiáng)大,比如我們就可以通過配合-t參數(shù)來實(shí)現(xiàn)一個(gè)帶有攻擊性的命令:(以下介紹帶
          有危險(xiǎn)性,僅用于試驗(yàn),請(qǐng)勿輕易施于別人機(jī)器上,否則后果自負(fù))
          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 time<10ms TTL=254
          Reply from 192.168.1.21: bytes=65500 time<10ms TTL=254
          ………………
          這樣它就會(huì)不停的向192.168.1.21計(jì)算機(jī)發(fā)送大小為65500byt的數(shù)據(jù)包,如果你只有一臺(tái)計(jì)
          算機(jī)也許沒有什么效果,但如果有很多計(jì)算機(jī)那么就可以使對(duì)方完全癱瘓,我曾經(jīng)就做過這樣
          的試驗(yàn),當(dāng)我同時(shí)使用10臺(tái)以上計(jì)算機(jī)ping一臺(tái)Win2000Pro系統(tǒng)的計(jì)算機(jī)時(shí),不到5分鐘對(duì)方
          的網(wǎng)絡(luò)就已經(jīng)完全癱瘓,網(wǎng)絡(luò)嚴(yán)重堵塞,HTTP和FTP服務(wù)完全停止,由此可見威力非同小可。



          -f Set Don't Fragment flag in packet.
          在數(shù)據(jù)包中發(fā)送“不要分段”標(biāo)志。
          在一般你所發(fā)送的數(shù)據(jù)包都會(huì)通過路由分段再發(fā)送給對(duì)方,加上此參數(shù)以后路由就不會(huì)再分
          段處理。


          -i TTL Time To Live.
          指定TTL值在對(duì)方的系統(tǒng)里停留的時(shí)間。
          此參數(shù)同樣是幫助你檢查網(wǎng)絡(luò)運(yùn)轉(zhuǎn)情況的。


          -v TOS Type Of Service.
          將“服務(wù)類型”字段設(shè)置為 tos 指定的值。

          -r count Record route for count hops.
          在“記錄路由”字段中記錄傳出和返回?cái)?shù)據(jù)包的路由。
          在一般情況下你發(fā)送的數(shù)據(jù)包是通過一個(gè)個(gè)路由才到達(dá)對(duì)方的,但到底是經(jīng)過了哪些路由呢
          ?通過此參數(shù)就可以設(shè)定你想探測(cè)經(jīng)過的路由的個(gè)數(shù),不過限制在了9個(gè),也就是說你只能跟
          蹤到9個(gè)路由,如果想探測(cè)更多,可以通過其他命令實(shí)現(xiàn),我將在以后的文章中給大家講解。
          以下為示例:
          C:\>ping -n 1 -r 9 202.96.105.101 (發(fā)送一個(gè)數(shù)據(jù)包,最多記錄9個(gè)路由)

          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
          從上面我就可以知道從我的計(jì)算機(jī)到202.96.105.101一共通過了202.107.208.187 ,202.10
          7.210.214 , 61.153.112.70 , 61.153.112.89 , 202.96.105.149 , 202.96.105.97這幾個(gè)路
          由。


          -s count Timestamp for count hops.
          指定 count 指定的躍點(diǎn)數(shù)的時(shí)間戳。
          此參數(shù)和-r差不多,只是這個(gè)參數(shù)不記錄數(shù)據(jù)包返回所經(jīng)過的路由,最多也只記錄4個(gè)。


          -j host-list Loose source route along host-list.
          利用 computer-list 指定的計(jì)算機(jī)列表路由數(shù)據(jù)包。連續(xù)計(jì)算機(jī)可以被中間網(wǎng)關(guān)分隔(路由
          稀疏源)IP 允許的最大數(shù)量為 9。


          -k host-list Strict source route along host-list.
          利用 computer-list 指定的計(jì)算機(jī)列表路由數(shù)據(jù)包。連續(xù)計(jì)算機(jī)不能被中間網(wǎng)關(guān)分隔(路由
          嚴(yán)格源)IP 允許的最大數(shù)量為 9。


          -w timeout Timeout in milliseconds to wait for each reply.
          指定超時(shí)間隔,單位為毫秒。
          此參數(shù)沒有什么其他技巧。

          ping命令的其他技巧:在一般情況下還可以通過ping對(duì)方讓對(duì)方返回給你的TTL值大小,粗略
          的判斷目標(biāo)主機(jī)的系統(tǒng)類型是Windows系列還是UNIX/Linux系列,一般情況下Windows系列的系
          統(tǒng)返回的TTL值在100-130之間,而UNIX/Linux系列的系統(tǒng)返回的TTL值在240-255之間,當(dāng)然T
          TL的值在對(duì)方的主機(jī)里是可以修改的,Windows系列的系統(tǒng)可以通過修改注冊(cè)表以下鍵值實(shí)現(xiàn)

          [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
          "DefaultTTL"=dword:000000ff
          255---FF
          128---80
          64----40
          32----20
          好了,ping命令也基本上完全講解完了,其中還有-j,-k參數(shù)我還沒有詳細(xì)說明,由于某些原
          因也包括我自己所收集的資料過少這里也沒有向大家詳細(xì)介紹,請(qǐng)大家見諒,如果在看了這篇
          文章的朋友當(dāng)中有知道得比我更多的,以及其他使用技巧的也希望您能告訴我,并在此先謝過



          在這里我補(bǔ)充一點(diǎn):那個(gè)-l參數(shù)最大值是64K,嚴(yán)格說那個(gè)例子給得不對(duì),都65多K了,不可能那么大,加上那個(gè)-t,不停的ping可以讓一些路由器重起,導(dǎo)致路由器的設(shè)置恢復(fù)原始值,這就是入侵路由的一種方法,有點(diǎn)用的.

          (二)

          用于驗(yàn)證與遠(yuǎn)程計(jì)算機(jī)的連接。該命令只有在安裝了 TCP/IP 協(xié)議后才可以使用。Ping命令的主要作用是通過發(fā)送數(shù)據(jù)包并接收應(yīng)答信息來檢測(cè)兩臺(tái)計(jì)算機(jī)之間的網(wǎng)絡(luò)是否連通。當(dāng)網(wǎng)絡(luò)出現(xiàn)故障的時(shí)候,可以用這個(gè)命令來預(yù)測(cè)故障和確定故障地點(diǎn)。Ping命令成功只是說明當(dāng)前主機(jī)與目的主機(jī)之間存在一條連通的路徑。如果不成功,則考慮:網(wǎng)線是否連通、網(wǎng)卡設(shè)置是否正確、 IP地址是否可用等。
          Ping 是Windows系列自帶的一個(gè)可執(zhí)行命令。利用它可以檢查網(wǎng)絡(luò)是否能夠連通,用好它可以很好地幫助我們分析判定網(wǎng)絡(luò)故障。應(yīng)用格式:Ping IP地址。該命令還可以加許多參數(shù)使用,具體是鍵入Ping按回車即可看到詳細(xì)說明。

          1.Ping本機(jī)IP

          例如本機(jī)IP地址為:172.168.200.2。則執(zhí)行命令Ping 172.168.200.2。如果網(wǎng)卡安裝配置沒有問題,則應(yīng)有類似下列顯示:

          Replay from 172.168.200.2 bytes=32 time<10ms

          Ping statistics for 172.168.200.2

          Packets Sent=4 Received=4 Lost=0 0% loss

          Approximate round trip times in milli-seconds

          Minimum=0ms Maxiumu=1ms Average=0ms

          如果在MS-DOS方式下執(zhí)行此命令顯示內(nèi)容為:Request timed out,則表明網(wǎng)卡安裝或配置有問題。將網(wǎng)線斷開再次執(zhí)行此命令,如果顯示正常,則說明本機(jī)使用的IP地址可能與另一臺(tái)正在使用的機(jī)器IP地址重復(fù)了。如果仍然不正常,則表明本機(jī)網(wǎng)卡安裝或配置有問題,需繼續(xù)檢查相關(guān)網(wǎng)絡(luò)配置。

          2.Ping網(wǎng)關(guān)IP

          假定網(wǎng)關(guān)IP為:172.168.6.1,則執(zhí)行命令Ping 172.168.6.1。在MS-DOS方式下執(zhí)行此命令,如果顯示類似以下信息:

          Reply from 172.168.6.1 bytes=32 time=9ms TTL=255

          Ping statistics for 172.168.6.1

          Packets Sent=4 Received=4 Lost=0

          Approximate round trip times in milli-seconds

          Minimum=1ms Maximum=9ms Average=5ms

          則表明局域網(wǎng)中的網(wǎng)關(guān)路由器正在正常運(yùn)行。反之,則說明網(wǎng)關(guān)有問題。

          3.Ping遠(yuǎn)程IP

          這一命令可以檢測(cè)本機(jī)能否正常訪問Internet。比如本地電信運(yùn)營(yíng)商的IP地址為:202.102.48.141。在MS-DOS方式下執(zhí)行命令:Ping 202.102.48.141,如果屏幕顯示:

          Reply from 202.102.48.141 bytes=32 time=33ms TTL=252

          Reply from 202.102.48.141 bytes=32 time=21ms TTL=252

          Reply from 202.102.48.141 bytes=32 time=5ms TTL=252

          Reply from 202.102.48.141 bytes=32 time=6ms TTL=252

          Ping statistics for 202.102.48.141

          Packets Sent=4 Received=4 Lost=0 0% loss

          Approximate round trip times in milli-seconds

          Minimum=5ms Maximum=33ms Average=16ms

          則表明運(yùn)行正常,能夠正常接入互聯(lián)網(wǎng)。反之,則表明主機(jī)文件(windows/host)存在問題。

          --PING命令參數(shù)詳解

          -a 將目標(biāo)的機(jī)器標(biāo)識(shí)轉(zhuǎn)換為ip地址

          -t 若使用者不人為中斷會(huì)不斷的ping下去

          -c count 要求ping命令連續(xù)發(fā)送數(shù)據(jù)包,直到發(fā)出并接收到count個(gè)請(qǐng)求

          -d 為使用的套接字打開調(diào)試狀態(tài)

          -f 是一種快速方式ping。使得ping輸出數(shù)據(jù)包的速度和數(shù)據(jù)包從遠(yuǎn)程主機(jī)返回一樣快,或者更快,達(dá)到每秒100次。在這種方式下,每個(gè)請(qǐng)求用一個(gè)句點(diǎn)表示。對(duì)于每一個(gè)響應(yīng)打印一個(gè)空格鍵。

          -i seconds 在兩次數(shù)據(jù)包發(fā)送之間間隔一定的秒數(shù)。不能同-f一起使用。

          -n 只使用數(shù)字方式。在一般情況下ping會(huì)試圖把IP地址轉(zhuǎn)換成主機(jī)名。這個(gè)選項(xiàng)要求ping打印IP地址而不去查找用符號(hào)表示的名字。如果由于某種原因無法使用本地DNS服務(wù)器這個(gè)選項(xiàng)就很重要了。

          -p pattern 擁護(hù)可以通過這個(gè)選項(xiàng)標(biāo)識(shí)16 pad字節(jié),把這些字節(jié)加入數(shù)據(jù)包中。當(dāng)在網(wǎng)絡(luò)中診斷與數(shù)據(jù)有關(guān)的錯(cuò)誤時(shí)這個(gè)選項(xiàng)就非常有用。

          -q 使ping只在開始和結(jié)束時(shí)打印一些概要信息。

          -R 把ICMP RECORD-ROUTE選項(xiàng)加入到ECHO_REQUEST數(shù)據(jù)包中,要求在數(shù)據(jù)包中記錄路由,這樣當(dāng)數(shù)據(jù)返回時(shí)ping就可以把路由信息打印出來。每個(gè)數(shù)據(jù)包只能記錄9個(gè)路由節(jié)點(diǎn)。許多主機(jī)忽略或者放棄這個(gè)選項(xiàng)。

          -r 使ping命令旁路掉用于發(fā)送數(shù)據(jù)包的正常路由表。

          -s packetsize 使用戶能夠標(biāo)識(shí)出要發(fā)送數(shù)據(jù)的字節(jié)數(shù)。缺省是56個(gè)字符,再加上8個(gè)字節(jié)的ICMP數(shù)據(jù)頭,共64個(gè)ICMP數(shù)據(jù)字節(jié)。

          -v 使ping處于verbose方式。它要ping命令除了打印ECHO-RESPONSE數(shù)據(jù)包之外,還打印其它所有返回的ICMP數(shù)據(jù)包。

          轉(zhuǎn)自http://hi.baidu.com/bwjj/blog/item/3d623d4ec5cdbfcad0c86a5f.html

          http://baike.baidu.com/lemma-php/dispose/view.php/36175.htm

          posted on 2007-09-07 10:40 backup2007 閱讀(366) 評(píng)論(0)  編輯  收藏 所屬分類: Internet


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 桃江县| 延庆县| 牙克石市| 六枝特区| 郁南县| 宝鸡市| 扬州市| 江陵县| 贵定县| 康平县| 荆州市| 阳朔县| 吴堡县| 库伦旗| 静海县| 梅河口市| 新巴尔虎右旗| 汤阴县| 登封市| 昆明市| 夏津县| 长汀县| 平阳县| 抚顺县| 尼勒克县| 红河县| 利辛县| 新河县| 潮安县| 陈巴尔虎旗| 吕梁市| 施甸县| 涡阳县| 南澳县| 孙吴县| 东阿县| 吴川市| 东丰县| 海宁市| 高台县| 山丹县|