10-Track配置
本章節下載: 10-Track配置 (760.16 KB)
目 錄
1.9.1 VRRP、Track與NQA聯動配置舉例(Master監視上行鏈路)
1.9.2 VRRP、Track與Echo報文方式的BFD會話聯動配置舉例(Backup監視Master)
1.9.3 VRRP、Track與控製報文方式的BFD會話聯動配置舉例(Backup監視Master)
1.9.4 VRRP、Track與Echo報文方式的BFD會話聯動配置舉例(Master監視上行鏈路)
1.9.5 VRRP、Track與控製報文方式的BFD會話聯動配置舉例(Master監視上行鏈路)
1.9.7 靜態路由、Track與Echo報文方式的BFD會話聯動配置舉例
1.9.8 靜態路由、Track與控製報文方式的BFD會話聯動配置舉例
1.9.9 VRRP、Track與接口管理聯動配置舉例(Master監視上行接口)
1.9.10 VRRP、Track與路由管理聯動配置舉例(Master監視上行鏈路)
1.9.12 Smart Link、Track和CFD聯動配置舉例
Track用於在監測模塊、Track模塊和應用模塊之間建立關聯,來實現這些模塊之間的聯合動作。聯動功能在應用模塊和監測模塊之間增加了Track模塊,通過Track模塊屏蔽不同監測模塊的差異,將監測結果以統一的形式通知給應用模塊,從而簡化應用模塊的處理。
如圖1-1所示,聯動功能利用監測模塊對鏈路狀態、網絡性能等進行監測,並通過Track模塊將監測結果及時通知給應用模塊,以便應用模塊進行相應的處理。例如,在NQA、Track和靜態路由之間建立聯動,利用NQA監測靜態路由的下一跳地址是否可達。NQA監測到下一跳不可達時,通過Track通知靜態路由模塊該監測結果,以便靜態路由模塊將該條路由置為無效,確保報文不再通過該靜態路由轉發。
Track模塊通過Track項與監測模塊建立關聯。Track項定義了Positive、Negative和NotReady三種狀態。監測模塊負責對接口狀態、鏈路狀態等進行監測,並將監測結果通知給Track模塊;Track模塊根據監測結果改變Track項的狀態。
· 如果監測結果為監測對象工作正常(如接口處於up狀態、網絡可達),則對應Track項的狀態為Positive。
· 如果監測結果為監測對象出現異常(如接口處於down狀態、網絡不可達),則對應Track項的狀態為Negative。
· 如果監測結果無效(如NQA作為監測模塊時,與Track項關聯的NQA測試組不存在),則對應Track項的狀態為NotReady。
應用模塊通過引用Track項與Track模塊建立關聯。Track項的狀態改變後,通知應用模塊;應用模塊根據Track項的狀態,及時進行相應的處理,從而避免通信的中斷或服務質量的降低。
目前,可以與Track模塊實現聯動功能的監測模塊包括:
· NQA(Network Quality Analyzer,網絡質量分析)
· BFD(Bidirectional Forwarding Detection,雙向轉發檢測)
· CFD(Connectivity Fault Detection,連通錯誤檢測)
· 接口管理
· 路由管理
· LLDP(Link Layer Discovery Protocol,鏈路層發現協議)
另外,Track模塊支持與監測模塊列表建立關聯。監測對象列表是多個監測對象的集合,這些監測對象依據其狀態和列表的類型共同決定Track項的狀態,主要有4種類型的列表:
· 布爾與類型列表:基於列表中對象狀態的布爾與運算結果決定Track項的狀態。
· 布爾或類型列表:基於列表中對象狀態的布爾或運算結果決定Track項的狀態。
· 比例類型列表:由Track列表中Positive對象所占比例和threshold percentage命令配置的門限值的大小決定Track項的狀態。
· 權重類型列表:由Track列表中Positive對象的總權重和threshold weight命令配置的權重值的大小決定Track項的狀態。
目前,可以與Track模塊實現聯動功能的應用模塊包括:
· VRRP(Virtual Router Redundancy Protocol,虛擬路由器冗餘協議)
· 靜態路由
· 策略路由
· Smart Link
· EAA(Embedded Automation Architecture,嵌入式自動化架構 )
· ERPS(Ethernet Ring Protection Switching,以太環網保護倒換 )
在某些情況下,Track項狀態發生變化後,如果立即通知應用模塊,則可能會由於路由無法及時恢複等原因,導致通信中斷。例如,VRRP備份組中Master路由器通過Track監視上行接口的狀態。上行接口出現故障時,Track通知Master路由器降低優先級,使得Backup路由器搶占成為新的Master,負責轉發報文。當上行接口恢複時,如果Track立即通知原來的Master路由器恢複優先級,該路由器將立即承擔轉發任務。此時該路由器可能尚未恢複上行的路由,從而導致報文轉發失敗。在這種情況下,用戶可以配置Track項狀態發生變化時,延遲一定的時間通知應用模塊。
下麵以NQA、Track和靜態路由聯動為例,說明聯動功能的工作原理。
用戶在設備上配置了一條靜態路由,下一跳地址為192.168.0.88。如果192.168.0.88可達,則報文可以通過該靜態路由轉發,該靜態路由有效;如果192.168.0.88不可達,則通過該靜態路由轉發報文會導致報文轉發失敗,此時,需要將該靜態路由置為無效。通過在NQA、Track模塊和靜態路由之間建立聯動,可以實現實時監測下一跳的可達性,以便及時判斷靜態路由是否有效。
在此例中聯動功能的配置方法及其工作原理為:
(1) 創建NQA測試組,通過NQA測試組監測目的地址192.168.0.88是否可達。
(2) 創建和NQA測試組關聯的Track項。192.168.0.88可達時,NQA會將監測結果通知給Track模塊,Track模塊將該Track項的狀態變為Positive;192.168.0.88不可達時,NQA將監測結果通知給Track模塊,Track模塊將該Track項的狀態變為Negative。
(3) 配置這條靜態路由和Track項關聯。如果Track模塊通知靜態路由Track項的狀態為Positive,則靜態路由模塊將這條路由置為有效;如果Track模塊通知靜態路由Track項的狀態為Negative,則靜態路由模塊將這條路由置為無效。
為了實現聯動功能,需要在Track與監測模塊、Track與應用模塊之間分別建立聯動關係。Track配置任務如下:
(1) 配置Track與監控模塊聯動。
(2) 配置Track與監測對象列表聯動。
(3) 配置Track與應用模塊聯動。
NQA測試組周期性地探測某個目的地址是否可達、是否可以與某個目的服務器建立TCP連接等。如果在Track項和NQA測試組之間建立了關聯,則當連續探測失敗的次數達到指定的閾值時,NQA將通知Track模塊監測對象出現異常,Track模塊將與NQA測試組關聯的Track項的狀態置為Negative;否則,NQA通知Track模塊監測對象正常工作,Track模塊將Track項的狀態置為Positive。NQA的詳細介紹,請參見“網絡管理和監控配置指導”中的“NQA”。
配置Track項時,引用的NQA測試組或聯動項可以不存在,此時該Track項的狀態為NotReady。
(1) 進入係統視圖。
system-view
(2) 創建與NQA測試組中指定聯動項關聯的Track項,並進入Track視圖。
track track-entry-number nqa entry admin-name operation-tag reaction item-number
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
如果在Track項和BFD會話之間建立了關聯,則當BFD判斷出對端不可達時,BFD會通知Track模塊將與BFD會話關聯的Track項的狀態置為Negative;否則,通知Track模塊將Track項的狀態置為Positive。
BFD會話支持三種工作方式:Echo報文方式、控製報文方式和靜態BFD會話方式,三種方式的BFD會話都可以和Track建立關聯。BFD的詳細介紹,請參見“可靠性配置指導”中的“BFD”。
當Track項和Echo報文方式的BFD會話之間建立關聯時,缺省情況下,設備會檢查Echo響應報文的入接口,如果Echo響應報文的入接口和Echo報文的出接口不同,則設備會認為該Echo響應報文非法,從而丟棄該Echo響應報文,BFD會話Down。當BFD會話存在多條報文通路時,建議忽略檢查Echo響應報文的入接口,以免設備發送Echo報文的接口和接收echo響應報文的接口不一致時,影響BFD會話的狀態。
配置Track與BFD聯動時,VRRP備份組的虛擬IP地址不能作為BFD會話探測的本地地址和遠端地址。
對於Track項和控製報文方式的BFD會話聯動,需要在BFD會話兩端的節點上都配置track bfd ctrl命令創建和控製報文方式的BFD會話關聯的Track項,且接口信息、本端IP地址和對端IP地址都需要配置為會話兩端的信息,控製報文方式的BFD會話才能正常建立。
配置Track與Echo報文方式的BFD會話聯動前,需要配置BFD Echo報文的源地址,配置方法請參見“可靠性配置指導”中的“BFD”。
(1) 進入係統視圖。
system-view
(2) 創建和BFD關聯的Track項。請至少選擇其中一項進行配置。
¡ 創建和Echo報文方式的BFD會話關聯的Track項,並進入Track視圖。
track track-entry-number bfd echo interface interface-type interface-number remote { ip remote-ipv4-address | ipv6 remote-ipv6-address } local { ip local-ipv4-address | ipv6 local-ipv6-address } [ ignore-rx-interface ]
¡ 創建和控製報文方式的BFD會話關聯的Track項,並進入Track視圖。
track track-entry-number bfd ctrl [ interface interface-type interface-number | vpn-instance vpn-instance-name ] remote { ip remote-ipv4-address | ipv6 remote-ipv6-address } local { ip local-ipv4-address | ipv6 local-ipv6-address }
¡ 創建和靜態BFD會話關聯的Track項,並進入Track視圖。
track track-entry-number bfd static bfd-session-name
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
如果在Track項和CFD連續性檢測功能之間建立了關聯,則當CFD判斷出對端不可達時,CFD會通知Track模塊將與CFD連續性檢測功能關聯的Track項的狀態置為Negative;否則,通知Track模塊將Track項的狀態置為Positive。CFD的詳細介紹,請參見“可靠性配置指導”中的“CFD”。
配置Track與CFD連續性檢測功能聯動前,需要開啟CFD服務並創建MEP,配置方法請參見“可靠性配置指導”中的“CFD”。
(1) 進入係統視圖。
system-view
(2) 創建和會話關聯的Track項,並進入Track視圖。
track track-entry-number cfd cc service-instance instance-id mep mep-id
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
接口管理用來監視接口的鏈路狀態和網絡層協議狀態。如果在Track項和接口之間建立了關聯,則當接口的鏈路狀態或網絡層協議狀態為up時,接口管理通知Track模塊將與接口關聯的Track項的狀態置為Positive;接口的鏈路狀態或網絡層協議狀態為down時,接口管理通知Track模塊將Track項的狀態為Negative。
(1) 進入係統視圖。
system-view
(2) 創建和接口管理關聯的Track項。請至少選擇其中一項進行配置。
¡ 監視接口的鏈路狀態,並進入Track視圖。
track track-entry-number interface interface-type interface-number
¡ 監視接口的物理狀態,並進入Track視圖。
track track-entry-number interface interface-type interface-number physical
¡ 監視接口的網絡層協議狀態,並進入Track視圖。
track track-entry-number interface interface-type interface-number protocol { ipv4 | ipv6 }
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
如果在Track項和路由管理之間建立了關聯:
· 當對應的路由條目在路由表中存在時,路由管理通知Track模塊將與之關聯的Track項狀態設置為Positive;當對應的路由條目在路由表中被刪除時,路由管理將通知Track模塊將與之關聯的Track項狀態設置為Negative。
· 當對應的路由條目在路由表中存在的等價路由條目數滿足監測條件時,路由管理通知Track模塊將與之關聯的Track項狀態設置為Positive;當對應的路由條目在路由表中存在的等價路由條目數不滿足監測條件時,路由管理將通知Track模塊將與之關聯的Track項狀態設置為Negative。
(1) 進入係統視圖。
system-view
(2) 創建與路由管理關聯的Track項,並進入Track視圖。
track track-entry-number ip route [ vpn-instance vpn-instance-name ] ipv4-address { mask-length | mask } reachability }
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
配置Track與LLDP聯動後,LLDP檢測鄰居是否存在,將檢測結果通知給Track模塊;Track模塊根據檢測結果,對Track項的狀態進行修改,以便通知應用模塊進行相應處理:
· 當LLDP鄰居存在時,Track項的狀態為Positive。
· 當LLDP鄰居不存在時,Track項的狀態為Negative。
LLDP的詳細介紹,請參見“二層技術-以太網交換配置指導”中的“LLDP”。
(1) 進入係統視圖。
system-view
(2) 創建與接口的LLDP鄰居狀態關聯的Track項,並進入Track視圖。
track track-entry-number lldp neighbor interface interface-type interface-number
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
對於布爾與類型的列表,如果列表中的所有監測對象的狀態都是Positive,那麼此Track項的狀態為Positive;如果有一個或多個監測對象的狀態為Negative,那麼此Track項的狀態為Negative。對於布爾或類型的列表,如果列表中至少有一個監測對象的狀態是Positive,那麼此Track項的狀態為Positive,如果所有的監測對象的狀態都是Negative,那麼此Track項的狀態為Negative。
(1) 進入係統視圖。
system-view
(2) 創建和布爾類型列表關聯的Track項,並進入Track視圖。
track track-entry-number list boolean { and | or }
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
(4) 向列表中添加與單個監測對象聯動的Track項。
object track-entry-number [ not ]
缺省情況下,列表中不存在與單個監測對象聯動的Track項。
Track項的狀態由Track列表中Positive對象所占比例和threshold percentage命令配置的門限值的大小決定。
· 當列表中Positive對象所占百分比大於或等於Positive門限值時,Track項狀態變為Positive。
· 當列表中Positive對象所占百分比小於或等於Negative門限值時,Track項狀態變為Negative。
· 當列表中Positive對象所占百分比小於Positive門限值且大於Negative門限值時,Track項狀態保持不變。
(1) 進入係統視圖。
system-view
(2) 創建和比例類型列表關聯的Track項,並進入Track視圖。
track track-entry-number list threshold percentage
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
(4) 向列表中添加與單個監測對象聯動的Track項。
object track-entry-number
缺省情況下,列表中不存在與單個監測對象聯動的Track項。
(5) 配置狀態變化的門限值。
threshold percentage { negative negative-threshold | positive positive-threshold } *
缺省情況下,Negative門限值為0%,Positive門限值為1%。
Track項的狀態由Track列表中Positive對象的總權重(Track列表所有處於Positive狀態的Track項的權重之和)和threshold weight命令配置的權重值的大小決定。每個加入列表的Track對象都擁有一個權重值:
· 當Track列表中Positive對象的總權重大於或等於Positive門限值時,Track項狀態變為Positive。
· 當Track列表中Positive對象的總權重小於或等於Negative門限值時,Track項狀態變為Negative。
· 當Track列表中Positive對象的總權重小於Positive門限值且大於Negative門限值時,Track項狀態保持不變。
(1) 進入係統視圖。
system-view
(2) 創建和權重類型列表關聯的Track項,並進入Track視圖。
track track-entry-number list threshold weight
(3) 指定Track項狀態變化時通知應用模塊的延遲時間。
delay { negative negative-time | positive positive-time } *
缺省情況下,Track項狀態變化時立即通知應用模塊。
(4) 向列表中添加與單個監測對象聯動的Track項。
object track-entry-number [ weight weight ]
缺省情況下,列表中不存在與單個監測對象聯動的Track項。
(5) 配置狀態變化的權重值。
threshold weight { negative negative-threshold | positive positive-threshold } *
(6) 缺省情況下,Negative權重值為0,Positive權重值為1。
用戶配置Track和應用模塊聯動前,需保證聯動的Track項已被創建,否則應用模塊可能會獲取到錯誤的Track項狀態信息。
關於Track與應用模塊聯動命令的詳細介紹,請參見應用模塊的命令手冊。
VRRP工作在標準協議模式和負載均衡模式時,通過在Track模塊和VRRP備份組之間建立聯動,可以實現:
· 根據上行鏈路的狀態,改變路由器的優先級。當路由器的上行鏈路出現故障時,備份組無法感知上行鏈路的故障,如果該路由器為Master,將會導致局域網內的主機無法訪問外部網絡。通過聯動功能,可以解決該問題。利用監測模塊監視路由器上行鏈路的狀態,並在監測模塊、Track模塊和VRRP備份組之間建立聯動,當上行鏈路出現故障時,通知將Track項狀態變為Negative,並將路由器的優先級降低指定的數額。從而,使得備份組內其它路由器的優先級高於這個路由器的優先級,成為Master路由器,保證局域網內主機與外部網絡的通信不會中斷。
· 在Backup路由器上監視Master路由器的狀態。當Master路由器出現故障時,工作在切換模式的Backup路由器能夠迅速成為Master路由器,以保證通信不會中斷。
VRRP工作在負載均衡模式時,通過在Track模塊和VRRP虛擬轉發器之間建立聯動,還可以實現:
· 根據上行鏈路的狀態,改變虛擬轉發器的優先級。當AVF(Active Virtual Forwarder,動態虛擬轉發器)的上行鏈路出現故障時,Track項的狀態變為Negative,虛擬轉發器的權重將降低指定的數額,以便虛擬轉發器優先級更高的路由器搶占成為AVF,接替其轉發流量。
· 在LVF(Listening Virtual Forwarder,監聽虛擬轉發器)上通過Track監視AVF的狀態,當AVF出現故障時,工作在虛擬轉發器快速切換模式的LVF能夠迅速成為AVF,以保證通信不會中斷。
VRRP配置的詳細介紹,請參見“可靠性配置指導”中的“VRRP”。
接口IP地址與虛擬IP地址相同的路由器稱為IP地址擁有者。路由器在某個備份組中作為IP地址擁有者時,如果在該路由器上配置該備份組監視指定的接口或Track項,則該配置不會生效。該路由器不再作為IP地址擁有者後,之前的配置才會生效。
被監視Track項的狀態由Negative變為Positive或NotReady後,對應的路由器優先級或虛擬轉發器優先級會自動恢複。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置VRRP備份組監視指定的Track項。
vrrp [ ipv6 ] vrid virtual-router-id track track-entry-number { forwarder-switchover member-ip ip-address | priority reduced [ priority-reduced ] switchover | weight reduced [ weight-reduced ] }
缺省情況下,未指定VRRP備份組監視的Track項。
VRRP工作在標準協議模式和負載均衡模式時,均支持本配置。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置虛擬轉發器監視指定的Track項。
vrrp [ ipv6 ] vrid virtual-router-id track track-entry-number { forwarder-switchover member-ip ip-address | priority reduced [ priority-reduced ] switchover | weight reduced [ weight-reduced ] }
缺省情況下,未配置虛擬轉發器的監視功能。
在VRRP標準協議模式和負載均衡模式下均可進行本配置,但隻有在VRRP負載模式下本配置才會起作用。
靜態路由是一種特殊的路由,由管理員手工配置。配置靜態路由後,去往指定目的地的報文將按照管理員指定的路徑進行轉發。靜態路由配置的詳細介紹,請參見“三層技術-IP路由配置指導”中的“靜態路由”和“IPv6靜態路由”。
靜態路由的缺點在於:不能自動適應網絡拓撲結構的變化,當網絡發生故障或者拓撲發生變化時,可能會導致靜態路由不可達,網絡通信中斷。
為了防止這種情況發生,可以配置其它路由和靜態路由形成備份關係。靜態路由可達時,根據靜態路由轉發報文,其它路由處於備份狀態;靜態路由不可達時,根據備份路由轉發報文,從而避免通信中斷,提高了網絡可靠性。
通過在Track模塊和靜態路由之間建立聯動,可以實現靜態路由可達性的實時判斷。
如果在配置靜態路由時隻指定了下一跳而未指定出接口,可以通過聯動功能,利用監測模塊監視靜態路由下一跳的可達性,並根據Track項的狀態來判斷靜態路由的可達性:
· 當Track項狀態為Positive時,靜態路由的下一跳可達,配置的靜態路由將生效;
· 當Track項狀態為Negative時,靜態路由的下一跳不可達,配置的靜態路由無效;
· 當Track項狀態為NotReady時,無法判斷靜態路由的下一跳是否可達,此時配置的靜態路由生效。
如果Track模塊通過NQA探測私網靜態路由中下一跳的可達性,靜態路由下一跳的VPN實例名與NQA測試組配置的實例名必須相同,才能進行正常的探測。
在靜態路由進行迭代時,Track項監測的應該是靜態路由迭代後最終的下一跳地址,而不是配置中指定的下一跳地址。否則,可能導致錯誤地將有效路由判斷為無效路由。
(1) 進入係統視圖。
system-view
(2) 配置通過Track與IPv4靜態路由聯動,檢測靜態路由下一跳是否可達。
(公網)
ip route-static { dest-address { mask-length | mask } | group group-name } { interface-type interface-number [ next-hop-address ] track track-entry-number | next-hop-address [ recursive-lookup host-route ] track track-entry-number | vpn-instance d-vpn-instance-name next-hop-address [ recursive-lookup host-route ] track track-entry-number } [ preference preference ] [ tag tag-value ] [ description text ]
(VPN網絡)
ip route-static vpn-instance s-vpn-instance-name { dest-address { mask-length | mask } | group group-name } { interface-type interface-number [ next-hop-address ] track track-entry-number | next-hop-address [ recursive-lookup host-route ] [ public ] track track-entry-number | vpn-instance d-vpn-instance-name next-hop-address [ recursive-lookup host-route ] track track-entry-number } [ preference preference ] [ tag tag-value ] [ description text ]
缺省情況下,未配置Track與IPv4靜態路由聯動。
(1) 進入係統視圖。
system-view
(2) 配置通過Track與IPv6靜態路由聯動,檢測靜態路由下一跳是否可達。
(公網)
ipv6 route-static ipv6-address prefix-length { interface-type interface-number [ next-hop-address ] track track-entry-number | [ vpn-instance d-vpn-instance-name ] next-hop-address [ recursive-lookup host-route ] track track-entry-number } [ preference preference ] [ tag tag-value ] [ description text ]
(VPN網絡)
ipv6 route-static vpn-instance s-vpn-instance-name ipv6-address prefix-length { interface-type interface-number [ next-hop-address ] track track-entry-number | next-hop-address [ public ] track track-entry-number | vpn-instance d-vpn-instance-name next-hop-address [ recursive-lookup host-route ] track track-entry-number } [ preference preference ] [ tag tag-value ] [ description text ]
缺省情況下,未配置Track與IPv6靜態路由聯動。
策略路由是一種依據用戶指定的策略靈活選路的機製,滿足策略的報文將執行指定的操作,以指導報文轉發。策略路由配置的詳細介紹,請參見“三層技術-IP路由配置指導”中的“策略路由”。
策略路由無法判斷對報文執行的操作的可用性。當執行的操作不可用時,策略路由仍然對報文執行該操作,可能會導致報文轉發失敗。例如,策略路由中配置滿足一定條件的報文,需要通過指定的出接口轉發。當該出接口所在的鏈路出現故障時,策略路由無法感知鏈路故障,仍然通過該接口轉發報文,導致報文轉發失敗。
通過聯動功能,可以解決上述問題,增強了策略路由應用的靈活性,以及策略路由對網絡環境的動態感知能力。配置策略路由執行的操作與Track項關聯,利用監測模塊監視鏈路的狀態,通過Track項的狀態來動態地決定策略路由操作的可用性:
· Track項狀態為Positive時,表示鏈路正常工作,與該Track項關聯的策略路由操作生效,可以指導轉發;
· Track項狀態為Negative時,表示鏈路出現故障,與該Track項關聯的策略路由操作無效,轉發時忽略該配置項;
· Track項狀態為NotReady時,與該Track項關聯的策略路由操作生效,可以指導轉發。
目前,支持與Track項關聯的策略路由操作包括:
· 設置報文的出接口
· 設置報文的下一跳
· 設置報文的缺省出接口
· 設置報文的缺省下一跳
配置Track與策略路由聯動前,需要先創建策略或一個策略節點,並配置匹配規則。
(1) 進入係統視圖。
system-view
(2) 創建策略或一個策略節點,並進入該策略視圖。
policy-based-route policy-name [ deny | permit ] node node-number
(3) 設置匹配規則。
¡ 設置ACL匹配規則。
if-match acl { acl-number | name acl-name }
缺省情況下,未設置ACL匹配規則。
策略路由不支持匹配二層信息的ACL匹配規則。
設置ACL匹配規則時,對於ACL規則的permit/deny動作以及time-range指定的規則生效時間段等的處理機製不會生效。
¡ 設置IP報文長度匹配規則。
if-match packet-length min-len max-len
缺省情況下,未設置IP報文長度匹配規則。
¡ 設置IP報文QoS本地ID值匹配規則。
if-match qos-local-id local-id-value [ qppb-manipulation ]
缺省情況下,未設置IP報文QoS本地ID值匹配規則。
¡ 設置應用組匹配規則。
if-match app-group app-group-name&<1-n>
缺省情況下,未設置應用組匹配規則。
應用組匹配規則隻對轉發策略路由生效,對本地策略路由不生效。
¡ 設置服務對象組匹配規則。
if-match object-group service object-group-name&<1-n>
缺省情況下,未設置服務對象組匹配規則。
¡ 設置VXLAN匹配規則。
if-match vxlan-id vxlan-id
缺省情況下,未設置VXLAN匹配規則。
¡ 設置服務鏈匹配規則。
if-match service-chain { path-id service-path-id [ path-index service-patch-index ] }&<1-n>
缺省情況下,未設置服務鏈匹配規則。
(4) 配置指導報文轉發類動作。請至少選擇其中一項進行配置。
¡ 設置指導報文轉發的出接口,並與Track項關聯。
apply output-interface { interface-type interface-number [ track track-entry-number ] }&<1-n>
缺省情況下,未設置指導報文轉發的出接口。
¡ 設置報文的下一跳,並與Track項關聯。
apply next-hop [ vpn-instance vpn-instance-name | inbound-vpn ] { ip-address [ direct ] [ track track-entry-number ] [ weight weight-value ] }&<1-n>
缺省情況下,未設置報文轉發的下一跳。
¡ 設置報文缺省出接口,並與Track項關聯。
apply default-output-interface { interface-type interface-number [ track track-entry-number ] }&<1-n>。
缺省情況下,未設置報文的缺省出接口。
¡ 設置報文缺省下一跳,並與Track項關聯。
apply default-next-hop [ vpn-instance vpn-instance-name | inbound-vpn ] { ip-address [ direct ] [ track track-entry-number ] }&<1-n>
缺省情況下,未設置指導報文轉發的缺省下一跳。
(1) 進入係統視圖。
system-view
(2) 創建策略或一個策略節點,並進入該策略視圖。
ipv6 policy-based-route policy-name [ deny | permit ] node node-number
(3) 設置匹配規則。
¡ 設置ACL匹配規則。
if-match acl { ipv6-acl-number | name ipv6-acl-name }
缺省情況下,未設置ACL匹配規則。
IPv6策略路由不支持匹配二層信息的ACL匹配規則。
設置ACL匹配規則時,對於ACL規則的permit/deny動作以及time-range指定的規則生效時間段等的處理機製不會生效。
¡ 設置IPv6報文長度匹配規則。
if-match packet-length min-len max-len
缺省情況下,未設置IPv6報文長度匹配規則。
¡ 設置IP報文QoS本地ID值匹配規則。
if-match qos-local-id local-id-value [ qppb-manipulation ]
缺省情況下,未設置IP報文QoS本地ID值匹配規則。
(4) 配置指導報文轉發類動作。請至少選擇其中一項進行配置。
¡ 設置報文的出接口,並與Track項關聯。
apply output-interface { interface-type interface-number [ track track-entry-number ] }&<1-n>
缺省情況下,未設置指導報文轉發的出接口。
¡ 設置報文的下一跳,並與Track項關聯。
apply next-hop [ vpn-instance vpn-instance-name | inbound-vpn ] { ipv6-address [ direct ] [ track track-entry-number ] [ weight weight-value ] } &<1-n>
缺省情況下,未設置報文轉發的下一跳。
¡ 設置報文缺省出接口,並與Track項關聯。
apply default-output-interface { interface-type interface-number [ track track-entry-number ] }&<1-n>
缺省情況下,未設置報文的缺省出接口。
¡ 設置報文缺省下一跳,並與Track項關聯。
apply default-next-hop [ vpn-instance vpn-instance-name | inbound-vpn ] { ipv6-address [ direct ] [ track track-entry-number ] }&<1-n>
缺省情況下,未設置指導報文轉發的缺省下一跳。
上行鏈路上的中間傳輸設備或傳輸鏈路發生故障(如光纖鏈路發生單通、錯纖、丟包等故障)以及故障排除時,Smart Link本身無法感知到這個變化。Smart Link組的成員端口需要通過Track項與專門的鏈路檢測協議聯動來檢測端口的鏈路狀態,當鏈路檢測協議檢測到故障發生或故障恢複時就通知Smart Link進行鏈路切換。
用戶可以配置Smart Link組的成員端口與Track項關聯,使該端口通過Track項與CFD的連續性檢測功能進行聯動來監測該端口的上行鏈路狀態。
Track模塊根據監測模塊的監測結果改變Track項的狀態,並將Track項狀態通知給Smart Link組;Smart Link組根據Track項狀態進行相應處理:
· 如果Track項的狀態為Positive,說明該端口的上行鏈路正常,Smart Link組不進行鏈路切換;
· 如果Track項的狀態為Negative,說明該端口的上行鏈路出現故障,Smart Link組根據搶占模式和該端口的成員角色判斷是否需要進行鏈路切換;
· 如果Track項的狀態為NotReady,說明Track關聯監測模塊的配置尚未生效,該端口維持原有轉發狀態不變。
關於Smart Link的詳細介紹,請參見“可靠性配置指導”中的“Smart Link”。
Smart Link組的成員端口聯動的Track項,必須是和CFD連續性檢測功能關聯的Track項。
(1) 進入係統視圖。
system-view
(2) 進入二層以太網或二層聚合接口視圖。
interface interface-type interface-number
(3) 配置Smart Link組的成員端口與Track項聯動。
port smart-link group group-id track track-entry-number
缺省情況下,Smart Link組的成員端口未與Track項聯動。
配置Track與EAA聯動後,當關聯的Track項狀態由Positive變為Negative或者Negative變為Positive時,觸發監控策略執行;如果關聯多個Track項,則最後一個處於Positive(Negative)狀態的Track項變為Negative(Positive)時,觸發監控策略執行。
如果配置了抑製時間,觸發策略的同時開始計時,定時器超時前,收到狀態從Positive(Negative)變為Negative(Positive)的消息,直接丟棄,不會處理。直到定時器超後,收到狀態從Positive(Negative)變為Negative(Positive)的消息才處理,再一次觸發策略執行。
EAA的詳細介紹,請參見“網絡管理和監控”中的“EAA”。
(1) 進入係統視圖。
system-view
(2) 創建CLI監控策略並進入CLI監控策略視圖。
rtm cli-policy policy-name
(3) 配置Track監控事件。
event track track-entry-number-list state { negative | positive } [ suppress-time suppress-time ]
缺省情況下,未配置Track監控事件。
當鏈路上的中間傳輸設備或傳輸鏈路發生故障(如光纖鏈路發生單通、錯纖、丟包等故障)以及故障排除時,ERPS本身無法感知到這個變化。ERPS環的成員端口需要通過專門的鏈路檢測協議來檢測端口的鏈路狀態,當鏈路檢測協議檢測到故障發生或故障恢複時就通知ERPS進行鏈路倒換。
ERPS環實例的成員端口通過Track項與鏈路檢測協議進行聯動,目前僅支持與CFD(Connectivity Fault Detection,連通錯誤檢測)的連續性檢測功能聯動。當端口與CFD連續性檢測功能聯動時,CFD按照檢測VLAN和檢測端口來通知故障檢測事件,隻有當端口所在ERPS環實例的控製VLAN與CFD監控的VLAN一致時,才響應此事件。
Track模塊根據監測模塊的監測結果改變Track項的狀態,並將Track項狀態通知給ERPS環;ERPS環根據Track項狀態進行相應處理:
· 如果Track項的狀態為Positive,說明該端口的上行鏈路正常,ERPS環不進行鏈路切換;
· 如果Track項的狀態為Negative,說明該端口的上行鏈路出現故障,ERPS環進行鏈路切換;
· 如果Track項的狀態為NotReady,說明Track關聯監測模塊的配置尚未生效,該端口維持原有轉發狀態不變。
關於ERPS的詳細介紹,請參見“可靠性配置指導”中的“ERPS”。
在配置端口與Track項聯動之前,必須保證該端口已加入相應的ERPS環實例。
(1) 進入係統視圖。
system-view
(2) 進入二層以太網或二層聚合接口視圖。
interface interface-type interface-number
(3) 配置成員端口的Track聯動。
port erps ring ring-id instance instance-id track track-entry-index
缺省情況下,未配置ERPS成員端口與Track機製聯動。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後Track的運行情況,通過查看顯示信息驗證配置的效果。
表1-1 Track顯示和維護
操作 |
命令 |
顯示Track項的信息 |
display track { track-entry-number | all [ negative | positive ] } [ brief ] |
· Host A需要訪問Internet上的Host B,Host A的缺省網關為10.1.1.10/24;
· Switch A和Switch B屬於虛擬IP地址為10.1.1.10的備份組1;
· 當Switch A正常工作時,Host A發送給Host B的報文通過Switch A轉發;當通過NQA監測到Switch A上行鏈路不通時,Host A發送給Host B的報文通過Switch B轉發。
圖1-2 VRRP、Track與NQA聯動配置組網圖
(1) 按照圖1-2創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
(2) 在Switch A上配置NQA測試組
<SwitchA> system-view
# 創建管理員名為admin、操作標簽為test的NQA測試組。
[SwitchA] nqa entry admin test
# 配置測試類型為ICMP-echo。
[SwitchA-nqa-admin-test] type icmp-echo
# 配置目的地址為10.1.2.2。
[SwitchA-nqa-admin-test-icmp-echo] destination ip 10.1.2.2
# 測試頻率為100ms。
[SwitchA-nqa-admin-test-icmp-echo] frequency 100
# 配置聯動項1(連續失敗5次觸發聯動)。
[SwitchA-nqa-admin-test-icmp-echo] reaction 1 checked-element probe-fail threshold-type consecutive 5 action-type trigger-only
[SwitchA-nqa-admin-test-icmp-echo] quit
# 啟動探測。
[SwitchA] nqa schedule admin test start-time now lifetime forever
(3) 在Switch A上配置Track項
# 配置Track項1,並進入Track視圖,關聯NQA測試組(管理員為admin,操作標簽為test)的聯動項1。
[SwitchA] track 1 nqa entry admin test reaction 1
[SwitchA-track-1] quit
(4) 在Switch A上配置VRRP
# 在VLAN接口2下,配置VRRP適用版本為VRRPv2。
[SwitchA] interface vlan-interface 2
[SwitchA-Vlan-interface2] vrrp version 2
# 創建備份組1,並配置備份組1的虛擬IP地址為10.1.1.10。
[SwitchA-Vlan-interface2] vrrp vrid 1 virtual-ip 10.1.1.10
# 設置Switch A在備份組1中的優先級為110。
[SwitchA-Vlan-interface2] vrrp vrid 1 priority 110
# 設置備份組的認證方式為simple,認證字為hello。
[SwitchA-Vlan-interface2] vrrp vrid 1 authentication-mode simple plain hello
# 設置Master發送VRRP報文的間隔時間為500厘秒。
[SwitchA-Vlan-interface2] vrrp vrid 1 timer advertise 500
# 設置Switch A工作在搶占方式,搶占延遲時間為5000厘秒。
[SwitchA-Vlan-interface2] vrrp vrid 1 preempt-mode delay 5000
# 設置監視Track項。
[SwitchA-Vlan-interface2] vrrp vrid 1 track 1 priority reduced 30
(5) 在Switch B上配置VRRP
# 在VLAN接口2下,配置VRRP適用版本為VRRPv2。
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] vrrp version 2
# 創建備份組1,並配置備份組1的虛擬IP地址為10.1.1.10。
[SwitchB-Vlan-interface2] vrrp vrid 1 virtual-ip 10.1.1.10
# 設置備份組的認證方式為simple,認證字為hello。
[SwitchB-Vlan-interface2] vrrp vrid 1 authentication-mode simple plain hello
# 設置Master發送VRRP報文的間隔時間為500厘秒。
[SwitchB-Vlan-interface2] vrrp vrid 1 timer advertise 500
# 設置Switch B工作在搶占方式,搶占延遲時間為5000厘秒。
[SwitchB-Vlan-interface2] vrrp vrid 1 preempt-mode delay 5000
配置完成後,在Host A上可以ping通Host B。通過display vrrp命令查看配置後的結果。
# 顯示Switch A上備份組1的詳細信息。
[SwitchA-Vlan-interface2] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 500
Admin Status : Up State : Master
Config Pri : 110 Running Pri : 110
Preempt Mode : Yes Delay Time : 5000
Auth Type : Simple Key : ******
Version : 2
Virtual IP : 10.1.1.10
Virtual MAC : 0000-5e00-0101
Master IP : 10.1.1.1
VRRP Track Information:
Track Object : 1 State : Positive Pri Reduced : 30
# 顯示Switch B上備份組1的詳細信息。
[SwitchB-Vlan-interface2] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 500
Admin Status : Up State : Backup
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 5000
Become Master : 2200ms left
Auth Type : Simple Key : ******
Version : 2
Virtual IP : 10.1.1.10
Master IP : 10.1.1.1
以上顯示信息表示在備份組1中Switch A為Master,Switch B為Backup,Host A發送給Host B的報文通過Switch A轉發。
Switch A與Switch C不通時,在Host A上仍然可以ping通Host B。通過display vrrp命令查看備份組的信息。
# Switch A與Switch C不通時,顯示Switch A上備份組1的詳細信息。
[SwitchA-Vlan-interface2] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 500
Admin Status : Up State : Backup
Config Pri : 110 Running Pri : 80
Preempt Mode : Yes Delay Time : 5000
Become Master : 2200ms left
Auth Type : Simple Key : ******
Version : 2
Virtual IP : 10.1.1.10
Master IP : 10.1.1.2
VRRP Track Information:
Track Object : 1 State : Negative Pri Reduced : 30
# Switch A與Switch C不通時,顯示Switch B上備份組1的詳細信息。
[SwitchB-Vlan-interface2] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 500
Admin Status : Up State : Master
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 5000
Auth Type : Simple Key : ******
Version : 2
Virtual IP : 10.1.1.10
Virtual MAC : 0000-5e00-0101
Master IP : 10.1.1.2
以上顯示信息表示Switch A與Switch C不通時,Switch A的優先級降低為80,成為Backup,Switch B成為Master,Host A發送給Host B的報文通過Switch B轉發。
· Switch A和Switch B屬於虛擬IP地址為192.168.0.10的備份組1;
· 局域網內的主機上設置缺省網關為192.168.0.10,當Switch A正常工作時,局域網內的主機通過Switch A訪問外部網絡;Switch A出現故障時,Switch B接替其工作,局域網內的主機通過Switch B訪問外部網絡;
· Master出現故障時,Backup若隻依賴於VRRP通告報文的超時時間來判斷是否應該搶占,切換時間一般在3秒~4秒之間,無法達到秒級以下的切換速度;如果Backup通過Echo報文方式的BFD會話檢測Master的運行狀態,則能夠在毫秒級的時間內發現Master的故障,立即搶占成為Master,加快切換速度。
圖1-3 VRRP、Track與Echo報文方式的BFD會話聯動(Backup監視Master)配置組網圖
(1) 按照圖1-3創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
(2) 在Switch A上配置VRRP
<SwitchA> system-view
[SwitchA] interface vlan-interface 2
# 創建備份組1,並配置備份組1的虛擬IP地址為192.168.0.10,Switch A在備份組1中的優先級為110。
[SwitchA-Vlan-interface2] vrrp vrid 1 virtual-ip 192.168.0.10
[SwitchA-Vlan-interface2] vrrp vrid 1 priority 110
[SwitchA-Vlan-interface2] return
(3) 在Switch B上配置BFD Echo功能
# 配置BFD echo報文的源地址為10.10.10.10。
<SwitchB> system-view
[SwitchB] bfd echo-source-ip 10.10.10.10
(4) 在Switch B上創建和BFD會話關聯的Track項
# 創建和Echo報文方式的BFD會話關聯的Track項1,並進入Track視圖,檢測Switch A是否可達。
[SwitchB] track 1 bfd echo interface vlan-interface 2 remote ip 192.168.0.101 local ip 192.168.0.102
[SwitchB-track-1] quit
(5) 在Switch B上配置VRRP
# 創建備份組1,並配置備份組1的虛擬IP地址為192.168.0.10,備份組1監視Track項1的狀態,當Track項狀態為Negative時,Switch B快速從Backup切換為Master狀態。
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] vrrp vrid 1 virtual-ip 192.168.0.10
[SwitchB-Vlan-interface2] vrrp vrid 1 track 1 switchover
[SwitchB-Vlan-interface2] return
# 顯示Switch A上備份組的詳細信息。
<SwitchA> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 110 Running Pri : 110
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Virtual MAC : 0000-5e00-0101
Master IP : 192.168.0.101
# 顯示Switch B上備份組的詳細信息。
<SwitchB> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Master IP : 192.168.0.101
VRRP Track Information:
Track Object : 1 State : Positive Switchover
# 顯示Switch B上Track項的信息。
<SwitchB> display track 1
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD echo
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Echo
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 192.168.0.101
Local IP: 192.168.0.102
以上顯示信息表示Track項狀態為Positive時,Switch A為Master路由器,Switch B為Backup路由器。
# 打開Switch B的VRRP狀態調試信息開關和Echo報文方式的BFD會話事件通知調試信息開關。
<SwitchB> terminal debugging
<SwitchB> terminal monitor
<SwitchB> debugging vrrp fsm
<SwitchB> debugging bfd ntfy
# Switch A出現故障時,Switch B上輸出如下調試信息。
*Dec 17 14:44:34:142 2019 SwitchB BFD/7/DEBUG: Notify application:TRACK State:DOWN
*Dec 17 14:44:34:144 2019 SwitchB VRRP4/7/FSM:
IPv4 Vlan-interface2 | Virtual Router 1 : Backup --> Master reason: The status of the tracked object changed
# 顯示Switch B上備份組的詳細信息。
<SwitchB> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Virtual MAC : 0000-5e00-0101
Master IP : 192.168.0.102
VRRP Track Information:
Track Object : 1 State : Negative Switchover
以上調試信息表示,Echo報文方式的BFD會話探測到Switch A出現故障後,立即由Track通知VRRP模塊將Switch B的狀態切換為Master,不再等待VRRP通告報文的超時時間,從而保證Backup路由器能夠快速切換為Master。
· Switch A和Switch B屬於虛擬IP地址為192.168.0.10的備份組1;
· 局域網內的主機上設置缺省網關為192.168.0.10,當Switch A正常工作時,局域網內的主機通過Switch A訪問外部網絡;Switch A出現故障時,Switch B接替其工作,局域網內的主機通過Switch B訪問外部網絡;
· Master出現故障時,Backup若隻依賴於VRRP通告報文的超時時間來判斷是否應該搶占,切換時間一般在3秒~4秒之間,無法達到秒級以下的切換速度;如果Backup通過控製報文方式的BFD會話檢測Master的運行狀態,則能夠在毫秒級的時間內發現Master的故障,立即搶占成為Master,加快切換速度。
圖1-4 VRRP、Track與控製報文方式的BFD會話聯動(Backup監視Master)配置組網圖
(1) 按照圖1-4創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
(2) 在Switch A上配置VRRP
<SwitchA> system-view
[SwitchA] interface vlan-interface 2
# 創建備份組1,並配置備份組1的虛擬IP地址為192.168.0.10,Switch A在備份組1中的優先級為110。
[SwitchA-Vlan-interface2] vrrp vrid 1 virtual-ip 192.168.0.10
[SwitchA-Vlan-interface2] vrrp vrid 1 priority 110
[SwitchA-Vlan-interface2] return
(3) 在Switch A上創建和控製報文方式的BFD會話關聯的Track項
# 創建和控製報文方式的BFD會話關聯的Track項1,並進入Track視圖,檢測Switch B是否可達。
[SwitchA] track 1 bfd ctrl interface vlan-interface 2 remote ip 192.168.0.102 local ip 192.168.0.101
[SwitchA-track-1] quit
(4) 在Switch B上配置VRRP
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
# 創建備份組1,並配置備份組1的虛擬IP地址為192.168.0.10,備份組1監視Track項1的狀態,當Track項狀態為Negative時,Switch B快速從Backup切換為Master狀態。
[SwitchB-Vlan-interface2] vrrp vrid 1 virtual-ip 192.168.0.10
[SwitchB-Vlan-interface2] vrrp vrid 1 track 1 switchover
[SwitchB-Vlan-interface2] return
(5) 在Switch B上創建和控製報文方式的BFD會話關聯的Track項
# 創建和控製報文方式的BFD會話關聯的Track項1,並進入Track視圖,檢測Switch A是否可達。
[SwitchB] track 1 bfd ctrl interface vlan-interface 2 remote ip 192.168.0.101 local ip 192.168.0.102
[SwitchB-track-1] quit
# 顯示Switch A上備份組的詳細信息。
<SwitchA> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 110 Running Pri : 110
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Virtual MAC : 0000-5e00-0101
Master IP : 192.168.0.101
# 顯示Switch B上備份組的詳細信息。
<SwitchB> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Master IP : 192.168.0.101
VRRP Track Information:
Track Object : 1 State : Positive Switchover
# 顯示Switch B上Track項的信息。
<SwitchB> display track 1
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD ctrl
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Ctrl
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 192.168.0.101
Local IP: 192.168.0.102
以上顯示信息表示Track項狀態為Positive時,Switch A為Master路由器,Switch B為Backup路由器。
# 打開Switch B的VRRP狀態調試信息開關和控製報文方式的BFD會話事件通知調試信息開關。
<SwitchB> terminal debugging
<SwitchB> terminal monitor
<SwitchB> debugging vrrp fsm
<SwitchB> debugging bfd ntfy
# Switch A出現故障時,Switch B上輸出如下調試信息。
*Dec 17 14:44:34:142 2019 SwitchB BFD/7/DEBUG: Notify application:TRACK State:DOWN
*Dec 17 14:44:34:144 2019 SwitchB VRRP4/7/FSM:
IPv4 Vlan-interface2 | Virtual Router 1 : Backup --> Master reason: The status of the tracked object changed
# 顯示Switch B上備份組的詳細信息。
<SwitchB> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Virtual MAC : 0000-5e00-0101
Master IP : 192.168.0.102
VRRP Track Information:
Track Object : 1 State : Negative Switchover
以上調試信息表示,控製報文方式的BFD會話探測到Switch A出現故障後,立即由Track通知VRRP模塊將Switch B的狀態切換為Master,不再等待VRRP通告報文的超時時間,從而保證Backup路由器能夠快速切換為Master。
· Switch A和Switch B屬於虛擬IP地址為192.168.0.10的備份組1;
· 局域網內的主機上設置缺省網關為192.168.0.10;
· Switch A正常工作時,局域網內的主機通過Switch A訪問外部網絡;Switch A通過Echo報文方式的BFD會話檢測到上行鏈路不通時,降低自己在備份組中的優先級,以便Switch B搶占成為Master,保證局域網內的主機通過Switch B正常通信。
圖1-5 VRRP、Track與Echo報文方式的BFD會話聯動(Master監視上行鏈路)配置組網圖
(1) 按照圖1-5創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
(2) 在Switch A上配置BFD Echo功能
# 配置BFD Echo報文的源地址為10.10.10.10。
<SwitchA> system-view
[SwitchA] bfd echo-source-ip 10.10.10.10
(3) 在Switch A上創建和Echo報文方式的BFD會話關聯的Track項
# 創建和Echo報文方式的BFD會話關聯的Track項1,並進入Track視圖,檢測IP地址為1.1.1.2的上行設備是否可達。
[SwitchA] track 1 bfd echo interface vlan-interface 3 remote ip 1.1.1.2 local ip 1.1.1.1
[SwitchA-track-1] quit
(4) 在Switch A上配置VRRP
# 創建備份組1,配置備份組1的虛擬IP地址為192.168.0.10;Switch A在備份組1中的優先級為110;配置備份組1監視Track項1的狀態,當Track項狀態為Negative時,Switch A的優先級降低20。
[SwitchA] interface vlan-interface 2
[SwitchA-Vlan-interface2] vrrp vrid 1 virtual-ip 192.168.0.10
[SwitchA-Vlan-interface2] vrrp vrid 1 priority 110
[SwitchA-Vlan-interface2] vrrp vrid 1 track 1 priority reduced 20
[SwitchA-Vlan-interface2] return
(5) 在Switch B上配置VRRP
# 創建備份組1,配置備份組1的虛擬IP地址為192.168.0.10。
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] vrrp vrid 1 virtual-ip 192.168.0.10
[SwitchB-Vlan-interface2] return
# 顯示Switch A上備份組的詳細信息。
<SwitchA> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 110 Running Pri : 110
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Virtual MAC : 0000-5e00-0101
Master IP : 192.168.0.101
VRRP Track Information:
Track Object : 1 State : Positive Pri Reduced : 20
# 顯示Switch A上Track項1的信息。
<SwitchA> display track 1
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD echo
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Echo
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 1.1.1.2
Local IP: 1.1.1.1
# 顯示Switch B上備份組的詳細信息。
<SwitchB> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Master IP : 192.168.0.101
以上顯示信息表示Track項1的狀態為Positive時,Switch A為Master路由器,Switch B為Backup路由器。
# 當Switch A監視的上行鏈路出現故障時,Track項1的狀態變為Negative。
<SwitchA> display track 1
Track ID: 1
State: Negative
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD echo
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Echo
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 1.1.1.2
Local IP: 1.1.1.1
# 查看Switch A上備份組的詳細信息。
<SwitchA> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 110 Running Pri : 90
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Master IP : 192.168.0.102
VRRP Track Information:
Track Object : 1 State : Negative Pri Reduced : 20
# 顯示Switch B上備份組的詳細信息。
<SwitchB> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Virtual MAC : 0000-5e00-0101
Master IP : 192.168.0.102
以上顯示信息表示Switch A通過Echo報文方式的BFD會話檢測到上行鏈路不通時,將自己的優先級降低為90,從而保證Switch B搶占成為Master。
· Switch A和Switch B屬於虛擬IP地址為192.168.0.10的備份組1;
· 局域網內的主機上設置缺省網關為192.168.0.10;
· Switch A正常工作時,局域網內的主機通過Switch A訪問外部網絡;Switch A通過控製報文方式的BFD會話檢測到上行鏈路不通時,降低自己在備份組中的優先級,以便Switch B搶占成為Master,保證局域網內的主機通過Switch B正常通信。
圖1-6 VRRP、Track與控製報文方式的BFD會話聯動(Master監視上行鏈路)配置組網圖
(1) 按照圖1-6創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
(2) 在Switch A上配置VRRP
<SwitchA> system-view
# 創建備份組1,配置備份組1的虛擬IP地址為192.168.0.10;Switch A在備份組1中的優先級為110;配置備份組1監視Track項1的狀態,當Track項狀態為Negative時,Switch A的優先級降低20。
[SwitchA] interface vlan-interface 2
[SwitchA-Vlan-interface2] vrrp vrid 1 virtual-ip 192.168.0.10
[SwitchA-Vlan-interface2] vrrp vrid 1 priority 110
[SwitchA-Vlan-interface2] vrrp vrid 1 track 1 priority reduced 20
[SwitchA-Vlan-interface2] quit
(3) 在Switch A上創建和控製報文方式的BFD會話關聯的Track項
# 創建和控製報文方式的BFD會話關聯的Track項1,並進入Track視圖,檢測IP地址為1.1.1.2的上行設備是否可達。
[SwitchA] track 1 bfd ctrl interface vlan-interface 3 remote ip 1.1.1.2 local ip 1.1.1.1
[SwitchA-track-1] quit
(4) 在Master上行設備上創建和控製報文方式的BFD會話關聯的Track項
# 創建和控製報文方式的BFD會話關聯的Track項1,檢測IP地址為1.1.1.1的Switch A是否可達。
<Matser> system-view
[Master] track 1 bfd ctrl interface vlan-interface 3 remote ip 1.1.1.1 local ip 1.1.1.2
(5) 在Switch B上配置VRRP
# 創建備份組1,配置備份組1的虛擬IP地址為192.168.0.10。
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] vrrp vrid 1 virtual-ip 192.168.0.10
[SwitchB-Vlan-interface2] return
# 顯示Switch A上備份組的詳細信息。
<SwitchA> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 110 Running Pri : 110
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Virtual MAC : 0000-5e00-0101
Master IP : 192.168.0.101
VRRP Track Information:
Track Object : 1 State : Positive Pri Reduced : 20
# 顯示Switch A上Track項1的信息。
<SwitchA> display track 1
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD ctrl
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Ctrl
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 1.1.1.2
Local IP: 1.1.1.1
# 顯示Switch B上備份組的詳細信息。
<SwitchB> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Master IP : 192.168.0.101
以上顯示信息表示Track項1的狀態為Positive時,Switch A為Master路由器,Switch B為Backup路由器。
# 當Switch A監視的上行鏈路出現故障時,Track項1的狀態變為Negative。
<SwitchA> display track 1
Track ID: 1
State: Negative
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD ctrl
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Ctrl
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 1.1.1.2
Local IP: 1.1.1.1
# 查看Switch A上備份組的詳細信息。
<SwitchA> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 110 Running Pri : 90
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Master IP : 192.168.0.102
VRRP Track Information:
Track Object : 1 State : Negative Pri Reduced : 20
# 顯示Switch B上備份組的詳細信息。
<SwitchB> display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 192.168.0.10
Virtual MAC : 0000-5e00-0101
Master IP : 192.168.0.102
以上顯示信息表示Switch A通過控製報文方式的BFD會話檢測到上行鏈路不通時,將自己的優先級降低為90,從而保證Switch B搶占成為Master。
Switch A、Switch B、Switch C和Switch D連接了20.1.1.0/24和30.1.1.0/24兩個網段,在交換機上配置靜態路由以實現兩個網段的互通,並配置路由備份以提高網絡的可靠性。
Switch A作為20.1.1.0/24網段內主機的缺省網關,在Switch A上存在兩條到達30.1.1.0/24網段的靜態路由,下一跳分別為Switch B和Switch C。這兩條靜態路由形成備份,其中:
· 下一跳為Switch B的靜態路由優先級高,作為主路由。該路由可達時,Switch A通過Switch B將報文轉發到30.1.1.0/24網段。
· 下一跳為Switch C的靜態路作為備份路由。
· 在Switch A上通過靜態路由、Track與NQA聯動,實時判斷主路由是否可達。當主路由不可達時,備份路由生效,Switch A通過Switch C將報文轉發到30.1.1.0/24網段。
同樣地,Switch D作為30.1.1.0/24網段內主機的缺省網關,在Switch D上存在兩條到達20.1.1.0/24網段的靜態路由,下一跳分別為Switch B和Switch C。這兩條靜態路由形成備份,其中:
· 下一跳為Switch B的靜態路由優先級高,作為主路由。該路由可達時,Switch D通過Switch B將報文轉發到20.1.1.0/24網段。
· 下一跳為Switch C的靜態路作為備份路由。
· 在Switch D上通過靜態路由、Track與NQA聯動,實時判斷主路由是否可達。當主路由不可達時,備份路由生效,Switch D通過Switch C將報文轉發到20.1.1.0/24網段。
圖1-7 靜態路由、Track與NQA聯動配置組網圖
(1) 按照圖1-7創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.1.1.2,優先級為缺省值60,該路由與Track項1關聯。
<SwitchA> system-view
[SwitchA] ip route-static 30.1.1.0 24 10.1.1.2 track 1
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.3.1.3,優先級為80。
[SwitchA] ip route-static 30.1.1.0 24 10.3.1.3 preference 80
# 配置到達10.2.1.4的靜態路由:下一跳地址為10.1.1.2。
[SwitchA] ip route-static 10.2.1.4 24 10.1.1.2
# 創建管理員名為admin、操作標簽為test的NQA測試組。
[SwitchA] nqa entry admin test
# 配置測試類型為ICMP-echo。
[SwitchA-nqa-admin-test] type icmp-echo
# 配置測試的目的地址為10.2.1.4,下一跳地址為10.1.1.2,以便通過NQA檢測Switch A-Switch B-Switch D這條路徑的連通性。
[SwitchA-nqa-admin-test-icmp-echo] destination ip 10.2.1.4
[SwitchA-nqa-admin-test-icmp-echo] next-hop ip 10.1.1.2
# 配置測試頻率為100ms。
[SwitchA-nqa-admin-test-icmp-echo] frequency 100
# 配置聯動項1(連續失敗5次觸發聯動)。
[SwitchA-nqa-admin-test-icmp-echo] reaction 1 checked-element probe-fail threshold-type consecutive 5 action-type trigger-only
[SwitchA-nqa-admin-test-icmp-echo] quit
# 啟動探測。
[SwitchA] nqa schedule admin test start-time now lifetime forever
# 配置Track項1,並進入Track視圖,關聯NQA測試組(管理員為admin,操作標簽為test)的聯動項1。
[SwitchA] track 1 nqa entry admin test reaction 1
[SwitchA-track-1] quit
(3) 配置Switch B
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.2.1.4。
<SwitchB> system-view
[SwitchB] ip route-static 30.1.1.0 24 10.2.1.4
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.1.1.1。
[SwitchB] ip route-static 20.1.1.0 24 10.1.1.1
(4) 配置Switch C
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.4.1.4。
<SwitchC> system-view
[SwitchC] ip route-static 30.1.1.0 24 10.4.1.4
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.3.1.1。
[SwitchC] ip route-static 20.1.1.0 24 10.3.1.1
(5) 配置Switch D
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.2.1.2,優先級為缺省值60,該路由與Track項1關聯。
<SwitchD> system-view
[SwitchD] ip route-static 20.1.1.0 24 10.2.1.2 track 1
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.4.1.3,優先級為80。
[SwitchD] ip route-static 20.1.1.0 24 10.4.1.3 preference 80
# 配置到達10.1.1.1的靜態路由:下一跳地址為10.2.1.2。
[SwitchD] ip route-static 10.1.1.1 24 10.2.1.2
# 創建管理員名為admin、操作標簽為test的NQA測試組。
[SwitchD] nqa entry admin test
# 配置測試類型為ICMP-echo。
[SwitchD-nqa-admin-test] type icmp-echo
# 配置測試的目的地址為10.1.1.1,下一跳地址為10.2.1.2,以便通過NQA檢測Switch D-Switch B-Switch A這條路徑的連通性。
[SwitchD-nqa-admin-test-icmp-echo] destination ip 10.1.1.1
[SwitchD-nqa-admin-test-icmp-echo] next-hop ip 10.2.1.2
# 配置測試頻率為100ms。
[SwitchD-nqa-admin-test-icmp-echo] frequency 100
# 配置聯動項1(連續失敗5次觸發聯動)。
[SwitchD-nqa-admin-test-icmp-echo] reaction 1 checked-element probe-fail threshold-type consecutive 5 action-type trigger-only
[SwitchD-nqa-admin-test-icmp-echo] quit
# 啟動探測。
[SwitchD] nqa schedule admin test start-time now lifetime forever
# 配置Track項1,並進入Track視圖,關聯NQA測試組(管理員為admin,操作標簽為test)的聯動項1。
[SwitchD] track 1 nqa entry admin test reaction 1
[SwitchD-track-1] quit
# 顯示Switch A上Track項的信息。
[SwitchA] display track all
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: NQA
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
NQA entry: admin test
Reaction: 1
Remote IP/URL: 10.2.1.4
Local IP: --
Interface: --
# 顯示Switch A的路由表。
[SwitchA] display ip routing-table
Destinations : 10 Routes : 10
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 Direct 0 0 10.1.1.1 Vlan2
10.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.2.1.0/24 Static 60 0 10.1.1.2 Vlan2
10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan6
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 60 0 10.1.1.2 Vlan2
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上顯示信息表示,NQA測試的結果為主路由可達(Track項狀態為Positive),Switch A通過Switch B將報文轉發到30.1.1.0/24網段。
# 在Switch B上刪除VLAN接口2的IP地址。
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] undo ip address
# 顯示Switch A上Track項的信息。
[SwitchA] display track all
Track ID: 1
State: Negative
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: NQA
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
NQA entry: admin test
Reaction: 1
Remote IP/URL: 10.2.1.4
Local IP: --
Interface: --
# 顯示Switch A的路由表。
[SwitchA] display ip routing-table
Destinations : 10 Routes : 10
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 Direct 0 0 10.1.1.1 Vlan2
10.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.2.1.0/24 Static 60 0 10.1.1.2 Vlan2
10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan6
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 80 0 10.3.1.3 Vlan3
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上顯示信息表示,NQA測試的結果為主路由不可達(Track項狀態為Negative),則備份路由生效,Switch A通過Switch C將報文轉發到30.1.1.0/24網段。
# 主路由出現故障後,20.1.1.0/24網段內的主機仍然可以與30.1.1.0/24網段內的主機通信。
[SwitchA] ping -a 20.1.1.1 30.1.1.1
Ping 30.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 30.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=4 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 30.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
# Switch D上的顯示信息與Switch A類似。主路由出現故障後,30.1.1.0/24網段內的主機仍然可以與20.1.1.0/24網段內的主機通信。
[SwitchB] ping -a 30.1.1.1 20.1.1.1
Ping 20.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 20.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 20.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=4 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 20.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
Switch A、Switch B和Switch C連接了20.1.1.0/24和30.1.1.0/24兩個網段,在交換機上配置靜態路由以實現兩個網段的互通,並配置路由備份以提高網絡的可靠性。
Switch A作為20.1.1.0/24網段內主機的缺省網關,在Switch A上存在兩條到達30.1.1.0/24網段的靜態路由,下一跳分別為Switch B和Switch C。這兩條靜態路由形成備份,其中:
· 下一跳為Switch B的靜態路由優先級高,作為主路由。該路由可達時,Switch A通過Switch B將報文轉發到30.1.1.0/24網段。
· 下一跳為Switch C的靜態路作為備份路由。
· 在Switch A上通過靜態路由、Track與Echo報文方式的BFD會話聯動,實時判斷主路由是否可達。當主路由不可達時,Echo報文方式的BFD會話能夠快速地檢測到路由故障,使得備份路由生效,Switch A通過Switch C和Switch B將報文轉發到30.1.1.0/24網段。
同樣地,Switch B作為30.1.1.0/24網段內主機的缺省網關,在Switch B上存在兩條到達20.1.1.0/24網段的靜態路由,下一跳分別為Switch A和Switch C。這兩條靜態路由形成備份,其中:
· 下一跳為Switch A的靜態路由優先級高,作為主路由。該路由可達時,Switch B通過Switch A將報文轉發到20.1.1.0/24網段。
· 下一跳為Switch C的靜態路作為備份路由。
· 在Switch B上通過靜態路由、Track與Echo報文方式的BFD會話聯動,實時判斷主路由是否可達。當主路由不可達時,Echo報文方式的BFD會話能夠快速地檢測到路由故障,使得備份路由生效,Switch B通過Switch C和Switch A將報文轉發到20.1.1.0/24網段。
圖1-8 靜態路由、Track與Echo報文方式的BFD會話聯動配置組網圖
(1) 按照圖1-8創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
(2) 配置Switch A
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.2.1.2,優先級為缺省值60,該路由與Track項1關聯。
<SwitchA> system-view
[SwitchA] ip route-static 30.1.1.0 24 10.2.1.2 track 1
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.3.1.3,優先級為80。
[SwitchA] ip route-static 30.1.1.0 24 10.3.1.3 preference 80
# 配置BFD Echo報文的源地址為10.10.10.10。
[SwitchA] bfd echo-source-ip 10.10.10.10
# 創建和Echo報文方式的BFD會話關聯的Track項1,並進入Track視圖,檢測Switch A是否可以與靜態路由的下一跳Switch B互通。
[SwitchA] track 1 bfd echo interface vlan-interface 2 remote ip 10.2.1.2 local ip 10.2.1.1
[SwitchA-track-1] quit
(3) 配置Switch B
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.2.1.1,優先級為缺省值60,該路由與Track項1關聯。
<SwitchB> system-view
[SwitchB] ip route-static 20.1.1.0 24 10.2.1.1 track 1
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.4.1.3,優先級為80。
[SwitchB] ip route-static 20.1.1.0 24 10.4.1.3 preference 80
# 配置BFD echo報文的源地址為1.1.1.1。
[SwitchB] bfd echo-source-ip 1.1.1.1
# 創建和BFD會話關聯的Track項1,並進入Track視圖,檢測Switch B是否可以與靜態路由的下一跳Switch A互通。
[SwitchB] track 1 bfd echo interface vlan-interface 2 remote ip 10.2.1.1 local ip 10.2.1.2
[SwitchB-track-1] quit
(4) 配置Switch C
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.4.1.2。
<SwitchC> system-view
[SwitchC] ip route-static 30.1.1.0 24 10.4.1.2
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.3.1.1。
[SwitchB] ip route-static 20.1.1.0 24 10.3.1.1
# 顯示Switch A上Track項的信息。
[SwitchA] display track all
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD echo
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Echo
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 10.2.1.2
Local IP: 10.2.1.1
# 顯示Switch A的路由表。
[SwitchA] display ip routing-table
Destinations : 9 Routes : 9
Destination/Mask Proto Pre Cost NextHop Interface
10.2.1.0/24 Direct 0 0 10.2.1.1 Vlan2
10.2.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan5
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 60 0 10.2.1.2 Vlan2
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上顯示信息表示,Echo報文方式的BFD會話檢測的結果為下一跳地址10.2.1.2可達(Track項狀態為Positive),主路由生效,Switch A通過Switch B將報文轉發到30.1.1.0/24網段。
# 在Switch B上刪除VLAN接口2的IP地址。
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] undo ip address
# 顯示Switch A上Track項的信息。
[SwitchA] display track all
Track ID: 1
State: Negative
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD echo
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Echo
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 10.2.1.2
Local IP: 10.2.1.1
# 顯示Switch A的路由表。
[SwitchA] display ip routing-table
Destinations : 9 Routes : 9
Destination/Mask Proto Pre Cost NextHop Interface
10.2.1.0/24 Direct 0 0 10.2.1.1 Vlan2
10.2.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan5
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 80 0 10.3.1.3 Vlan3
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上顯示信息表示,Echo報文方式的BFD會話檢測的結果為下一跳地址10.2.1.2不可達(Track項狀態為Negative),備份路由生效,Switch A通過Switch C和Switch B將報文轉發到30.1.1.0/24網段。
# 主路由出現故障後,20.1.1.0/24網段內的主機仍然可以與30.1.1.0/24網段內的主機通信。
[SwitchA] ping -a 20.1.1.1 30.1.1.1
Ping 30.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 30.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=4 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 30.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
# Switch B上的顯示信息與Switch A類似。主路由出現故障後,30.1.1.0/24網段內的主機仍然可以與20.1.1.0/24網段內的主機通信。
[SwitchB] ping -a 30.1.1.1 20.1.1.1
Ping 20.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 20.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 20.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=4 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 20.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
Switch A、Switch B和Switch C連接了20.1.1.0/24和30.1.1.0/24兩個網段,在交換機上配置靜態路由以實現兩個網段的互通,並配置路由備份以提高網絡的可靠性。
Switch A作為20.1.1.0/24網段內主機的缺省網關,在Switch A上存在兩條到達30.1.1.0/24網段的靜態路由,下一跳分別為Switch B和Switch C。這兩條靜態路由形成備份,其中:
· 下一跳為Switch B的靜態路由優先級高,作為主路由。該路由可達時,Switch A通過Switch B將報文轉發到30.1.1.0/24網段。
· 下一跳為Switch C的靜態路作為備份路由。
· 在Switch A上通過靜態路由、Track與控製報文方式的BFD會話聯動,實時判斷主路由是否可達。當主路由不可達時,控製報文方式的BFD會話能夠快速地檢測到路由故障,使得備份路由生效,Switch A通過Switch C和Switch B將報文轉發到30.1.1.0/24網段。
同樣地,Switch B作為30.1.1.0/24網段內主機的缺省網關,在Switch B上存在兩條到達20.1.1.0/24網段的靜態路由,下一跳分別為Switch A和Switch C。這兩條靜態路由形成備份,其中:
· 下一跳為Switch A的靜態路由優先級高,作為主路由。該路由可達時,Switch B通過Switch A將報文轉發到20.1.1.0/24網段。
· 下一跳為Switch C的靜態路作為備份路由。
· 在Switch B上通過靜態路由、Track與控製報文方式的BFD會話聯動,實時判斷主路由是否可達。當主路由不可達時,控製報文方式的BFD會話能夠快速地檢測到路由故障,使得備份路由生效,Switch B通過Switch C和Switch A將報文轉發到20.1.1.0/24網段。
圖1-9 靜態路由、Track與控製報文方式的BFD會話聯動配置組網圖
(1) 按照圖1-9創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
(2) 配置Switch A
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.2.1.2,優先級為缺省值60,該路由與Track項1關聯。
<SwitchA> system-view
[SwitchA] ip route-static 30.1.1.0 24 10.2.1.2 track 1
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.3.1.3,優先級為80。
[SwitchA] ip route-static 30.1.1.0 24 10.3.1.3 preference 80
# 創建和控製報文方式的BFD會話關聯的Track項1,並進入Track視圖,檢測Switch A是否可以與靜態路由的下一跳Switch B互通。
[SwitchA] track 1 bfd ctrl interface vlan-interface 2 remote ip 10.2.1.2 local ip 10.2.1.1
[SwitchA-track-1] quit
(3) 配置Switch B
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.2.1.1,優先級為缺省值60,該路由與Track項1關聯。
<SwitchB> system-view
[SwitchB] ip route-static 20.1.1.0 24 10.2.1.1 track 1
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.4.1.3,優先級為80。
[SwitchB] ip route-static 20.1.1.0 24 10.4.1.3 preference 80
# 創建和控製報文方式的BFD會話關聯的Track項1,並進入Track視圖,檢測Switch B是否可以與靜態路由的下一跳Switch A互通。
[SwitchB] track 1 bfd ctrl interface vlan-interface 2 remote ip 10.2.1.1 local ip 10.2.1.2
[SwitchB-track-1] quit
(4) 配置Switch C
(5) # 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.4.1.2。
<SwitchC> system-view
[SwitchC] ip route-static 30.1.1.0 24 10.4.1.2
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.3.1.1。
[SwitchB] ip route-static 20.1.1.0 24 10.3.1.1
# 顯示Switch A上Track項的信息。
[SwitchA] display track all
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD ctrl
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Ctrl
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 10.2.1.2
Local IP: 10.2.1.1
# 顯示Switch A的路由表。
[SwitchA] display ip routing-table
Destinations : 9 Routes : 9
Destination/Mask Proto Pre Cost NextHop Interface
10.2.1.0/24 Direct 0 0 10.2.1.1 Vlan2
10.2.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan5
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 60 0 10.2.1.2 Vlan2
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上顯示信息表示,控製報文方式的BFD會話檢測的結果為下一跳地址10.2.1.2可達(Track項狀態為Positive),主路由生效,Switch A通過Switch B將報文轉發到30.1.1.0/24網段。
# 在Switch B上刪除VLAN接口2的IP地址。
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] undo ip address
# 顯示Switch A上Track項的信息。
[SwitchA] display track all
Track ID: 1
State: Negative
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: BFD ctrl
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
BFD session mode: Ctrl
Outgoing interface: Vlan-interface2
VPN instance name: --
Remote IP: 10.2.1.2
Local IP: 10.2.1.1
# 顯示Switch A的路由表。
[SwitchA] display ip routing-table
Destinations : 9 Routes : 9
Destination/Mask Proto Pre Cost NextHop Interface
10.2.1.0/24 Direct 0 0 10.2.1.1 Vlan2
10.2.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan5
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 80 0 10.3.1.3 Vlan3
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上顯示信息表示,控製報文方式的BFD會話檢測的結果為下一跳地址10.2.1.2不可達(Track項狀態為Negative),備份路由生效,Switch A通過Switch C和Switch B將報文轉發到30.1.1.0/24網段。
# 主路由出現故障後,20.1.1.0/24網段內的主機仍然可以與30.1.1.0/24網段內的主機通信。
[SwitchA] ping -a 20.1.1.1 30.1.1.1
Ping 30.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 30.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=4 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 30.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
# Switch B上的顯示信息與Switch A類似。主路由出現故障後,30.1.1.0/24網段內的主機仍然可以與20.1.1.0/24網段內的主機通信。
[SwitchB] ping -a 30.1.1.1 20.1.1.1
Ping 20.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 20.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 20.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=4 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 20.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
· Host A需要訪問Internet上的Host B,Host A的缺省網關為10.1.1.10/24;
· Switch A和Switch B屬於虛擬IP地址為10.1.1.10的備份組1;
· 當Switch A正常工作時,Host A發送給Host B的報文通過Switch A轉發;當通過接口管理監測到Switch A連接上行鏈路的VLAN接口3出現故障時,Host A發送給Host B的報文通過Switch B轉發。
圖1-10 VRRP、Track與接口管理聯動配置組網圖
(1) 按照圖1-10創建VLAN,在VLAN中加入對應的端口,並配置各VLAN接口的IP地址,具體配置過程略。
(2) 在Switch A上配置Track項
# 創建Track項1,並進入Track視圖,與上行接口VLAN接口3的鏈路狀態關聯。
[SwitchA] track 1 interface vlan-interface 3
[SwitchA-track-1] quit
(3) 在Switch A上配置VRRP
# 創建備份組1,並配置備份組1的虛擬IP地址為10.1.1.10。
[SwitchA] interface vlan-interface 2
[SwitchA-Vlan-interface2] vrrp vrid 1 virtual-ip 10.1.1.10
# 設置Switch A在備份組1中的優先級為110。
[SwitchA-Vlan-interface2] vrrp vrid 1 priority 110
# 設置監視Track項。
[SwitchA-Vlan-interface2] vrrp vrid 1 track 1 priority reduced 30
(4) 在Switch B上配置VRRP
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
# 創建備份組1,並配置備份組1的虛擬IP地址為10.1.1.10。
[SwitchB-Vlan-interface2] vrrp vrid 1 virtual-ip 10.1.1.10
配置完成後,在Host A上可以ping通Host B。通過display vrrp命令查看配置後的結果。
# 顯示Switch A上備份組1的詳細信息。
[SwitchA-Vlan-interface2] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 110 Running Pri : 110
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 10.1.1.10
Virtual MAC : 0000-5e00-0101
Master IP : 10.1.1.1
VRRP Track Information:
Track Object : 1 State : Positive Pri Reduced : 30
# 顯示Switch B上備份組1的詳細信息。
[SwitchB-Vlan-interface2] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 10.1.1.10
Master IP : 10.1.1.1
以上顯示信息表示在備份組1中Switch A為Master,Switch B為Backup,Host A發送給Host B的報文通過Switch A轉發。
# 在Switch A上關閉VLAN接口3。
[SwitchA-Vlan-interface2] interface vlan-interface 3
[SwitchA-Vlan-interface3] shutdown
關閉Switch A的上行接口後,在Host A上仍然可以ping通Host B。通過display vrrp命令查看備份組的信息。
# 關閉Switch A的上行接口後,顯示Switch A上備份組1的詳細信息。
[SwitchA-Vlan-interface3] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 110 Running Pri : 80
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 10.1.1.10
Master IP : 10.1.1.2
VRRP Track Information:
Track Object : 1 State : Negative Pri Reduced : 30
# 關閉Switch A的上行接口後,顯示Switch B上備份組1的詳細信息。
[SwitchB-Vlan-interface2] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 10.1.1.10
Virtual MAC : 0000-5e00-0101
Master IP : 10.1.1.2
以上顯示信息表示關閉Switch A的上行接口後,Switch A的優先級降低為80,成為Backup,Switch B成為Master,Host A發送給Host B的報文通過Switch B轉發。
· Host A需要訪問Internet上的Host B,Host A的缺省網關為10.1.1.10/24;
· Switch A和Switch B屬於虛擬IP地址為10.1.1.10的VRRP備份組1;
· Switch A和Switch B分別與Switch C和Switch D建立BGP鄰居,學習到缺省路由0.0.0.0/0;
· 當Switch A正常工作時,Host A發送給Host B的報文通過Switch A轉發;當通過路由管理監測到Switch A學到的缺省路由被刪除時,Host A發送給Host B的報文通過Switch B轉發。
圖1-11 VRRP、Track與路由管理聯動配置組網圖
(1) 按照圖1-11配置各接口的IP地址,具體配置過程略。
(2) Switch A與Switch C建立IBGP鄰居,Switch C向Switch A發布缺省路由;Switch B與Switch D配置類似。
<SwitchA> system-view
[SwitchA] bgp 100
[SwitchA-bgp-default] peer 10.1.2.2 as-number 100
[SwitchA-bgp-default] address-family ipv4
[SwitchA-bgp-default-ipv4] peer 10.1.2.2 enable
<SwitchC> system-view
[SwitchC] bgp 100
[SwitchC-bgp-default] peer 10.1.2.1 as-number 100
[SwitchC-bgp-default] address-family ipv4
[SwitchC-bgp-default-ipv4] peer 10.1.2.1 enable
[SwitchC-bgp-default-ipv4] peer 10.1.2.1 default-route-advertise
[SwitchC-bgp-default-ipv4] quit
(3) 在Switch A上配置Track項
# 創建Track項1,並進入Track視圖,與到達Host B的缺省路由0.0.0.0/0建立關聯。
[SwitchA] track 1 ip route 0.0.0.0 0.0.0.0 reachability
[SwitchA-track-1] quit
(4) 在Switch A上配置VRRP
# 創建VRRP備份組1,並配置VRRP備份組1的虛擬IP地址為10.1.1.10。
[SwitchA] interface vlan-interface 2
[SwitchA-Vlan-interface2] vrrp vrid 1 virtual-ip 10.1.1.10
# 設置Switch A在VRRP備份組1中的優先級為110。
[SwitchA-Vlan-interface2] vrrp vrid 1 priority 110
# 設置監視Track項,當Track項狀態變為Negative,設備優先級降低30。
[SwitchA-Vlan-interface2] vrrp vrid 1 track 1 priority reduced 30
[SwitchA-Vlan-interface2] quit
(5) 在Switch B上配置VRRP
<SwitchB> system-view
# 創建VRRP備份組1,並配置VRRP備份組1的虛擬IP地址為10.1.1.10。
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] vrrp vrid 1 virtual-ip 10.1.1.10
[SwitchB-Vlan-interface2] quit
配置完成後,在Host A上可以ping通Host B。通過display vrrp命令查看配置後的結果。
# 顯示Switch A上備份組1的詳細信息。
[SwitchA] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 110 Running Pri : 110
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 10.1.1.10
Virtual MAC : 0000-5e00-0101
Master IP : 10.1.1.1
VRRP Track Information:
Track Object : 1 State : Positive Pri Reduced : 30
# 顯示Switch B上備份組1的詳細信息。
[SwitchB] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 10.1.1.10
Master IP : 10.1.1.1
以上顯示信息表示在備份組1中Switch A為Master路由器,Switch B為Backup路由器,Host A發送給Host B的報文通過Switch A轉發。
# 在Switch C上關閉與對等體10.1.2.1交換路由信息的能力,使Switch A的缺省路由0.0.0.0/0被刪除。
[SwitchC-bgp-default-ipv4] undo peer 10.1.2.1 enable
此時,在Host A上仍然可以ping通Host B。通過display vrrp命令查看備份組的信息。
# 顯示Switch A上備份組1的詳細信息。
[SwitchA] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Backup
Config Pri : 110 Running Pri : 80
Preempt Mode : Yes Delay Time : 0
Become Master : 2200ms left
Auth Type : Not supported
Version : 3
Virtual IP : 10.1.1.10
Master IP : 10.1.1.2
VRRP Track Information:
Track Object : 1 State : Negative Pri Reduced : 30
#顯示Switch B上備份組1的詳細信息。
[SwitchB] display vrrp verbose
IPv4 Virtual Router Information:
Running Mode : Standard
Total number of virtual routers : 1
Interface Vlan-interface2
VRID : 1 Adver Timer : 100
Admin Status : Up State : Master
Config Pri : 100 Running Pri : 100
Preempt Mode : Yes Delay Time : 0
Auth Type : Not supported
Version : 3
Virtual IP : 10.1.1.10
Virtual MAC : 0000-5e00-0101
Master IP : 10.1.1.2
以上顯示信息表示Switch A缺省路由被刪除後,Switch A的優先級降低為80,成為Backup路由器,Switch B成為Master路由器,Host A發送給Host B的報文通過Switch B轉發。
Device A、Device B和Device C連接了20.1.1.0/24和30.1.1.0/24兩個網段,在交換機上配置靜態路由以實現兩個網段的互通,並配置路由備份以提高網絡的可靠性。
Device A作為20.1.1.0/24網段內主機的缺省網關,在Device A上存在兩條到達30.1.1.0/24網段的靜態路由,下一跳分別為Device B和Device C。這兩條靜態路由形成備份,其中:
· 下一跳為Device B的靜態路由優先級高,作為主路由。該路由可達時,Device A通過Device B將報文轉發到30.1.1.0/24網段。
· 下一跳為Device C的靜態路作為備份路由。
· 在Device A上通過靜態路由、Track與LLDP聯動,實時判斷主路由是否可達。當主路由不可達時,LLDP能夠檢測到路由故障,使得備份路由生效,Device A通過Device C和Device B將報文轉發到30.1.1.0/24網段。
同樣地,Device B作為30.1.1.0/24網段內主機的缺省網關,在Device B上存在兩條到達20.1.1.0/24網段的靜態路由,下一跳分別為Device A和Device C。這兩條靜態路由形成備份,其中:
· 下一跳為Device A的靜態路由優先級高,作為主路由。該路由可達時,Device B通過Device A將報文轉發到20.1.1.0/24網段。
· 下一跳為Device C的靜態路作為備份路由。
· 在Device B上通過靜態路由、Track與LLDP聯動,實時判斷主路由是否可達。當主路由不可達時,LLDP能夠檢測到路由故障,使得備份路由生效,Device B通過Device C和Device A將報文轉發到20.1.1.0/24網段。
圖1-12 靜態路由、Track與LLDP聯動配置組網圖
(1) 按照圖1-12配置各接口的IP地址,具體配置過程略。
(2) 配置Device A
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.2.1.2,優先級為缺省值60,該路由與Track項1關聯。
<DeviceA> system-view
[DeviceA] ip route-static 30.1.1.0 24 10.2.1.2 track 1
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.3.1.3,優先級為80。
[DeviceA] ip route-static 30.1.1.0 24 10.3.1.3 preference 80
# 全局開啟LLDP功能。
[DeviceA] lldp global enable
# 在接口GigabitEthernet1/0/1上開啟LLDP功能(此步驟可省略,LLDP功能在接口上缺省開啟)。
[DeviceA] interface gigabitethernet 1/0/1
[DeviceA-GigabitEthernet1/0/1] lldp enable
# 創建和LLDP鄰居關聯的Track項1,並進入Track視圖,檢測Device A是否可以與靜態路由的下一跳Device B互通。
[DeviceA] track 1 lldp neighbor interface gigabitethernet 1/0/1
[DeviceA-track-1] quit
(3) 配置Device B
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.2.1.1,優先級為缺省值60,該路由與Track項1關聯。
<DeviceB> system-view
[DeviceB] ip route-static 20.1.1.0 24 10.2.1.1 track 1
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.4.1.3,優先級為80。
[DeviceB] ip route-static 20.1.1.0 24 10.4.1.3 preference 80
# 全局開啟LLDP功能。
[DeviceB] lldp global enable
# 在接口GigabitEthernet1/0/1上開啟LLDP功能(此步驟可省略,LLDP功能在接口上缺省開啟)。
[DeviceB] interface gigabitethernet 1/0/1
[DeviceB-GigabitEthernet1/0/1] lldp enable
# 創建和LLDP鄰居關聯的Track項1,並進入Track視圖,檢測Device B是否可以與靜態路由的下一跳Device A互通。
[DeviceB] track 1 lldp neighbor interface gigabitethernet 1/0/1
[DeviceB-track-1] quit
(4) 配置Device C
# 配置到達30.1.1.0/24網段的靜態路由:下一跳地址為10.4.1.2。
<DeviceC> system-view
[DeviceC] ip route-static 30.1.1.0 24 10.4.1.2
# 配置到達20.1.1.0/24網段的靜態路由:下一跳地址為10.3.1.1。
[DeviceC] ip route-static 20.1.1.0 24 10.3.1.1
# 顯示Device A上Track項的信息。
[DeviceA] display track all
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: LLDP
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
LLDP interface: GigabitEthernet1/0/1
# 顯示Device A的路由表。
[DeviceA] display ip routing-table
Destinations : 9 Routes : 9
Destination/Mask Proto Pre Cost NextHop Interface
10.2.1.0/24 Direct 0 0 10.2.1.1 GE1/0/1
10.2.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.3.1.0/24 Direct 0 0 10.3.1.1 GE1/0/2
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 GE1/0/3
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 60 0 10.2.1.2 GE1/0/1
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上顯示信息表示,LLDP檢測的結果為下一跳地址10.2.1.2可達(Track項狀態為Positive),主路由生效,Device A通過Device B將報文轉發到30.1.1.0/24網段。
# 在Device B上關閉接口GigabitEthernet1/0/1的LLDP功能。
<DeviceB> system-view
[DeviceB] interface gigabitethernet 1/0/1
[DeviceB-GigabitEthernet1/0/1] undo lldp enable
# 顯示Device A上Track項的信息。
[DeviceA] display track all
Track ID: 1
State: Negative
Duration: 0 days 0 hours 0 minutes 32 seconds
Tracked object type: LLDP
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
LLDP interface: GigabitEthernet1/0/1
# 顯示Device A的路由表。
[DeviceA] display ip routing-table
Destinations : 9 Routes : 9
Destination/Mask Proto Pre Cost NextHop Interface
10.2.1.0/24 Direct 0 0 10.2.1.1 GE1/0/1
10.2.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.3.1.0/24 Direct 0 0 10.3.1.1 GE1/0/2
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 GE1/0/3
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 80 0 10.3.1.3 GE1/0/2
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上顯示信息表示,LLDP檢測的結果為下一跳地址10.2.1.2不可達(Track項狀態為Negative),備份路由生效,Device A通過Device C和Device B將報文轉發到30.1.1.0/24網段。
# 主路由出現故障後,20.1.1.0/24網段內的主機仍然可以與30.1.1.0/24網段內的主機通信。
[DeviceA] ping -a 20.1.1.1 30.1.1.1
Ping 30.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 30.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=4 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 30.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
# Device B上的顯示信息與Device A類似。主路由出現故障後,30.1.1.0/24網段內的主機仍然可以與20.1.1.0/24網段內的主機通信。
[DeviceB] ping -a 30.1.1.1 20.1.1.1
Ping 20.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 20.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 20.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=4 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 20.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
具體配置舉例請參見“可靠性配置指導”中的“Smart Link”。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!