黑客教程:路由的基本概念

以太網交換機工作在第二層即數據鏈路層,用於在同一網絡內部轉發以太網幀。但是,當源和目的IP地址位於不同網絡時,以太網幀必須發送給路由器。路由器負責在不同網絡間傳輸報文,通過路由表來決定最佳轉發路徑。當主機將報文發送至不同IP地址時,由於主機無法直接與本地網絡以外的設備通信,報文被轉發至默認網關。默認網關就是數據流從本地網絡路由至遠端設備的目的地。它通常用來連接本地網與公共網。

報文轉發過程:

路由器在一個接口接收報文並將它從另一個接口轉發出去,這一過程的關鍵步驟是為輸出鏈路將報文封裝在適當的數據鏈路幀中。路由器主要執行以下三個步驟:

1. 將第二層的幀頭和幀尾移除,解析出第三層報文。

2. 檢查IP報文的目的IP地址,在路由表中查找最佳路由。

3. 如果路由器找到一條最佳路徑,則將三層報文封裝到新的二層幀中,並將幀轉發到輸出端口。

如下圖所示:設備有三層IPv4地址,以太網接口有二層數據鏈路地址。例如PC 1的IPv4地址192.168.1.10,示例MAC地址0A-10。在報文從原設備傳輸至目的設備的過程中,三層IP地址不會改變但是,每一跳隨著報文在路由器中被解封裝和重新封裝,二層數據鏈路地址都會改變。很可能報文被封裝成與接收時不同的另一種類型的二層幀。

黑客教程:路由的基本概念

發送報文:

PC 1發送報文給PC 2時,首先必須確定目的IPv4地址是否位於同一網絡。PC 1通過將自己的IPv4地址與子網掩碼做與操作,來判斷PC 1所屬的網段。接下來,PC 1對目的IPv4地址與PC 1的子網掩碼做同樣的與操作。如果目的網絡地址與PC 1網絡相同,則PC 1不使用默認網關,而是在ARP緩存中查找目的IPv4地址的設備MAC地址。如果MAC地址不在緩存中,則PC 1產生一個ARP請求來獲取地址並將報文發給目的地址。如果目的網絡地址位於另一網絡,則PC 1將報文轉發至默認網關。

要確定默認網關的MAC地址,PC 1在它的ARP表中查找默認網關的IPv4地址以及相應的MAC地址。如果ARP表中沒有默認網關的對應表項,則PC 1發送ARP請求。路由器R1回覆ARP響應。之後PC 1將報文轉發至默認網關的MAC地址,即路由器R1的Fa0/0接口。

轉發至下一跳:

R1從PC 1接收到以太網幀後執行以下步驟:

1. R1檢查目的MAC地址,與接收端口FastEthernet 0/0相匹配,因此,將幀複製到buffer。

2. R1識別以太網類型為0x800,意味著以太網幀的數據部分包含IPv4報文。

3. R1解封裝該以太網幀。

4. 由於目的IPv4地址與R1直連的任何網絡都不相符,R1在路由表中查找包含該目的IPv4地址主機的網絡地址。本例中,路由表中有192.168.4.0/24網絡的路由。目的IPv4地址為192.168.4.10,即該網絡上的主機IPv4地址。

R1找到192.168.4.0/24路由的下一條IPv4地址為192.168.2.2以及輸出端口FastEthernet 0/1,這意味著IPv4報文封裝到一個新的以太網幀中,目標MAC地址是下一跳路由器的MAC地址。

由於下一個接口是在以太網上,所以R1必須用ARP解析出下一跳IPv4地址的MAC地址。

1. R1在ARP cache中查找下一跳IPv4地址192.168.2.2。如果表項不在ARP cache中,R1會從FastEthernet 0/1 接口發送ARP請求,R2會返回ARP響應。R1之後在ARP cache中更新192.168.2.2的MAC地址。

2. IPv4報文封裝到新的以太網幀中並從R1的FastEthernet 0/1 接口轉發出去。

