09-RIPng配置
本章節下載: 09-RIPng配置 (472.78 KB)
目 錄
RIPng(RIP next generation,下一代RIP協議)是基於距離矢量(Distance-Vector)算法的協議。它通過UDP報文交換路由信息,使用的端口號為521。RIPng是對原來的IPv4網絡中RIP-2協議的擴展,大多數RIP的概念都可以用於RIPng。
RIPng使用跳數來衡量到達目的地址的距離(也稱為度量值或開銷)。在RIPng中,從一個路由器到其直連網絡的跳數為0,通過與其相連的路由器到達另一個網絡的跳數為1,其餘以此類推。當跳數大於或等於16時,目的網絡或主機就被定義為不可達。
每個運行RIPng的路由器都管理一個路由數據庫,該路由數據庫包含了到所有可達目的地的路由項,這些路由項包含下列信息:
· 目的地址:主機或網絡的IPv6地址。
· 下一跳地址:為到達目的地,需要經過的相鄰路由器的接口IPv6地址。
· 出接口:轉發IPv6報文通過的出接口。
· 度量值:本路由器到達目的地的開銷。
· 路由時間:從路由項最後一次被更新到現在所經過的時間,路由項每次被更新時,路由時間重置為0。
· 路由標記(Route Tag):用於標識外部路由,以便在路由策略中根據Tag對路由進行靈活的控製。關於路由策略的詳細信息,請參見“三層技術-IP路由配置指導”中的“路由策略”。
RIPng有兩種報文:Request報文和Response報文,並采用組播方式發送報文,使用組播地址FF02::9作為RIPng路由更新的目的地址;使用鏈路本地地址FE80::/10作為RIPng路由更新的源地址。
當RIPng路由器啟動後或者需要更新部分路由表項時,便會發出Request報文,向鄰居請求需要的路由信息。
Response報文包含本地路由表的信息,一般在下列情況下產生:
· 對某個Request報文進行響應
· 作為更新報文周期性地發出
· 在路由發生變化時觸發更新
收到Request報文的RIPng路由器會以Response報文形式發回給請求路由器。
收到Response報文的路由器會更新自己的RIPng路由表。為了保證路由的準確性,RIPng路由器會對收到的Response報文進行有效性檢查,比如源IPv6地址是否是鏈路本地地址,端口號是否正確等,沒有通過檢查的報文會被忽略。
與RIPng相關的規範有:
· RFC 2080:RIPng for IPv6
· RFC 2081:RIPng Protocol Applicability Statement
RIPng配置任務如下:
(1) 配置RIPng的基本功能
a. 啟動RIPng
b. (可選)配置接口工作在抑製狀態
(2) (可選)配置RIPng的路由信息控製
(3) (可選)調整和優化RIPng網絡
(4) (可選)提高RIPng的可靠性
(5) (可選)提高RIPng的安全性
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
缺省情況下,係統沒有運行RIPng。
(3) 退回係統視圖。
quit
(4) 進入接口視圖。
interface interface-type interface-number
(5) 在接口上使能RIPng路由協議。
ripng process-id enable
缺省情況下,接口上的RIPng功能處於關閉狀態。
如果接口沒有使能RIPng,那麼RIPng進程在該接口上既不發送也不接收RIPng路由。
可配置接口工作在抑製狀態,即接口隻接收RIPng報文而不發送RIPng報文。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 配置抑製接口。
silent-interface { interface-type interface-number | all }
缺省情況下,允許所有接口發送路由更新報文。
若抑製接口收到非知名端口的單播請求,會發送響應報文。
附加度量值是在RIPng路由原來度量值的基礎上所增加的度量值(跳數),包括發送附加度量值和接收附加度量值。
· 發送附加度量值:不會改變路由表中的路由度量值,僅當接口發送RIPng路由信息時才會添加到發送路由上。
· 接收附加度量值:會影響接收到的路由度量值,接口接收到一條合法的RIPng路由時,在將其加入路由表前會把附加度量值加到該路由上。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 設置接口接收RIPng路由時的附加度量值。
ripng metricin value
缺省情況下,接口接收RIPng路由時的附加度量值為0。
(4) 設置接口發送RIPng路由時的附加度量值。
ripng metricout value
缺省情況下,接口發送RIPng路由時的附加度量值為1。
RIPng的路由聚合是在接口上實現的,在接口上配置路由聚合,此時可以將RIPng要在這個接口上發布出去的路由按最長匹配原則聚合後發布出去。
RIPng路由聚合可提高網絡的可擴展性和效率,縮減路由表。
RIPng將多條路由聚合成一條路由時,聚合路由的Metric值將取所有路由Metric的最小值。
例如,RIPng從接口發布出去的路由有兩條:11:11:11::24 Metric=2 和11:11:12::34 Metric=3,在此接口上配置的聚合路由為11::0/16,則最終發布出去的路由為11::0/16 Metric=2。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置RIPng在接口發布聚合的IPv6地址,並指定被聚合的路由的IPv6前綴。
ripng summary-address ipv6-address prefix-length
缺省情況下,未配置RIPng在接口發布聚合的IPv6地址。
用戶可以配置RIP以指定度量值向鄰居發布一條缺省路由。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置RIPng發布缺省路由。
ripng default-route { only | originate } [ cost cost-value | route-policy route-policy-name ] *
缺省情況下,RIPng進程不發布缺省路由。
缺省路由將被強製通過指定接口的路由更新報文發布出去,該路由的發布不考慮其是否已經存在於本設備的IPv6路由表中。
用戶可通過使用IPv6 ACL、IPv6前綴列表或路由策略對接收到的路由信息進行過濾,隻有通過過濾的路由才能被加入到RIPng路由表;此外,還可對本機所有要發布的路由進行過濾,包括從其它路由協議引入的路由和從鄰居學到的RIPng路由,隻有通過過濾的路由才能被發布給RIPng鄰居。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 對接收的路由信息進行過濾。
filter-policy { ipv6-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } import
缺省情況下,RIPng不對接收的路由信息進行過濾。
(4) 對發布的路由信息進行過濾。
filter-policy { ipv6-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } export [ protocol [ process-id ] ]
缺省情況下,RIPng不對發布的路由信息進行過濾。
任何路由協議都具備特有的協議優先級,在設備進行路由選擇時能夠在不同的協議中選擇最佳路由。可以手工設置RIPng協議的優先級,設置的值越小,其優先級越高。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 配置RIPng路由的優先級。
preference { preference | route-policy route-policy-name } *
缺省情況下,RIPng路由的優先級為100。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 引入外部路由。
¡ 配置RIPng引入BGP4+協議的路由。
import-route bgp4+ [ as-number ] [ allow-ibgp ] [ cost cost-value | route-policy route-policy-name ] *
¡ 配置RIPng引入直連或靜態路由。
import-route { direct | static } [ cost cost-value | route-policy route-policy-name ] *
¡ 配置RIPng引入isisv6、ospfv3協議或其他ripng進程的路由。
import-route { isisv6 | ospfv3 | ripng } [ process-id ] [ allow-direct | cost cost-value | route-policy route-policy-name ] *
缺省情況下,RIPng不引入其它路由。
(4) (可選)配置引入路由的缺省度量值。
default cost cost-value
缺省情況下,引入路由的缺省度量值為0。
用戶可通過調節RIPng定時器來調整RIPng路由協議的性能,以滿足網絡需要。
在配置RIPng定時器時需要注意,定時器值的調整應考慮網絡的性能,並在所有運行RIPng的路由器上進行統一配置,避免增加不必要的網絡流量。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 配置RIPng定時器的值。
timers { garbage-collect garbage-collect-value | suppress suppress-value | timeout timeout-value | update update-value } *
缺省情況下,Update定時器的值為30秒,Timeout定時器的值為180秒,Suppress定時器的值為120秒,Garbage-collect定時器的值為120秒。
· 如果同時配置了水平分割和毒性逆轉,則隻有毒性逆轉功能生效。
· 配置水平分割可以使得從一個接口學到的路由不能通過此接口向外發布,用於避免相鄰路由器間的路由環路。因此,建議不要關閉水平分割。
· 配置毒性逆轉可以使得從一個接口學到的路由還可以從這個接口向外發布,但此時這些路由的度量值已設置為16,即不可達。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 使能水平分割功能。
ripng split-horizon
缺省情況下,水平分割功能處於使能狀態。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 使能毒性逆轉功能。
ripng poison-reverse
缺省情況下,毒性逆轉功能處於關閉狀態。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 配置RIPng最大等價路由條數。
maximum load-balancing number
缺省情況下,RIPng支持的等價路由的最大條數與係統支持最大等價路由的條數相同。
RIPng周期性地將路由信息放在RIPng報文中向鄰居發送。
如果路由表裏的路由條目數量很多,同時發送大量RIPng協議報文有可能會對當前設備和網絡帶寬帶來衝擊;因此,路由器將RIPng協議報文分為多個批次進行發送,並且對RIPng接口每次允許發送的RIPng協議報文最大個數做出限製。
用戶可根據需要配置接口發送RIPng報文的時間間隔以及接口一次發送RIPng報文的最大個數。
(1) 進入係統視圖。
system-view
(2) 配置RIPng報文的發送速率。
¡ 請依次執行以下命令在RIP視圖下配置RIPng報文發送速率。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
output-delay time count count
缺省情況下,接口發送RIPng報文的時間間隔為20毫秒,一次最多發送3個RIPng報文。
¡ 請依次執行以下命令在接口視圖下配置RIPng報文發送速率。
interface interface-type interface-number
ripng output-delay time count count
缺省情況下,接口發送RIPng報文的速率以RIPng進程配置的為準。
RIPng路由信息變化後將以觸發更新的方式通知鄰居設備,加速鄰居設備的路由收斂。如果路由信息頻繁變化,且每次變化都立即發送觸發更新,將會占用大量係統資源,並影響路由器的效率。通過調節觸發更新的時間間隔,可以抑製由於路由信息頻繁變化帶來的影響。本命令在路由信息變化不頻繁的情況下將連續觸發更新的時間間隔縮小到minimum-interval,而在路由信息變化頻繁的情況下可以進行相應懲罰,增加incremental-interval×2n-2(n為連續觸發更新的次數),將等待時間按照配置的懲罰增量延長,最大不超過maximum-interval。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 配置RIPng觸發更新的時間間隔。
timer triggered maximum-interval [ minimum-interval [ incremental-interval ] ]
缺省情況下,發送觸發更新的最大時間間隔為5秒,最小間隔為50毫秒,增量懲罰間隔為200毫秒。
GR(Graceful Restart,平滑重啟)是一種在協議重啟或主備倒換時RIPng進行平滑重啟,保證轉發業務不中斷的機製。
GR有兩個角色:
· GR Restarter:發生協議重啟或主備倒換事件且具有GR能力的設備。
· GR Helper:和GR Restarter具有鄰居關係,協助完成GR流程的設備。
在普通的路由協議重啟的情況下,路由器需要重新學習RIPng路由,並更新FIB表,此時會引起網絡暫時的中斷,基於RIPng的GR可以解決這個問題。
應用了GR特性的設備向外發送RIPng全部路由表請求報文,重新從鄰居處學習RIPng路由,在此期間FIB表不變化。在路由協議重啟完畢後,設備將重新學到的RIPng路由下刷給FIB表,使該設備的路由信息恢複到重啟前的狀態。
本配置在GR Restarter上進行。啟動了RIPng的設備缺省就是GR Helper。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 使能RIPng協議的GR能力。
graceful-restart
缺省情況下,RIPng協議的GR能力處於關閉狀態。
(4) (可選)配置RIPng協議的GR重啟間隔時間。
graceful-restart interval interval
缺省情況下,RIPng協議的GR重啟間隔時間為60秒。
NSR(Nonstop Routing,不間斷路由)通過將RIPng路由信息從主進程備份到備進程,使設備在發生主備倒換時新主進程可以無縫完成路由的重新生成、下刷,鄰接關係不會發生中斷,從而避免了主備倒換對轉發業務的影響。
RIPng NSR與RIPng GR具有如下區別,請根據實際情況選擇合適的方式確保數據轉發不中斷:
· 對設備要求不同:RIPng協議的主進程和備進程運行在不同的IRF成員設備上,因此要運行RIPng NSR功能,必須進行IRF堆疊且IRF必須有兩個或兩個以上的成員設備。要運行RIPng GR功能,可以不進行IRF堆疊或IRF可以隻有一個成員設備。(集中式IRF設備)
· 對RIPng鄰居的要求不同:使用RIPng NSR功能時,RIPng鄰居不會感知本地設備發生了RIPng進程的異常重啟或主備倒換等故障,不需要RIPng鄰居協助恢複RIPng路由信息。RIPng GR要求RIPng鄰居具有GR Helper能力,協助GR Restarter完成GR流程。
如果在設備上同時配置了RIPng NSR和RIPng GR功能,則二者的關係如下:
· RIPng NSR功能優先級高於RIPng GR功能,即RIPng主進程中斷時通過RIPng NSR確保轉發不中斷,設備不會作為GR Restarter啟動GR流程。
· 通過GR方式重啟RIPng進程啟動GR流程後,在GR Helper協助GR Restarter恢複重啟前狀態時,如果GR Helper發生了主備進程倒換,則即便GR Helper上配置了RIPng NSR,也無法保證GR過程成功。
各個進程的NSR功能是相互獨立的,隻對本進程生效。如果存在多個RIPng進程,建議在各個進程下使能RIPng NSR功能。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 使能RIPng NSR功能。
non-stop-routing
缺省情況下,RIPng NSR功能處於開啟狀態。
RIPng協議依賴周期性發送路由更新請求作為檢測機製,當在指定時間內沒有收到路由更新回應時,認為此條路由不再生效,這種方式不能快速響應鏈路故障。使用BFD(Bidirectional Forwarding Detection,雙向轉發檢測)檢測到鏈路故障時,RIPng能快速撤銷失效路由,減少對其他業務的影響。關於BFD的介紹和基本功能配置,請參見“可靠性配置指導”中的“BFD”。
目前RIPng支持控製報文方式的BFD:當兩端互有RIPng路由發送時,且使能BFD的接口與接收接口為同一接口,鄰居之間才能建立BFD會話。
本端配置控製報文方式的BFD檢測時,需要對端也配置控製報文方式的BFD檢測。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 進入接口視圖。
interface interface-type interface-number
(4) 使能RIPng的BFD功能。
ripng bfd enable
缺省情況下,RIPng的BFD功能處於關閉狀態。
在部署了備份鏈路的RIPng網絡中,當主用鏈路發生故障時,RIPng會對路由進行重新計算,在路由收斂完成後,流量可以通過備份鏈路進行傳輸。在路由收斂期間,數據流量將會被中斷。
為了盡可能縮短網絡故障導致的流量中斷時間,網絡管理員可以根據需要配置RIPng快速重路由功能。
圖1-1 RIPng快速重路由功能示意圖
如圖1-1所示,通過在Router B上配置快速重路由功能,RIPng可以為路由指定備份下一跳,當Router B檢測到主用下一跳地址無法到達時,會直接使用備份下一跳地址來指導報文的轉發,從而大大縮短了流量路徑切換的時間。在快速切換流量傳輸路徑的同時,RIPng會根據變化後的網絡拓撲重新計算路由,在路由收斂完畢後,使用新計算出來的最優路由來指導報文轉發。
· 本功能隻適合在主鏈路三層接口up,主鏈路由雙通變為單通或者不通的情況下使用。在主鏈路三層接口down的情況下,本功能不可用。單通現象,即一條鏈路上的兩端,有且隻有一端可以收到另一端發來的報文,此鏈路稱為單向鏈路。
· RIPng快速重路由功能僅對非迭代RIPng路由(即從直連鄰居學到RIPng路由)有效。
· 等價路由不支持快速重路由功能。
(1) 進入係統視圖。
system-view
(2) 配置路由策略。
在路由策略中通過apply ipv6 fast-reroute backup-interface命令在路由策略中指定備份下一跳。詳細配置請參見“三層技術-IP路由配置指導”中的“路由策略”。
(3) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(4) 開啟RIPng快速重路由功能。
fast-reroute route-policy route-policy-name
缺省情況下,RIPng快速重路由功能處於關閉狀態。
RIPng協議的快速重路由特性中,主用鏈路缺省不使用BFD進行鏈路故障檢測。配置本功能後,RIPng將使用BFD進行檢測,可以加快協議的收斂速度。
(1) 進入係統視圖。
system-view
(2) 配置BFD echo報文源地址。
bfd echo-source-ipv6 ipv6-address
缺省情況下,未配置BFD Echo報文源地址。
echo報文的源IPv6地址用戶可以任意指定。建議配置echo報文的源IPv6地址不屬於該設備任何一個接口所在網段。
僅配置echo報文方式的BFD會話時需要執行本命令。
本命令的詳細介紹請參見“可靠性命令參考”中的“BFD”。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 使能RIPng協議中主用鏈路的BFD檢測功能。
ripng primary-path-detect bfd { ctrl | echo }
缺省情況下,RIPng協議中主用鏈路的BFD檢測功能處於關閉狀態。
RIPng報文頭部中的一些字段必須配置為0,也稱為零域。使能RIPng報文的零域檢查功能後,如果報文頭部零域中的值不為零,這些報文將被丟棄,不做處理。如果能確保所有報文都是可信任的,則不需要進行該項檢查,以節省CPU處理時間。
(1) 進入係統視圖。
system-view
(2) 進入RIPng視圖。
ripng [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 使能對RIPng報文頭部的零域檢查功能。
checkzero
缺省情況下,RIPng報文的零域檢查功能處於使能狀態。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後RIPng的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以重啟RIPng進程或清除指定RIPng進程的統計信息。
表1-1 RIPng顯示和維護
操作 |
命令 |
顯示RIPng進程的GR狀態信息 |
display ripng [ process-id ] graceful-restart |
顯示RIPng進程的NSR狀態信息 |
display ripng [ process-id ] non-stop-routing |
顯示RIPng進程的配置信息 |
display ripng [ process-id] |
顯示RIPng發布數據庫中的路由 |
display ripng process-id database [ ipv6-address prefix-length ] |
顯示指定RIPng進程的接口信息 |
display ripng process-id interface [ interface-type interface-number ] |
顯示RIPng進程的鄰居信息 |
display ripng process-id neighbor [ interface-type interface-number ] |
顯示指定RIPng進程的路由信息 |
display ripng process-id route [ ipv6-address prefix-length [ verbose ] | peer ipv6-address | statistics ] |
重啟指定RIPng進程 |
reset ripng process-id process |
清除RIPng進程的統計信息 |
reset ripng process-id statistics |
· Switch A、Switch B和Switch C相連並通過RIPng來學習網絡中的IPv6路由信息。
· 在Switch B上對接收的路由信息進行過濾,僅接收除2::/64之外的路由信息。
· 在Switch B上對發布的路由信息進行過濾,僅發布4::/64路由信息。
圖1-2 RIPng基本功能配置組網圖
(1) 配置各接口的IPv6地址(略)
(2) 配置RIPng的基本功能
# 配置Switch A。
<SwitchA> system-view
[SwitchA] ripng 1
[SwitchA-ripng-1] quit
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] ripng 1 enable
[SwitchA-Vlan-interface100] quit
[SwitchA] interface vlan-interface 400
[SwitchA-Vlan-interface400] ripng 1 enable
[SwitchA-Vlan-interface400] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] ripng 1
[SwitchB-ripng-1] quit
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] ripng 1 enable
[SwitchB-Vlan-interface200] quit
[SwitchB] interface vlan-interface 100
[SwitchB-Vlan-interface100] ripng 1 enable
[SwitchB-Vlan-interface100] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] ripng 1
[SwitchC-ripng-1] quit
[SwitchC] interface vlan-interface 200
[SwitchC-Vlan-interface200] ripng 1 enable
[SwitchC-Vlan-interface200] quit
[SwitchC] interface vlan-interface 500
[SwitchC-Vlan-interface500] ripng 1 enable
[SwitchC-Vlan-interface500] quit
[SwitchC] interface vlan-interface 600
[SwitchC-Vlan-interface600] ripng 1 enable
[SwitchC-Vlan-interface600] quit
# 查看Switch B的RIPng路由表。
[SwitchB] display ripng 1 route
Route Flags: A - Aging, S - Suppressed, G - Garbage-collect, D – Direct
O - Optimal, F - Flush to RIB
----------------------------------------------------------------
Peer FE80::20F:E2FF:FE23:82F5 on Vlan-interface100
Destination 2::/64,
via FE80::20F:E2FF:FE23:82F5, cost 1, tag 0, AOF, 6 secs
Peer FE80::20F:E2FF:FE00:100 on Vlan-interface200
Destination 4::/64,
via FE80::20F:E2FF:FE00:100, cost 1, tag 0, AOF, 11 secs
Destination 5::/64,
via FE80::20F:E2FF:FE00:100, cost 1, tag 0, AOF, 11
Local route
Destination 1::/64,
via ::, cost 0, tag 0, DOF
Destination 3::/64,
via ::, cost 0, tag 0, DOF
# 查看Switch A的RIPng路由表。
[SwitchA] display ripng 1 route
Route Flags: A - Aging, S - Suppressed, G - Garbage-collect, D – Direct
O - Optimal, F - Flush to RIB
----------------------------------------------------------------
Peer FE80::200:2FF:FE64:8904 on Vlan-interface100
Destination 3::/64,
via FE80::200:2FF:FE64:8904, cost 1, tag 0, AOF, 31 secs
Destination 4::/64,
via FE80::200:2FF:FE64:8904, cost 2, tag 0, AOF, 31 secs
Destination 5::/64,
via FE80::200:2FF:FE64:8904, cost 2, tag 0, AOF, 31 secs
Local route
Destination 2::/64,
via ::, cost 0, tag 0, DOF
Destination 1::/64,
via ::, cost 0, tag 0, DOF
(3) 配置Switch B對接收和發布的路由進行過濾
[SwitchB] ipv6 prefix-list aaa permit 4:: 64
[SwitchB] ipv6 prefix-list bbb deny 2:: 64
[SwitchB] ipv6 prefix-list bbb permit :: 0 less-equal 128
[SwitchB] ripng 1
[SwitchB-ripng-1] filter-policy prefix-list aaa export
[SwitchB-ripng-1] filter-policy prefix-list bbb import
[SwitchB-ripng-1] quit
# 查看Switch B和Switch A的RIPng路由表。
[SwitchB] display ripng 1 route
Route Flags: A - Aging, S - Suppressed, G - Garbage-collect, D – Direct
O - Optimal, F - Flush to RIB
----------------------------------------------------------------
Peer FE80::1:100 on Vlan-interface100
Peer FE80::3:200 on Vlan-interface200
Destination 4::/64,
via FE80::2:200, cost 1, tag 0, AOF, 11 secs
Destination 5::/64,
via FE80::2:200, cost 1, tag 0, AOF, 11 secs
Local route
Destination 1::/64,
via ::, cost 0, tag 0, DOF
Destination 3::/64,
via ::, cost 0, tag 0, DOF
[SwitchA] display ripng 1 route
Route Flags: A - Aging, S - Suppressed, G - Garbage-collect, D – Direct
O - Optimal, F - Flush to RIB
----------------------------------------------------------------
Peer FE80::2:100 on Vlan-interface100
Destination 4::/64,
via FE80::1:100, cost 2, tag 0, AOF, 2 secs
Local route
Destination 1::/64,
via ::, cost 0, tag 0, DOF
Destination 2::/64,
via ::, cost 0, tag 0, DOF
· Switch B上運行兩個RIPng進程:RIPng100和RIPng200。Switch B通過RIPng100和Switch A交換路由信息,通過RIPng200和Switch C交換路由信息。
· 要求在Switch B上配置路由引入,將兩個不同進程的RIPng路由相互引入到對方的RIPng進程中。
圖1-3 RIPng引入外部路由配置組網圖
(1) 配置各接口的IPv6地址(略)
(2) 配置RIPng
# 在Switch A上啟動RIPng進程100。
<SwitchA> system-view
[SwitchA] ripng 100
[SwitchA-ripng-100] quit
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] ripng 100 enable
[SwitchA-Vlan-interface100] quit
[SwitchA] interface vlan-interface 200
[SwitchA-Vlan-interface200] ripng 100 enable
[SwitchA-Vlan-interface200] quit
# 在Switch B上啟動兩個RIPng進程,進程號分別為100和200。
<SwitchB> system-view
[SwitchB] ripng 100
[SwitchB-ripng-100] quit
[SwitchB] interface vlan-interface 100
[SwitchB-Vlan-interface100] ripng 100 enable
[SwitchB-Vlan-interface100] quit
[SwitchB] ripng 200
[SwitchB-ripng-200] quit
[SwitchB] interface vlan-interface 300
[SwitchB-Vlan-interface300] ripng 200 enable
[SwitchB-Vlan-interface300] quit
# 在Switch C上啟動RIPng進程200。
<SwitchC> system-view
[SwitchC] ripng 200
[SwitchC] interface vlan-interface 300
[SwitchC-Vlan-interface300] ripng 200 enable
[SwitchC-Vlan-interface300] quit
[SwitchC] interface vlan-interface 400
[SwitchC-Vlan-interface400] ripng 200 enable
[SwitchC-Vlan-interface400] quit
# 查看Switch A的路由表信息。
[SwitchA] display ipv6 routing-table
Destinations : 7 Routes : 7
Destination: ::1/128 Protocol : Direct
NextHop : ::1 Preference: 0
Interface : InLoop0 Cost : 0
Destination: 1::/64 Protocol : Direct
NextHop : :: Preference: 0
Interface : Vlan100 Cost : 0
Destination: 1::1/128 Protocol : Direct
NextHop : ::1 Preference: 0
Interface : InLoop0 Cost : 0
Destination: 2::/64 Protocol : Direct
NextHop : :: Preference: 0
Interface : Vlan200 Cost : 0
Destination: 2::1/128 Protocol : Direct
NextHop : ::1 Preference: 0
Interface : InLoop0 Cost : 0
Destination: FE80::/10 Protocol : Direct
NextHop : :: Preference: 0
Interface : NULL0 Cost : 0
Destination: FF00::/8 Protocol : Direct
NextHop : :: Preference: 0
Interface : NULL0 Cost : 0
(3) 配置RIPng引入外部路由
# 在Switch B上將兩個不同RIPng進程的路由相互引入到對方的路由表中。
[SwitchB] ripng 100
[SwitchB-ripng-100] import-route ripng 200
[SwitchB-ripng-100] quit
[SwitchB] ripng 200
[SwitchB-ripng-200] import-route ripng 100
[SwitchB-ripng-200] quit
# 查看路由引入後Switch A的路由表信息。
[SwitchA] display ipv6 routing-table
Destinations : 8 Routes : 8
Destination: ::1/128 Protocol : Direct
NextHop : ::1 Preference: 0
Interface : InLoop0 Cost : 0
Destination: 1::/64 Protocol : Direct
NextHop : :: Preference: 0
Interface : Vlan100 Cost : 0
Destination: 1::1/128 Protocol : Direct
NextHop : ::1 Preference: 0
Interface : InLoop0 Cost : 0
Destination: 2::/64 Protocol : Direct
NextHop : :: Preference: 0
Interface : Vlan200 Cost : 0
Destination: 2::1/128 Protocol : Direct
NextHop : ::1 Preference: 0
Interface : InLoop0 Cost : 0
Destination: 4::/64 Protocol : RIPng
NextHop : FE80::200:BFF:FE01:1C02 Preference: 100
Interface : Vlan100 Cost : 1
Destination: FE80::/10 Protocol : Direct
NextHop : :: Preference: 0
Interface : NULL0 Cost : 0
Destination: FF00::/8 Protocol : Direct
NextHop : :: Preference: 0
Interface : NULL0 Cost : 0
· Switch A、Switch B和Switch C通過RIPng協議實現網絡互連。
· Switch A作為GR Restarter,Switch B和Switch C作為GR Helper並且通過GR機製與Switch A保持同步。
圖1-4 RIPng GR配置組網圖
(1) 配置各交換機接口的IPv6地址和RIPng協議
請按照上麵組網圖配置各接口的IPv6地址,具體配置過程略。
配置各交換機之間采用RIPng協議進行互連,確保Switch A、Switch B和Switch C之間能夠在網絡層互通,並且各交換機之間能夠借助RIPng協議實現動態路由更新。
(2) 配置RIPng GR
# 使能Switch A的RIPng GR功能。
<SwitchA> system-view
[SwitchA] ripng 1
[SwitchA-ripng-1] graceful-restart
# 在Switch A上觸發協議重啟或主備倒換後,查看RIPng的GR狀態。
<SwitchA> display ripng 1 graceful-restart
RIPng process: 1
Graceful Restart capability : Enabled
Current GR state : Normal
Graceful Restart period : 60 seconds
Graceful Restart remaining time: 0 seconds
Switch S、Switch A、Switch B通過RIPng協議實現網絡互連。要求對Switch S進行主備倒換時,Switch A和Switch B到Switch S的鄰居沒有中斷,Switch A到Switch B的流量沒有中斷。
圖1-5 RIPng NSR配置組網圖
(1) 配置各接口的IPv6地址和RIPng協議
請按照上麵組網圖配置各接口的IPv6地址,具體配置過程略。
配置各交換機之間采用RIPng協議進行互連,確保Switch S、Switch A和Switch D之間能夠在網絡層互通,並且各交換機之間能夠借助RIPng協議實現動態路由更新。
(2) 配置RIPng NSR
# 使能Switch S的RIPng NSR功能。
<SwitchS> system-view
[SwitchS] ripng 1
[SwitchS-ripng-1] non-stop-routing
[SwitchS-ripng-1] quit
# Switch S進行主備倒換。
[SwitchS] placement reoptimize
Predicted changes to the placement
Service Group(instance name) Cur location New location
---------------------------------------------------------------------
rib 2/0 2/0
staticroute 2/0 2/0
rib6 2/0 2/0
staticroute6 2/0 2/0
ospfv3 2/0 2/0
ospf 2/0 2/0
Continue? [y/n]:y
Re-optimization of the placement start. You will be notified on completion
Re-optimization of the placement complete. Use 'display placement' to view the new placement
# 查看Switch A上RIPng協議的鄰居和路由。
[SwitchA] display ripng 1 neighbor
Neighbor Address: FE80::AE45:5CE7:422E:2867
Interface : Vlan-interface100
Version : RIPng version 1 Last update: 00h00m23s
BFD session: None
Bad packets: 0 Bad routes : 0
[SwitchA] display ripng 1 route
Route Flags: A - Aging, S - Suppressed, G - Garbage-collect, D - Direct
O - Optimal, F - Flush to RIB
----------------------------------------------------------------
Peer FE80::AE45:5CE7:422E:2867 on Vlan-interface100
Destination 1400:1::/64,
via FE80::AE45:5CE7:422E:2867, cost 1, tag 0, AOF, 1 secs
Destination 4004::4/128,
via FE80::AE45:5CE7:422E:2867, cost 2, tag 0, AOF, 1 secs
Local route
Destination 2002::2/128,
via ::, cost 0, tag 0, DOF
Destination 1200:1::/64,
via ::, cost 0, tag 0, DOF
# 查看Switch B上RIPng協議的鄰居和路由。
[SwitchB] display ripng 1 neighbor
Neighbor Address: FE80::20C:29FF:FECE:6277
Interface : Vlan-interface200
Version : RIPng version 1 Last update: 00h00m18s
BFD session: None
Bad packets: 0 Bad routes : 0
[SwitchB] display ripng 1 route
Route Flags: A - Aging, S - Suppressed, G - Garbage-collect, D - Direct
O - Optimal, F - Flush to RIB
----------------------------------------------------------------
Peer FE80::20C:29FF:FECE:6277 on Vlan-interface200
Destination 2002::2/128,
via FE80::20C:29FF:FECE:6277, cost 2, tag 0, AOF, 24 secs
Destination 1200:1::/64,
via FE80::20C:29FF:FECE:6277, cost 1, tag 0, AOF, 24 secs
Local route
Destination 4004::4/128,
via ::, cost 0, tag 0, DOF
Destination 1400:1::/64,
via ::, cost 0, tag 0, DOF
通過上麵信息可以看出在Switch S發生主備倒換的時候,Switch A和Switch B的鄰居和路由信息保持不變,從Switch A到Switch B的流量轉發沒有受到主備倒換的影響。
Switch A、Switch B和Switch C通過RIPng協議實現網絡互連。要求當Switch A和Switch B之間的鏈路出現單通故障時,業務可以快速切換到鏈路B上。
圖1-6 RIPng快速重路由配置組網圖
設備 |
接口 |
IP地址 |
設備 |
接口 |
IP地址 |
Switch A |
Vlan-int100 |
1::1/64 |
Switch B |
Vlan-int101 |
3::1/64 |
|
Vlan-int200 |
2::1/64 |
|
Vlan-int200 |
2::2/64 |
|
Loop0 |
10::1/128 |
|
Loop0 |
20::1/128 |
Switch C |
Vlan-int100 |
1::2/64 |
|
|
|
|
Vlan-int101 |
3::2/64 |
|
|
|
(1) 配置各交換機接口的IPv6地址和RIPng協議
請按照上麵組網圖配置各接口的IP地址和子網掩碼,具體配置過程略。
配置各交換機之間采用RIPng協議進行互連,確保Switch A、Switch B和Switch C之間能夠在網絡層互通,並且各交換機之間能夠借助RIPng協議實現動態路由更新。
具體配置過程略。
(2) 配置RIPng快速重路由
# 配置Switch A。
<SwitchA> system-view
[SwitchA] ipv6 prefix-list abc index 10 permit 20::1 128
[SwitchA] route-policy frr permit node 10
[SwitchA-route-policy-frr-10] if-match ipv6 address prefix-list abc
[SwitchA-route-policy-frr-10] apply ipv6 fast-reroute backup-interface vlan-interface 100 backup-nexthop 1::2
[SwitchA-route-policy-frr-10] quit
[SwitchA] ripng 1
[SwitchA-ripng-1] fast-reroute route-policy frr
[SwitchA-ripng-1] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] ipv6 prefix-list abc index 10 permit 10::1 128
[SwitchB] route-policy frr permit node 10
[SwitchB-route-policy-frr-10] if-match ipv6 address prefix-list abc
[SwitchB-route-policy-frr-10] apply ipv6 fast-reroute backup-interface vlan-interface 101 backup-nexthop 3::2
[SwitchB-route-policy-frr-10] quit
[SwitchB] ripng 1
[SwitchB-ripng-1] fast-reroute route-policy frr
[SwitchB-ripng-1] quit
# 在Switch A上查看20::1/128的路由信息,可以看到備份下一跳信息。
[SwitchA] display ipv6 routing-table 20::1 128 verbose
Summary count : 1
Destination: 20::1/128
Protocol: RIPng
Process ID: 1
SubProtID: 0x0 Age: 00h17m42s
Cost: 1 Preference: 100
IpPre: N/A QosLocalID: N/A
Tag: 0 State: Inactive Adv
OrigTblID: 0x0 OrigVrf: default-vrf
TableID: 0xa OrigAs: 0
NibID: 0x22000003 LastAs: 0
AttrID: 0xffffffff Neighbor: FE80::34CD:9FF:FE2F:D02
Flags: 0x41 OrigNextHop: FE80::34CD:9FF:FE2F:D02
Label: NULL RealNextHop: FE80::34CD:9FF:FE2F:D02
BkLabel: NULL BkNextHop: FE80::7685:45FF:FEAD:102
SRLabel: NULL BkSRLabel: NULL
SIDIndex: NULL InLabel: NULL
Tunnel ID: Invalid Interface: Vlan-interface200
BkTunnel ID: Invalid BkInterface: Vlan-interface100
FtnIndex: 0x0 TrafficIndex: N/A
Connector: N/A PathID: 0x0
LinkCost: 0 MicroSegID: 0
RealFIRType: Normal RealThres: 0
# 在Switch B上查看10::1/128的路由信息,可以看到備份下一跳信息。
[SwitchB] display ipv6 routing-table 10::1 128 verbose
Summary count : 1
Destination: 10::1/128
Protocol: RIPng
Process ID: 1
SubProtID: 0x0 Age: 00h22m34s
Cost: 1 Preference: 100
IpPre: N/A QosLocalID: N/A
Tag: 0 State: Inactive Adv
OrigTblID: 0x0 OrigVrf: default-vrf
TableID: 0xa OrigAs: 0
NibID: 0x22000001 LastAs: 0
AttrID: 0xffffffff Neighbor: FE80::34CC:E8FF:FE5B:C02
Flags: 0x41 OrigNextHop: FE80::34CC:E8FF:FE5B:C02
Label: NULL RealNextHop: FE80::34CC:E8FF:FE5B:C02
BkLabel: NULL BkNextHop: FE80::7685:45FF:FEAD:102
SRLabel: NULL BkSRLabel: NULL
SIDIndex: NULL InLabel: NULL
Tunnel ID: Invalid Interface: Vlan-interface200
BkTunnel ID: Invalid BkInterface: Vlan-interface101
FtnIndex: 0x0 TrafficIndex: N/A
Connector: N/A PathID: 0x0
LinkCost: 0 MicroSegID: 0
RealFIRType: Normal RealThres: 0
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!