路由定址過程

2021-07-12 06:32:58 字數 3556 閱讀 4371

ip路由選擇,是思科網路工程師必須要了解的乙個基礎知識。其實,ip路由並沒有大家想的那麼複雜。筆者在這篇文章中,將通過乙個案例,來幫助大家深入了解ip路由的選擇過程。希望這篇文章能夠幫助大家掃清ip路由選擇上的一些誤區。

如下圖,現在這麼乙個網路。主機甲與主機乙分別在兩個不同的網段上,中間通過路由器進行連線。現在假設主機甲要跟主機乙進行通訊,那麼主機甲如何才能夠找到主機乙的位置呢?筆者現在就通過這個例子,跟大家詳細解釋ip路由選擇的整個過程。在這裡,筆者以cisco的路由器為例進行介紹。

假設現在主機甲的使用者利用ping命令,來確認主機乙的連通性問題。這個網路架構雖然比較簡單,但是其路由選擇過程的步驟則是一步不缺的。主要通過如下步驟:

第一步:當使用者在主機甲上輸入ping 172.168.80.8之後,主機甲中有乙個網際網路控制報文協議,英文簡稱為icmp。這個協議將建立乙個回應請求資料報,在它的資料域中只包含有字母。

第二步:英特網控制報文協議會將這個有效負荷(即剛建立的資料報)交給網際網路協議(英文簡稱ip)。然後這個網際網路協議也會建立乙個資料報。在這個英特網協議建立的資料報中,所包含的內容要比網際網路控制報文協議所建立的資料報豐富的多。在這個包中包括主機甲的ip位址、目的地主機已的ip位址以及值為01h的協議字段。當資料報到達主機乙時,這些內容就是告訴對方,應該將這個有效負荷交給網際網路控制報文協議來處理。

第三步:ip協議會判斷目的ip位址是屬於遠端網路,還是在本地網路。由於根據ip位址規劃規則,主機甲與主機已是屬於不同的網路。此時,剛才英特網協議(ip)所建立的資料報將會被傳送到預設的閘道器中去。在主機甲的網路屬性配置中,除了有自身的邏輯ip位址,還有預設的閘道器位址。閘道器位址就是用來不同網路之間的主機進行通訊的一扇門。只有通過閘道器,主機甲的資料報才能夠被傳送到不同網路的主機乙中。

第四步:確認路由器相應介面的mac位址。假設主機甲(ip位址為172.168.60.6)的預設閘道器被配置為172.168.60.1。若主機甲的資料報要傳送到這個預設閘道器上,則就必須知道其對應的路由器介面的實體地址,即mac位址。因為只有如此,資料報才能夠被傳遞到更下一層的資料鏈路層並根據一定的規則生成幀。然後主機甲才能夠把資料報傳送給172.168.60.0網路連線的路由器介面。在本地區域網上,主機只可以通過硬體位址來相互之間進行通訊。所以當主機甲要把資料報傳送給特定的閘道器時,必須要知道這個閘道器所對應的mac位址。這乙個過程是不可避免的。為了達到這個目的,主機甲首先會檢查自己的arp快取,檢視乙個預設閘道器的ip位址是否已經解析為對應介面的硬體位址。如果在arp快取表中已經有對應的記錄,表示已經被成功解析。此時,資料報將會被釋放並傳遞到資料鏈路層並生成幀。其中目的方的硬體位址也將同資料報一起下傳到資料鏈路層。通常情況下,在主機甲上,可以通過arp命令來檢視主機當前的ip位址與mac位址的對應表。如下圖。筆者現在電腦所設定的預設閘道器為192.168.0.254,後面的16位字元就是預設閘道器所對應的硬體位址。

第五步:生成幀。當這個資料報和目的方的硬體位址被傳遞給資料鏈路層之後,區域網驅動器將用來提供**訪問服務,以通過乙太網進行資料傳輸。乙個資料幀即將產生,使用一些控制資訊來封裝這個資料報。在這個資料幀中會包含有目的方和源方的硬體位址。以及乙太網型別字段。這個乙太網型別字段主要用來描述的是交付這個資料報島資料鏈路層的網路層協議。在這個幀的結尾,是一種被稱作為幀校驗序列的字段,它是裝載迴圈冗餘校驗計算值的區域。也就是說,在這個幀中,主要包括目的mac位址(對應路由器介面的mac位址)、源mac位址(主機甲的mac位址)、乙太網型別字段、資料報、幀校驗序列五部分內容。注意,這裡指的目的位址並不是主機乙的位址,而是裡主機甲最近的預設閘道器位址。在第一次通訊時,主機甲並不知道主機乙的mac位址。一旦完成幀的封裝,則這個幀將會被交付到物理層。如果企業網路是利用雙絞線組建的話,則將會以一次一位的方式發往物理**。

以上五個步驟主要都是在主機甲上完成。這五個步驟執行完畢之後,ip路由選擇過過程的前期工作就算完成了。接下來的就要看路由器的表演了。