到達目的地:

當幀到達R3時執行以下步驟:

1. R3將數據鏈路幀複製到它的buffer。

2. R3解封裝該數據鏈路幀。

3. R3在路由表中查找該目的IPv4地址。R3路由表中有直接連接到該網絡的路由。這表示報文可直接發送到目的設備而無需發送至路由器。

由於輸出接口是一個直連以太網,所以R3必須用ARP解析出目的IPv4地址的MAC地址。

1. R3在它的ARP cache中查找目的IPv4地址,如果此ARP cache中沒有此表項,R3會從FastEthernet 0/0 接口發送ARP請求。PC 2回覆ARP響應告知它的MAC地址。R3之後在ARP cache中更新192.168.4.10的MAC地址。

2. IPv4報文封裝到新的以太網幀中並從R3的FastEthernet 0/0 接口發出。

3. 當PC 2接收到該幀,檢查幀的目的MAC地址,與網卡接收端口的MAC地址相匹配,PC 2於是將幀的剩餘部分複製到自己的buffer。

4. PC 2識別到以太網類型為0x800,也就是幀的數據部分包含IPv4報文。

5. PC 2解封裝以太網幀,將IPv4報文傳遞給操作系統的IPv4進程。

路由表:

路由表存儲的信息包括:

直連路徑:來自活動路由接口的路徑。當接口為活動狀態並配置了IP地址時,路由器添加一條直連路徑。

遠端路徑:遠端的網絡連接到其他路由。通過靜態配置或動態路由協議到達該網絡。

路由表是存儲在RAM中的一份數據文件,用於存儲直連以及遠端網絡的路由信息。路由表中包含網絡或下一跳地址的信息。這些信息告知路由器可以通過將報文發送至代表下一跳地址的路由器以最佳路勁到達目的地址。下一跳信息也可以是到下一個目的地的輸出接口。

路由表內容:

Cisco IOS路由器可用show IP route命令顯示IPv4路由表。路由器還提供一些額外的路由信息,包括路徑是怎樣學習到的,路徑在表中有多長時間,使用哪一接口去到達預定義的目的地。

路由表中的表項可作為以下內容添加:

本地路徑接口:當接口配置並激活時添加。

直連接口:當接口配置並激活時添加。

靜態路徑:當手動配置路徑並且輸出接口激活時。

動態路由協議:當路由協議動態學習到網絡時添加,如EIGRP或OSPF。

路由表項的來源通過代碼來標識,代碼表明路徑是怎樣學習到的。例如,常用代碼包括:

L:路由器接口地址。當路由器接收到報文時發送至本地接口而無需轉發。

C:直連網段。

O:通過OSPF從另一個路由器動態學習到的網絡。

D:通過EIGRP從另一個路由器動態學習到的網絡。

下圖顯示了R1的路由表:

黑客教程:路由的基本概念

遠端網絡路由表項:

下圖顯示了R1到遠端網絡10.1.1.0的表項:

黑客教程:路由的基本概念

Route source:路徑是怎樣學習到的。

Destination network:遠端網絡地址。

Administrative distance:路由來源的可信度。較低值表明優先選擇。

Metric:是路由算法用以確定到達目的地的最佳路徑的計量標準。較低值表明優先選擇。

Next hop:轉發報文的下一個路由器的IP地址。

Route timestamp:自學習到路徑以來過了多少時間。

Outgoing interface:用以轉發報文的輸出接口。

直連路由表項:

下圖顯示了R1到直連網絡192.168.10.0的路由表項:

黑客教程:路由的基本概念

在一個接口狀態為up/up並添加到IPv4路由表之前,接口必須:

· 指定有效的IPv4或IPv6地址。

· 通過no shutdown命令激活。

· 從另一設備(路由器,交換機,主機等)接收到載體信號。

當接口up之後,該接口的網絡作為直連網絡添加到路由表中。

EMC中文支持論壇https://community.emc.com/go/chinese


分享到:


相關文章: