Cisco IOS Cookbook 中文精簡版 6-23 RIP

 6.1.  配置RIP(V1)
提問 在簡單的網絡中啓用RIP路由協議
回答
Router2#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router2(config)#interface Ethernet0
Router2(config-if)#ip address 192.168.30.1 255.255.255.0
Router2(config-if)#interface Serial0.1
Router2(config-subif)#ip address 172.25.2.2 255.255.255.0
Router2(config-subif)#exit
Router2(config)#router rip
Router2(config-router)#network 172.25.0.0
Router2(config-router)#network 192.168.30.0
Router2(config-router)#exit
Router2(config)#end
Router2#

註釋 要特別注意的是版本1的RIP中的network命令是無類的,就算你配置命令是無類的網絡,路由器內部還是會轉化爲無類的。show ip rip database 是一個很好的驗證命令

6.2.  RIP中的路由過濾
提問 限制RIP中某些特定路由條目的交換
回答
入方向
Router2#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router2(config)#access-list 10 deny 192.168.20.0
Router2(config)#access-list 10 permit any
Router2(config)#router rip
Router2(config-router)#distribute-list 10 in Serial 0.1               (該命令除了可以用於特定接口也可以用於所有接口)
Router2(config-router)#network 172.25.0.0
Router2(config-router)#network 192.168.30.0
Router2(config-router)#exit
Router2(config)#end
Router2#
出方向
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#access-list 20 permit 0.0.0.0
Router1(config)#access-list 20 deny any
Router1(config)#router rip
Router1(config-router)#distribute-list 20 out Serial0/0.2
Router1(config-router)#network 172.25.0.0
Router1(config-router)#exit
Router1(config)#end
Router1#
註釋 使用show ip protocol命令可以用來驗證所配置的distribute-list

6.3.  再發布靜態路由至RIP
提問 再發布你所配置的靜態路由到RIP路由協議中
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#ip route 192.168.10.0 255.255.255.0 172.22.1.4
Router1(config)#router rip
Router1(config-router)#redistribute static metric 5
Router1(config-router)#distribute-list 7 out static
Router1(config-router)#exit
Router1(config)#access-list 7 permit 192.168.10.0
Router1(config)#end
Router1#

註釋 這裏再發布還是要注意無類路由的問題,所以還是建議用V2。例子是再發布靜態路由,也可以再發布其他動態路由協議,比如OSPF,BGP,EIGRP等,命令類似redistribute eigrp 65530
有一個好玩的情況是雖然此命令也可以支持RIP自己的再發布,但是配置時候是不允許的,因爲RIP沒有其他動態路由協議中的進程號的概念,無法區別不同的進程
6.4.  使用Route Maps進行路由再發布  
提問 使用Route Maps這種更好控制粒度的方式來進行路由再發布的配置
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#ip route 192.168.10.0 255.255.255.0 172.22.1.4
Router1(config)#ip route 192.168.11.0 255.255.255.0 172.22.1.4
Router1(config)#ip route 192.168.12.0 255.255.255.0 172.22.1.4
Router1(config)#access-list 20 permit 192.168.10.0
Router1(config)#access-list 21 permit 192.168.11.0
Router1(config)#route-map STATIC permit 10
Router1(config-route-map)#match ip address 20
Router1(config-route-map)#set metric 2
Router1(config-route-map)#set tag 2
Router1(config-route-map)#exit
Router1(config)#route-map STATIC permit 20
Router1(config-route-map)#match ip address 21
Router1(config-route-map)#set metric 8
Router1(config-route-map)#route-map STATIC deny 30
Router1(config-route-map)#exit
Router1(config)#router rip
Router1(config-router)#redistribute static route-map STATIC
Router1(config-router)#exit
Router1(config)#end
Router1#

註釋 使用route map可以對路由再發布進行更好粒度的控制,如果覺得配置命令難懂的話,使用驗證命令show route-map 可能更好理解一些
6.5.  在RIP中宣告缺省路由  
提問 使用RIP來宣告一條缺省路由
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#ip route 0.0.0.0 0.0.0.0 172.25.1.1
Router1(config)#router rip
Router1(config-router)#default-information originate
Router1(config-router)#end
Router1#
或者使用再發布命令
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#ip route 0.0.0.0 0.0.0.0 172.25.1.1
Router1(config)#access-list 7 permit 0.0.0.0
Router1(config)#router rip
Router1(config-router)#redistribute static
Router1(config-router)#distribute-list 7 out static
Router1(config-router)#end
Router1#

註釋 推薦使用第一種方式,除了可以免除使用過濾列表以外還可以和route map來組合使用
6.6.  在特定接口禁用RIP  
提問 阻止某個接口參與RIP
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#access-list 12 deny any
Router1(config)#router rip
Router1(config-router)#passive-interface FastEthernet0/1
Router1(config-router)#distribute-list 12 in FastEthernet0/1
Router1(config-router)#end
Router1#