第六步:在主機甲所在的衝突域中的每台網路裝置都將接收這些位並重新合併成資料幀。接收完畢後,他們會執行crc過程並核對儲存在幀校驗序列欄位中的內容。如果這兩個值不匹配的話,則這個幀將會被丟棄。如果兩個值相同(主機甲的預設閘道器,即緊鄰主機甲的路由器介面),則網路裝置會接收這個幀,並核查目的方的硬體位址,檢查他們是否也匹配。如果目的方的硬體位址也是匹配的,那麼路由器將會檢視這個幀的乙太網型別字段,以了解在網路層上採用了什麼協議,然後路由器就會抽出幀中的資料報,把其餘部分內容丟棄。然後把抽出來的資料報傳送給乙太網型別欄位中列出的上層協議,如英特網網路協議(ip)等等。

第七步:判斷路由表專案。英特網網路協議(ip)會接收這個資料報,並檢查目的ip位址。在這個案例中,由於資料報中的目的位址與接收路由器所配置的任何位址都不相匹配。此時,路由器就會在自己的路由表中,檢視目的ip網路的位址。在這個案例中,由於路由器同時連線著172.16.80.0的網路。所以在這個路由器的路由表中,有相關的紀錄。若沒有記錄的話,則這個資料報會被直接丟棄。若路由器丟棄資料報的話,則會傳送乙個「目標位址不可達」的錯誤資訊給主機甲。

第八步:路由器**資料報。如果路由器的確在他的路由表中找到了相應網路的記錄,則資料報就會被**到輸出介面。在本例中,就是主機乙所連線的介面。路由器會將這個資料報交換到對應介面的緩衝區內。

第九步:緩衝區中資料的處理。路由器對應介面的緩衝區需要了解目的方主機的硬體位址。因為這個資料報中已經有目的方的ip位址,所以,路由器會先檢查arp快取表。如果主機甲的硬體位址已經被解析並儲存在路由器的arp緩衝中,則這個資料報和這個硬體位址將被傳遞到資料鏈路層以便重新生成幀。通常情況下,若路由器以前跟主機乙通訊過的話,則這個ip位址與mac位址的對應記錄將會在思科路由器arp緩衝表中儲存四個小時。連續四個小時沒有通訊的話,則這個對應的記錄將會被刪除。如果在路由器的arp緩衝表中沒有相關記錄的話,則路由器介面會在其連線的網路內部,傳送乙個arp請求。這個arp請求就像乙個廣播,誰我現在需要知道ip位址為172.12.80.8的mac位址。此時。其他網路裝置發現自己不是這個ip位址,就會拋棄這個包。而主機乙發現有人在問自己的mac位址,就會進行響應。告訴路由器,我的ip位址就是這個,我的mac位址是多少。路由器知道目的主機乙的mac位址之後,就會把資料報連同目的方的mac位址傳遞到下一層的資料鏈路中。

第十步:路由器會重複上面的第五步操作,生成資料幀。併發送到物理層,以一次一位的方式再傳送到物理**上。在網路中進行傳輸

在路由器上的工作也完成。通過以上的分析,我們可以看到,路由器的作用主要就是進行資料交換。把其收到的資料報根據一定的規則**到另乙個可達的介面上。路由器就好像是乙個十字路口,各個資料報都根據自己所需要到達的目的地,現在合適的出口。

第十一步:主機乙會接收到這個資料幀並執行crc過程。如果運算結果與幀校驗序列中字段的內容相同,則這個幀中目的方的mac位址將會被讀取。主機乙會判斷這個mac位址是否跟自己的mac位址相同。若相同的話,則會抽取其中的資料報,並根據乙太網字段型別中指定的協議,把資料報傳遞給相應的協議處理。由於這個案例中,資料報中是乙個回應請求。主機乙就會把這個資料報交給icmp協議處理。icmp協議會應答這個請求,同時把這個資料報丟棄並迅速生成乙個新的有效負荷來作為回應應答。然後主機乙會利用同樣的過程把資料報以及目的mac位址(路由器對應介面的實體地址)傳遞到下一層,讓其生成幀。在資料幀上,會帶有目的mac位址、源mac位址、資料報、乙太網字段型別、幀校驗序列欄位等內容傳送到下一層。然後再一位位的傳送到物理**。

第十二步:路由器再重複第六步到第十步的過程,把資料報從乙個接**換傳遞到另乙個介面中。然後主機甲就收到乙個回應資訊,表示到主機乙的道路是通的。

網路定址過程詳解

今天了解一下arp協議,即arp address resolution protocol 是根據ip位址獲取實體地址的乙個tcp ip協議。ip間的通訊一來mac位址,通訊雙方在乙個區域網內的情況極少,通常需要多台伺服器或網路裝置之間的中轉才能到達。在中轉時會需要下一站中轉裝置的mac位址來搜尋下乙...

DNS的定址過程

如果hosts裡沒有這個網域名稱的對映,則查詢本地dns解析器快取,是否有這個 對映關係,如果有,直接返回,完成網域名稱解析。如果hosts與本地dns解析器快取都沒有相應的 對映關係,首先會找tcp ip引數中設定的首選dns伺服器,在此我們叫它本地dns伺服器,此伺服器收到查詢時,如果要查詢的網...

Hbase的讀寫定址過程

1.hbase的寫入流程 regionserver寫入wal檔案 在將操作寫入metastore之前,會將操作先寫入到wal檔案中。wal檔案的是順序儲存操作記錄的,所有每次新操作直接追加到regionserver對應的wal檔案尾部即可。regionserver寫入metastore 將操作寫入到...