【實驗拓撲】
【實驗描述】
接口信息不說了,簡單寫一下各路由間的初始靜態路由。設置R3的目的是為了測試當R1的f0/0接口Down掉,但同時下一跳12.12.12.2還可達的情況。
R1:
ip route 12.12.12.0 255.255.255.0 13.13.13.3
R2:
ip route 12.12.12.0 255.255.255.0 23.23.23.3
R3:
ip route 0.0.0.0 0.0.0.0 23.23.23.2
ip route 12.12.12.1 255.255.255.255 13.13.13.1
接下來就是在R1上設置各種方式的靜態路由,使其與2.2.2.2可達。
【實驗步驟】
一、只使用下一跳方式配置靜態路由
ip route 2.2.2.0 255.255.255.0 12.12.12.2
路由器行為:
1、R1匹配2.2.2.0/24的路由條目,發現下一跳地址為12.12.12.2
2、R1遞歸查找路由表,直到找到出站接口。本例中只需要遞歸查找一次即可在直連路由中找到12.12.12.2的出站接口為f0/0
3、R1的出站接口f0/0向外發送ARP廣播尋找12.12.12.2的MAC地址,R2收到該ARP后將與R1相連的接口返回給R1,R1將該ARP緩存到ARP Cache。以后再有去往R2的數據包就不必發送ARP請求了,因為下一跳地址都是12.12.12.12,因此可以從ARP緩存中直接讀取目的MAC地址
4、R1將數據包由f0/0接口發出
5、最終ARP緩存中,只存在12.12.12.2的條目
本地接口Down:如果下一跳可達,路由條目不消失;如果下一跳不可達,路由條目消失。但如果接口全部Down,非直連網絡的接口UP導致下一跳可達(即12.12.12.2不是通過直連網絡連通,像本例中的R1->R3->R2),路由條目不恢復!
實驗步驟(起初全部聯通):
shutdown f0/0 觀察路由條目不消失
shutdown f1/0 觀察路由條目消失
no shutdown f1/0 觀察路由條目不恢復
no shutdown f0/0 觀察路由條目恢復
二、只使用出站接口方式配置靜態路由
ip route 2.2.2.0 255.255.255.0 f0/0
路由器行為:
1、R1匹配2.2.2.0/24的路由條目,無需遞歸查詢,直接找到出站接口f0/0
2、R1的出站接口f0/0向外發送ARP廣播尋找2.2.2.2的MAC地址
3、路由器R2收到該ARP,由于Proxy-ARP默認開啟,R2會在自己的路由表中查找2.2.2.2條目,如果找到就向自己下面的接口繼續發送ARP廣播尋找2.2.2.2的MAC地址
4、R2將2.2.2.2的MAC地址(就是與R1相連接口的MAC地址)返回給R1,R1將該ARP緩存到ARP Cache。由此可見,當R2下面接著的主機數目很多時,R1會發送大量的ARP請求并且在ARP緩存中產生大量的ARP條目。
5、R1將數據包由f0/0接口發出
6、最終ARP緩存中,只存在2.2.2.2的條目
本地接口Down:路由條目消失
三、同時使用出站接口和下一跳方式配置靜態路由,但是兩條命令分開寫
ip route 2.2.2.0 255.255.255.0 12.12.12.2
ip route 2.2.2.0 255.255.255.0 f0/0
路由器行為:
1、有CEF的話按CEF進行負載均衡,關閉CEF的話按包進行負載均衡。關閉CEF,可以看到前2個包均不通,這是由于兩種方式發送ARP請求的MAC地址不同。
2、負載均衡下路由器行為與上面兩種相同,做兩次就好了。
3、最終ARP緩存中,12.12.12.2的條目和2.2.2.2的條目均存在(關閉CEF之后才能看出效果)。
本地接口Down:無論下一跳是否可達,直連路由條目(接口方式配置)消失。下一跳路由條目情況同一。
四、聯合使用接口和下一跳方式配置靜態路由,在一條命令中同時配置下一跳和出站接口
ip route 2.2.2.0 255.255.255.0 f0/0 12.12.12.2
路由器行為:
1、R1匹配2.2.2.0/24的路由條目,發現下一跳地址為12.12.12.2,并且無需遞歸查詢,直接找到出站接口f0/0
2、R1的出站接口f0/0向外發送ARP廣播尋找12.12.12.2的MAC地址,R2收到該ARP后將與R1相連的接口返回給R1,R1將該ARP緩存到ARP Cache。以后再有去往R2的數據包就不必發送ARP請求了,因為下一跳地址都是12.12.12.12,因此可以從ARP緩存中直接讀取目的MAC地址。
3、R1將數據包由f0/0接口發出
4、最終ARP緩存中,只存在12.12.12.2的條目
本地接口Down:即使下一跳可達,路由條目也會消失