註釋 passive-interface 用於防止端口發送路由信息,但是並不能控制此接口不接收路由信息,所以要再使用distribute-list 命令來防止此接口接收路由信息
6.7.  缺省被動接口
提問 缺省在所有端口禁用RIP,除非特別指定
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#router rip
Router1(config-router)#passive-interface default
Router1(config-router)#no passive-interface FastEthernet0/0.1
Router1(config-router)#network 172.22.0.0
Router1(config-router)#network 172.25.0.0
Router1(config-router)#network 192.168.1.0
Router1(config-router)#exit
Router1(config)#end
Router1#
註釋 無
6.8.  RIP更新使用單播包  
提問 不想使用組播或者廣播的形式來發布路由更新
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#router rip
Router1(config-router)#passive-interface FastEthernet0/1
Router1(config-router)#neighbor 172.22.1.4
Router1(config-router)#end
Router1#
註釋 缺省V1使用廣播包,V2使用組播包的形式來發布路由更新
6.9.  對路由應用Offsets  
提問 修改特定接口學到或者發佈路由的度量值
回答
Router2#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router2(config)#access-list 22 permit 192.168.20.0
Router2(config)#access-list 33 permit 192.168.30.0
Router2(config)#router rip
Router2(config-router)#offset-list 33 out 10 Serial0.1
Router2(config-router)#offset-list 22 in 5 Serial0.1
Router2(config-router)#exit
Router2(config)#end
Router2#
註釋 RIP是根據跳數來進行選路而沒有考慮到鏈路的不同,通過這樣的命令可以變相的增加某個接口的度量值,從而在選路時考慮,注意的是offset只能增加度量值不能減少
6.10.  定時器調整  
提問 對RIP的定時器設定進行調整,提高收斂速度
回答
Router2#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router2(config)#router rip
Router2(config-router)#timers basic 20 80 80 120  
Router2(config-router)#exit
Router2(config)#end
Router2#
註釋 所有定時器單位都是秒,第一個爲更新週期,第二個爲無效路由時間,第三個爲保持時間,第四個爲flush時間。需要注意的是要確保啓用RIP的網絡定時器都設置一致
6.11.  增加路由更新數據包發送延遲
提問 避免路由更新數據包發送速度太快導致老設備來不及處理
回答
Router2#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router2(config)#router rip
Router2(config-router)#output-delay 10
Router2(config-router)#exit
Router2(config)#end
Router2#
註釋 正常情況下一個RIP更新數據包大小爲512字節可以包含25條路由條目,如果路由表條目大於25就會通過多個路由更新包來發送,正常是儘可能快的發,啓用本特性可以增加發送的間隔,單位爲毫秒
6.12.  啓用非週期性更新
提問 避免使用每30秒的週期性更新,使用觸發更新
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#interface Serial0/0.2
Router1(config-subif)#ip rip triggered
Router1(config-subif)#end
Router1#
註釋 一定要在鄰居路由器上也啓用此特性,只能用於點對點鏈路
6.13.  增加RIP的輸入隊列
提問 在低端路由器上增加RIP的輸入隊列避免丟失路由信息
回答
Router2#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router2(config)#router rip
Router2(config-router)#input-queue 200
Router2(config-router)#end
Router2#
註釋 類似6.11
6.14.       配置RIP(V2)
提問 啓用更靈活的版本2 RIP
回答
Router2#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router2(config)#router rip
Router2(config-router)#version 2
Router2(config-router)#network 172.25.0.0
Router2(config-router)#network 192.168.30.0
Router2(config-router)#end
Router2#
註釋 缺省情況下路由器會監聽v1和v2的RIP數據包,但是隻會發送v1的數據包
6.15.  啓用RIP認證
提問 對RIP的數據包進行認證增加安全性
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#key chain ORA
Router1(config-keychain)#key 1
Router1(config-keychain-key)#key-string neoshi
Router1(config-keychain-key)#exit
Router1(config)#interface FastEthernet0/0.1
Router1(config-subif)#ip rip authentication key-chain ORA
Router1(config-subif)#ip rip authentication mode text (或者ip rip authentication mode md5)
Router1(config-subif)#exit
Router1(config)#end
Router1#
註釋 RIP認證是RIPv2的特性之一,需要注意的是由於啓用了認證所以在更新數據包中所包含的路由條目數會減少,文本方式會減少爲24,MD5會減少爲23
6.16.  配置RIP路由彙總
提問 通過使用路由彙總來減少路由表的大小,增加穩定性
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#interface Serial0/0.2
Router1(config-subif)#ip summary-address rip 172.25.0.0 255.255.0.0
Router1(config-subif)#exit
Router1(config)#end
Router1#
缺省情況下RIP會自動對路由條目彙總爲無類網絡路由,使用下面方法關閉
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#router rip
Router1(config-router)#no auto-summary
Router1(config-router)#exit
Router1(config)#end
Router1#
註釋 只要配置的彙總路由中的有一條子網路由是存在的,路由器就會繼續宣告此條彙總路由
6.17.       路由標籤  
提問 對再發布的路由配置標籤,從而避免不同路由協議之間路由再發布出現路由迴環
回答
Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#ip route 0.0.0.0 0.0.0.0 172.25.1.1
Router1(config)#access-list 7 permit 0.0.0.0
Router1(config)#route-map TAGGING permit 10
Router1(config-route-map)# match ip address 7
Router1(config-route-map)# set tag 5
Router1(config-route-map)#exit
Router1(config)#router rip
Router1(config-router)#redistribute static route-map TAGGING
Router1(config-router)#exit
Router1(config)#end
Router1#
註釋 標籤TAG只用於外部的路由,而不是通過RIP學到的路由,RIP自身正常情況下也不直接使用這些標籤,只是分發而已,如果這些路由再被分發到其他路由進程就可以用標籤來識別從而進行控制
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章