在日常學(xué)習(xí)、工作或生活中,,大家總少不了接觸作文或者范文吧,,通過文章可以把我們那些零零散散的思想,聚集在一塊,。那么我們該如何寫一篇較為完美的范文呢,?這里我整理了一些優(yōu)秀的范文,,希望對大家有所幫助,下面我們就來了解一下吧,。
ping命令的實(shí)現(xiàn)原理 ping命令及其應(yīng)用篇一
ping的原理就是首先建立通道,,然后發(fā)送包,對方接受后返回信息,,這個(gè)包至少包括以下內(nèi)容,,發(fā)送的時(shí)候,包的內(nèi)容包括對方的ip地址和自己的地址,,還有序列數(shù),,回送的時(shí)候包括雙方地址,還有時(shí)間等,,主要是接受方在都是在操作系統(tǒng)內(nèi)核里做好的,,時(shí)刻在監(jiān)聽,提供一段c程序的代碼,。網(wǎng)絡(luò)上的機(jī)器都有唯一確定的ip地址,,我們給目標(biāo)ip地址發(fā)送一個(gè)數(shù)據(jù)包,對方就要返回一個(gè)同樣大小的數(shù)據(jù)包,,根據(jù)返回的數(shù)據(jù)包我們可以確定目標(biāo)主機(jī)的存在,,可以初步判斷目標(biāo)主機(jī)的操作系統(tǒng)等。
假定主機(jī)a的ip地址是192.168.1.1,,主機(jī)b的ip地址是192.168.1.2,,都在同一子網(wǎng)內(nèi),則當(dāng)你在主機(jī)a上運(yùn)行“ping 192.168.1.2”后,,都發(fā)生了些什么呢?
首先,ping命令會構(gòu)建一個(gè)固定格式的icmp請求數(shù)據(jù)包,,然后由icmp協(xié)議將這個(gè)數(shù)據(jù)包連同地址“192.168.1.2”一起交給ip層協(xié)議(和icmp一樣,,實(shí)際上是一組后臺運(yùn)行的進(jìn)程),ip層協(xié)議將以地址“192.168.1.2”作為目的地址,,本機(jī)ip地址作為源地址,,加上一些其他的控制信息,構(gòu)建一個(gè)ip數(shù)據(jù)包,,并在一個(gè)映射表中查找出ip地址192.168.1.2所對應(yīng)的物理地址(也叫mac地址,,熟悉網(wǎng)卡配置的朋友不會陌生,,這是數(shù)據(jù)鏈路層協(xié)議構(gòu)建數(shù)據(jù)鏈路層的傳輸單元——幀所必需的),一并交給數(shù)據(jù)鏈路層,。后者構(gòu)建一個(gè)數(shù)據(jù)幀,,目的地址是ip層傳過來的物理地址,源地址則是本機(jī)的物理地址,,還要附加上一些控制信息,,依據(jù)以太網(wǎng)的介質(zhì)訪問規(guī)則,將它們傳送出去,。
主機(jī)b收到這個(gè)數(shù)據(jù)幀后,,先檢查它的目的地址,并和本機(jī)的物理地址對比,,如符合,,則接收;否則丟棄。接收后檢查該數(shù)據(jù)幀,,將ip數(shù)據(jù)包從幀中提取出來,,交給本機(jī)的ip層協(xié)議。同樣,,ip層檢查后,,將有用的信息提取后交給icmp協(xié)議,后者處理后,,馬上構(gòu)建一個(gè)icmp應(yīng)答包,,發(fā)送給主機(jī)a,其過程和主機(jī)a發(fā)送icmp請求包到主機(jī)b一模一樣,。
從ping的工作過程,,我們可以知道,主機(jī)a收到了主機(jī)b的一個(gè)應(yīng)答包,,說明兩臺主機(jī)之間的去,、回通路均正常。也就是說,,無論從主機(jī)a到主機(jī)b,,還是從主機(jī)b到主機(jī)a,都是正常的,。那么,,是什么原因引起只能單方向ping通的呢?
在共享上網(wǎng)的機(jī)器中,出于安全考慮,,大部分作為服務(wù)器的主機(jī)都安裝了個(gè)人防火墻軟件,,而其他作為客戶機(jī)的機(jī)器則一般不安裝。幾乎所有的'個(gè)人防火墻軟件,默認(rèn)情況下是不允許其他機(jī)器ping本機(jī)的,。一般的做法是將來自外部的icmp請求報(bào)文濾掉,,但它卻對本機(jī)出去的icmp請求報(bào)文,以及來自外部的icmp應(yīng)答報(bào)文不加任何限制,。這樣,,從本機(jī)ping其他機(jī)器時(shí),如果網(wǎng)絡(luò)正常,,就沒有問題,。但如果從其他機(jī)器ping這臺機(jī)器,即使網(wǎng)絡(luò)一切正常,,也會出現(xiàn)“超時(shí)無應(yīng)答”的錯(cuò)誤,。大部分的單方向ping通現(xiàn)象源于此。解決的辦法也很簡單,,根據(jù)你自己所用的不同類型的防火墻,,調(diào)整相應(yīng)的設(shè)置即可。
正常情況下,,一臺主機(jī)應(yīng)該有一個(gè)網(wǎng)卡,,一個(gè)ip地址,或多個(gè)網(wǎng)卡,,多個(gè)ip地址(這些地址一定要處于不同的ip子網(wǎng)),。但對于在公共場所使用的電腦,特別是網(wǎng)吧,,人多手雜,,其中不泛有“探索者”。曾有一次兩臺電腦也出現(xiàn)了這種單方向ping通的情況,,經(jīng)過仔細(xì)檢查,,發(fā)現(xiàn)其中一臺電腦的“撥號網(wǎng)絡(luò)適配器”(相當(dāng)于一塊軟網(wǎng)卡)的tcp/ip設(shè)置中,設(shè)置了一個(gè)與網(wǎng)卡ip地址處于同一子網(wǎng)的ip地址,,這樣,,在ip層協(xié)議看來,這臺主機(jī)就有兩個(gè)不同的接口處于同一網(wǎng)段內(nèi),。當(dāng)從這臺主機(jī)ping其他的機(jī)器時(shí),,會存在這樣的問題:
(1)主機(jī)不知道將數(shù)據(jù)包發(fā)到哪個(gè)網(wǎng)絡(luò)接口,因?yàn)橛袃蓚€(gè)網(wǎng)絡(luò)接口都連接在同一網(wǎng)段;
(2)主機(jī)不知道用哪個(gè)地址作為數(shù)據(jù)包的源地址,。因此,,從這臺主機(jī)去ping其他機(jī)器,ip層協(xié)議會無法處理,,超時(shí)后,ping 就會給出一個(gè)“超時(shí)無應(yīng)答”的錯(cuò)誤信息提示,。但從其他主機(jī)ping這臺主機(jī)時(shí),,請求包從特定的網(wǎng)卡來,,icmp只須簡單地將目的、源地址互換,,并更改一些標(biāo)志即可,,icmp應(yīng)答包能順利發(fā)出,其他主機(jī)也就能成功ping通這臺機(jī)器了,。
s("content_relate");【ping命令的應(yīng)用及原理】相關(guān)文章:
1.
ping命令工作原理詳解
2.ping命令詳解
3.ping命令的用法
4.ping命令的使用
5.ping命令的作用及使用方法
6.ping命令使用技巧
7.如何使用ping命令
8.ping命令使用的技巧