RIP计时器的游戏
目標:理解RIP抑制計時器
測試環境:如圖1所示:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ???圖1 測試環境
環境說明:R1上有一個192.168.1.0/24的網絡,R1、R2、R3之間運行RIP協議,R2和R3通過R1到達192.168.1.0網絡。
測試目標:首先需要關閉R1的E1/0端口,然后通過調整R2RIP計時器的參數來使得R2到達192.168.1.0網絡的下一跳是R3。
RIP計時器:思科路由器對RIP定義了4個計時器,分別是更新計時器、無效計時器、抑制計時器、刷新計時器。其中抑制計時器或許是最難理解的。書中對抑制計時器的定義是,在網絡設備收到觸發更新的正確公告的同時,也可能伴隨著還處于錯誤狀態的周期性更新,當收到的觸發更新路由的度量值比原有路由要高時,思科路由器將使用抑制計時器使該更新消息處于掛起狀態,對它保持懷疑,直到抑制計時器超時才正式接受該路由。下面通過測試實驗取證計時器的效果。
測試步驟:
第一步:首先在R1、R2、R3上完成基礎配置,運行RIP路由協議。完成配置后查看R2的路由表如圖2所示:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?圖2:R2路由表(R3的也一樣)
? ? R2和R3到達192.168.1.0網絡都通過R1,這沒什么好說的,接下來要讓R2通過R3到達192.168.1.0網絡。
第二步:要讓R2通過R3到達192.168.1.0網絡,首先R3必須要能公告192.168.1.0網絡 給R2,告訴R2可以通過我到達192.168.1.0網絡。但是默認情況下R3是不會公告192.168.1.0網絡的,因為R3的E1/0的端口默認開啟了水平分割功能。R3從自己的E1/0端口學到R1公告的192.168.1.0網絡,就不會在把該網絡從E1/0端口公告出去,為了讓R3能夠公告該網絡,需要在R3的E1/0端口上關閉水平分割功能。關閉水平分割后的效果如圖3所示:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ? ?圖3
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 關閉水平分割指令:R3(config-if)#no ip split-horizon
? ? 關閉水平分割后R3將會公告192.168.1.0網絡,R3公告該網絡的度量值是2,R1公告該網絡的度量值是1,此時R2還是會選擇通過R1來到達192.168.1.0網絡。如果關閉R1的E1/0端口,R1將不會公告192.168.1.0網絡了。這個時候RIP的無效計時器就很有用了,無效計時器默認是180s,也就是說R2和R3如果在180秒內不能收到R1發送的更新消息時,就把通過R1到達192.168.1.0網絡的路由條目標記為失效。在這180秒內,R3還是會公告192.168.1.0網絡給R2,由于R2路由表中度量值更優的路由并沒有超過無效計時器的時間,R2不會將R3公告的路由放入路由表中,即便超過了180秒也沒有用,因為R3的無效計時器也超時了。下面進一步調整R2RIP的計時器。
第三步:?先把R1的E1/0端口重新開啟,保證R2和R3的RIP計時器復位。現在將R2的無效計時器設置為35s,抑制計時器保持默認的180s,再次關閉R1的E1/0端口,看看R2是否會在35秒后就將R1公告的路由條目標記為失效,從而接受R3公告的路由(R3的4個計時器保持默認)。測試結果是R2確實在35秒后就把R1公告的路由標記為無效,但是R2并沒有將R3公告的路由放到路由表里,這就是R2的抑制計時器在作怪了。當R2收到更新路由(R3)的度量值(2)比原有的失效路由(R1)要高時,R2將使用抑制計時器使該更新消息處于掛起狀態,對它保持懷疑,直到抑制計時器超時才正式接受該路由。也就是說R2還要等待抑制計時器的180s超時后才會接受R3的路由更新,180秒后R3的無效計時器也超時了,R3將不會發送192.168.1.0網絡的更新消息。
第四步:?將R2的4個計時器設置為30.35.35.180,也就是把無效計時器和抑制計時器都設置為35秒,再次觀察測試結果,這一次R2在無效計時器超時后很快就學到了R3公告的192.168.1.0網絡,度量值是2跳。如圖4所示:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?圖4
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?設置RIP計時器的指令:R2(config-router)#timersbasic 30 35 35 180
? ? ?此時在R2上ping 192.168.1.1會收到R3回復的ICMP重定向消息,如圖5所示:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖5 R3發給R2的重定向消息
總結:該實驗關鍵在于對RIP計時器的理解,特別是抑制計時器的理解,書中對抑制計時器有一段挺有趣的描述:設置該計時器時一定要小心,如果將該計時器的時間設置得過長,那么正確的路由更新會受到影響,收斂速度會變慢,如果將該計時器的時間設置得過短,那么又失去了原有的意義。在這個實驗當中,原有的意義是讓R2不要相信R3公告的錯誤的路由(因為R1的E1/0端口關閉了,192.168.1.0網絡已經不可達了),這個實驗里R2的抑制計時器設置的時間短了,那就失去了原有的意義了。
轉載于:https://blog.51cto.com/pkimin3/1917867
總結
- 上一篇: 在C#代码中应用Log4Net系列教程(
- 下一篇: php数组使用json_encode函数