日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

“Ping”的幕后過(guò)程

 蟬翼飄渺 2007-08-28
 

“Ping”的幕后過(guò)程

  我們以下面一個(gè)網(wǎng)絡(luò)為例:有A、B、C、D四臺(tái)機(jī)子,一臺(tái)路由RA,子網(wǎng)掩碼均為255.255.255.0,默認(rèn)路由為192.168.0.1

  1.在同一網(wǎng)段內(nèi)

  在主機(jī)A上運(yùn)行“Ping 192.168.0.5”后,都發(fā)生了些什么呢? 首先,Ping命令會(huì)構(gòu)建一個(gè)固定格式的ICMP請(qǐng)求數(shù)據(jù)包,然后由ICMP協(xié)議將這個(gè)數(shù)據(jù)包連同地址“192.168.0.5”一起交給IP層協(xié)議(和 ICMP一樣,實(shí)際上是一組后臺(tái)運(yùn)行的進(jìn)程),IP層協(xié)議將以地址“192.168.0.5”作為目的地址,本機(jī)IP地址作為源地址,加上一些其他的控制信息,構(gòu)建一個(gè)IP數(shù)據(jù)包,并想辦法得到192.168.0.5的MAC地址(物理地址,這是數(shù)據(jù)鏈路層協(xié)議構(gòu)建數(shù)據(jù)鏈路層的傳輸單元——幀所必需的),以便交給數(shù)據(jù)鏈路層構(gòu)建一個(gè)數(shù)據(jù)幀。關(guān)鍵就在這里,IP層協(xié)議通過(guò)機(jī)器B的IP地址和自己的子網(wǎng)掩碼,發(fā)現(xiàn)它跟自己屬同一網(wǎng)絡(luò),就直接在本網(wǎng)絡(luò)內(nèi)查找這臺(tái)機(jī)器的MAC,如果以前兩機(jī)有過(guò)通信,在A機(jī)的ARP緩存表應(yīng)該有B機(jī)IP與其MAC的映射關(guān)系,如果沒(méi)有,就發(fā)一個(gè)ARP請(qǐng)求廣播,得到B機(jī)的MAC, 一并交給數(shù)據(jù)鏈路層。后者構(gòu)建一個(gè)數(shù)據(jù)幀,目的地址是IP層傳過(guò)來(lái)的物理地址,源地址則是本機(jī)的物理地址,還要附加上一些控制信息,依據(jù)以太網(wǎng)的介質(zhì)訪問(wèn)規(guī)則,將它們傳送出去。

  主機(jī)B收到這個(gè)數(shù)據(jù)幀后,先檢查它的目的地址,并和本機(jī)的物理地址對(duì)比,如符合,則接收;否則丟棄。接收后檢查該數(shù)據(jù)幀,將IP數(shù)據(jù)包從幀中提取出來(lái),交給本機(jī)的IP層協(xié)議。同樣,IP層檢查后,將有用的信息提取后交給ICMP協(xié)議,后者處理后,馬上構(gòu)建一個(gè)ICMP應(yīng)答包,發(fā)送給主機(jī)A,其過(guò)程和主機(jī)A發(fā)送ICMP請(qǐng)求包到主機(jī)B一模一樣。

  2.不在同一網(wǎng)段內(nèi)

  在主機(jī)A上運(yùn)行“Ping 192.168.1.4”后,開(kāi)始跟上面一樣,到了怎樣得到MAC地址時(shí),IP協(xié)議通過(guò)計(jì)算發(fā)現(xiàn)D機(jī)與自己不在同一網(wǎng)段內(nèi),就直接將交由路由處理,也就是將路由的MAC取過(guò)來(lái),至于怎樣得到路由的MAC,跟上面一樣,先在ARP緩存表找,找不到就廣播吧。路由得到這個(gè)數(shù)據(jù)幀后,再跟主機(jī)D進(jìn)行聯(lián)系,如果找不到,就向主機(jī)A返回一個(gè)超時(shí)的信息。

  對(duì)Ping后返回信息的分析

  1.Request timed out

  這是大家經(jīng)常碰到的提示信息,很多文章中說(shuō)這是對(duì)方機(jī)器置了過(guò)濾ICMP數(shù)據(jù)包,從上面工作過(guò)程來(lái)看,這是不完全正確的,至少有下幾種情況。

 ?。?) 對(duì)方已關(guān)機(jī),或者網(wǎng)絡(luò)上根本沒(méi)有這個(gè)地址:比如在上圖中主機(jī)A中PING 192.168.0.7 ,或者主機(jī)B關(guān)機(jī)了,在主機(jī)A中PING 192.168.0.5 都會(huì)得到超時(shí)的信息。

  (2)對(duì)方與自己不在同一網(wǎng)段內(nèi),通過(guò)路由也無(wú)法找到對(duì)方,但有時(shí)對(duì)方確實(shí)是存在的,當(dāng)然不存在也是返回超時(shí)的信息。

 ?。?)對(duì)方確實(shí)存在,但設(shè)置了ICMP數(shù)據(jù)包過(guò)濾(比如防火墻設(shè)置)。

  怎樣知道對(duì)方是存在,還是不存在呢,可以用帶參數(shù) -a 的Ping命令探測(cè)對(duì)方,如果能得到對(duì)方的NETBIOS名稱,則說(shuō)明對(duì)方是存在的,是有防火墻設(shè)置,如果得不到,多半是對(duì)方不存在或關(guān)機(jī),或不在同一網(wǎng)段內(nèi)。

 ?。?)錯(cuò)誤設(shè)置IP地址

  正常情況下,一臺(tái)主機(jī)應(yīng)該有一個(gè)網(wǎng)卡,一個(gè)IP地址,或多個(gè)網(wǎng)卡,多個(gè)IP地址(這些地址一定要處于不同的IP子網(wǎng))。但如果一臺(tái)電腦的“撥號(hào)網(wǎng)絡(luò)適配器”(相當(dāng)于一塊軟網(wǎng)卡)的TCP/IP設(shè)置中,設(shè)置了一個(gè)與網(wǎng)卡IP地址處于同一子網(wǎng)的IP地址,這樣,在IP層協(xié)議看來(lái),這臺(tái)主機(jī)就有兩個(gè)不同的接口處于同一網(wǎng)段內(nèi)。當(dāng)從這臺(tái)主機(jī)Ping其他的機(jī)器時(shí),會(huì)存在這樣的問(wèn)題:

  A.主機(jī)不知道將數(shù)據(jù)包發(fā)到哪個(gè)網(wǎng)絡(luò)接口,因?yàn)橛袃蓚€(gè)網(wǎng)絡(luò)接口都連接在同一網(wǎng)段。

  B.主機(jī)不知道用哪個(gè)地址作為數(shù)據(jù)包的源地址。因此,從這臺(tái)主機(jī)去Ping其他機(jī)器,IP層協(xié)議會(huì)無(wú)法處理,超時(shí)后,Ping 就會(huì)給出一個(gè)“超時(shí)無(wú)應(yīng)答”的錯(cuò)誤信息提示。但從其他主機(jī)Ping這臺(tái)主機(jī)時(shí),請(qǐng)求包從特定的網(wǎng)卡來(lái),ICMP只須簡(jiǎn)單地將目的、源地址互換,并更改一些標(biāo)志即可,ICMP應(yīng)答包能順利發(fā)出,其他主機(jī)也就能成功Ping通這臺(tái)機(jī)器了。

2.Destination host Unreachable

 ?。?) 對(duì)方與自己不在同一網(wǎng)段內(nèi),而自己又未設(shè)置默認(rèn)的路由,比如上例中A機(jī)中不設(shè)定默認(rèn)的路由,運(yùn)行Ping 192.168.0.1.4就會(huì)出現(xiàn)“Destination host Unreachable”。

 ?。?)網(wǎng)線出了故障

  這里要說(shuō)明一下“destination host unreachable”和 “time out”的區(qū)別,如果所經(jīng)過(guò)的路由器的路由表中具有到達(dá)目標(biāo)的路由,而目標(biāo)因?yàn)槠渌虿豢傻竭_(dá),這時(shí)候會(huì)出現(xiàn)“time out”,如果路由表中連到達(dá)目標(biāo)的路由都沒(méi)有,那就會(huì)出現(xiàn)“destination host unreachable”。

  3.Bad IP address

  這個(gè)信息表示您可能沒(méi)有連接到DNS服務(wù)器,所以無(wú)法解析這個(gè)IP地址,也可能是IP地址不存在。

  4.Source quench received

  這個(gè)信息比較特殊,它出現(xiàn)的機(jī)率很少。它表示對(duì)方或中途的服務(wù)器繁忙無(wú)法回應(yīng)。

  5.Unknown host——不知名主機(jī)

  這種出錯(cuò)信息的意思是,該遠(yuǎn)程主機(jī)的名字不能被域名服務(wù)器(DNS)轉(zhuǎn)換成IP地址。故障原因可能是域名服務(wù)器有故障,或者其名字不正確,或者網(wǎng)絡(luò)管理員的系統(tǒng)與遠(yuǎn)程主機(jī)之間的通信線路有故障。

  6.No answer——無(wú)響應(yīng)

  這種故障說(shuō)明本地系統(tǒng)有一條通向中心主機(jī)的路由,但卻接收不到它發(fā)給該中心主機(jī)的任何信息。故障原因可能是下列之一:中心主機(jī)沒(méi)有工作;本地或中心主機(jī)網(wǎng)絡(luò)配置不正確;本地或中心的路由器沒(méi)有工作;通信線路有故障;中心主機(jī)存在路由選擇問(wèn)題。

  7.Ping 127.0.0.1:127.0.0.1是本地循環(huán)地址

  如果本地址無(wú)法Ping通,則表明本地機(jī)TCP/IP協(xié)議不能正常工作。

  8.no rout to host:網(wǎng)卡工作不正常。

  9.transmit failed,error code:10043網(wǎng)卡驅(qū)動(dòng)不正常。

  10.unknown host name:DNS配置不正確。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多