03-SRv6 OAM配置
本章節下載: 03-SRv6 OAM配置 (294.89 KB)
目 錄
SRv6 OAM(Operations, Administration, and Maintenance,操作、管理和維護)用於檢測SRv6路徑的連通性、定位SRv6路徑的故障點和檢測PE到CE之間鏈路連通性。
SRv6 OAM支持如下檢測方式:
· SRv6 SID Ping/Tracert方式:用於檢查網絡連接及主機是否可達。
其中,SRv6 SID Ping為H3C私有協議。
圖1-1 SRH的Flags字段格式
如圖1-1所示,O-bit位於SRH的Flags字段,用於指示SRv6節點執行OAM處理。若報文中的O-bit置位,則SRv6節點需要基於SRH處理報文。在SRv6 OAM中,如果需要報文傳輸路徑上的SRv6節點都對源節點發送的OAM檢測報文進行應答,則需要源節點在發送的報文中將O-bit置位。
SRv6 SID Ping支持逐段檢測和非逐段檢測兩種檢測方式。
逐段檢測是指在SRv6轉發路徑中,檢測源節點和所有SRv6節點之間的連通性。SRv6轉發路徑中所有SRv6節點均會向源節點回複ICMPv6響應報文。
圖1-2 SRv6 SID Ping逐段檢測方式示意圖
如圖1-2所示,逐段檢測工作過程為:
(1) Device A向Decive D發起Ping,依次指定Device B的SRv6 SID和Device D的SRv6 SID。Device A構造ICMPv6請求報文,封裝SRH擴展頭並進行發送。
(2) 中間節點收到ICMPv6請求報文後:
¡ 如果中間節點為SRv6節點(如Device B),且報文的IPv6目的地址為本地的SRv6 SID,同時報文SRH的Flags字段中O標記位置位,則向Device A發送ICMPv6應答報文,並且基於SRH轉發ICMPv6請求報文。
¡ 如果中間節點不是SRv6節點(如Device C),則不向Device A發送ICMPv6應答報文,直接根據目的IPv6地址查找IPv6路由表轉發ICMPv6請求報文。
(3) Device D收到ICMPv6請求報文後,報文SRH的Flags字段中O標記位置位且SL=0,需要查找Local SID表,確認報文目的IPv6地址是否為本地的SRv6 SID:
¡ 如果報文目的IPv6地址是Device D的SRv6 SID,則校驗通過,向Device A發送ICMPv6應答報文。
¡ 如果報文目的IPv6地址不是Device D的SRv6 SID,則校驗不通過,丟棄ICMPv6請求報文。
(4) 如果Device A在超時時間內收到目的節點的ICMPv6應答報文,則目的節點可達;否則,目的點不可達。
非逐段檢測是指僅檢測源節點和目的節點之間的連通性。僅目的節點向源節點回複ICMPv6響應報文。
圖1-3 SRv6 SID Ping非逐段檢測方式示意圖
如圖1-3所示,非逐段檢測工作過程為:
(1) Device A向Decive D發起Ping,依次指定Device B的SRv6 SID和Device D的SRv6 SID。Device A構造ICMPv6請求報文,封裝SRH擴展頭並進行發送。
(2) 中間節點收到ICMPv6請求報文後:
¡ 如果中間節點為SRv6節點(如Device B),且報文的IPv6目的地址為本地的SRv6 SID,則基於SRH轉發ICMPv6請求報文。
¡ 如果中間節點不是SRv6節點(如Device C),則根據目的IPv6地址查找IPv6路由表轉發ICMPv6請求報文。
(3) Device D收到ICMPv6請求報文後,報文SRH中SL=0,需要查找Local SID表,確認報文目的IPv6地址是否為本地的SRv6 SID:
¡ 如果報文目的IPv6地址是Device D的SRv6 SID,則校驗通過,向Device A發送ICMPv6應答報文。
¡ 如果報文目的IPv6地址不是Device D的SRv6 SID,則校驗不通過,丟棄ICMPv6請求報文。
(4) 如果Device A在超時時間內收到目的節點的ICMPv6應答報文,則目的節點可達;否則,目的節點不可達。
SRv6 SID Ping包檢測可以指定攜帶Path Segment參數,使ICMPv6請求報文到達目的節點後,目的節點可以根據Path Segment關聯的本地SID列表來封裝回程ICMPv6應答報文,使ICMPv6應答報文按照本地SID列表指示的路徑返回源節點。
圖1-4 攜帶Path Segment的SRv6 SID Ping包檢測示意圖
如圖1-4所示,以非逐段檢測工作過程為例,攜帶Path Segment的SRv6 SID Ping包檢測流程如下:
(1) Device A向Decive D發起Ping,依次指定Device B、Device C和Device D的SRv6 SID。Device A構造ICMPv6請求報文,封裝SRH擴展頭並進行發送。在SRH擴展頭中Flags字段的第五位P-flag置位,表示該SRH擴展報文頭中將攜帶Path Segment x,且Path Segment封裝在SID列表中第一個SID b之前。
(2) 中間節點收到ICMPv6請求報文後:
¡ 如果中間節點為SRv6節點(如Device B),且報文的IPv6目的地址為本地的SRv6 SID,則基於SRH轉發ICMPv6請求報文。
¡ 如果中間節點不是SRv6節點,則根據目的IPv6地址查找IPv6路由表轉發ICMPv6請求報文。
(3) Device D收到ICMPv6請求報文後,檢查報文SRH中P-flag置位,表示SRH中攜帶了Path Segment,且SL=0,需要查找Local SID表,確認報文目的IPv6地址是否為本地的SRv6 SID:
¡ 如果報文目的IPv6地址是Device D的SRv6 SID,則校驗通過,向Device A發送ICMPv6應答報文。發送應答報文時,根據SRH中的Path Segment查找本地是否存在SID列表,該SID列表指定了反向Path Segment,且反向Path Segment與SRH中攜帶的Path Segment相等,如果相等,則根據該SID列表封裝ICMPv6應答的回程報文。如果不存在符合要求的SID列表,則無需重新封裝SRH,直接向Device A發送ICMPv6應答報文。
¡ 如果報文目的IPv6地址不是Device D的SRv6 SID,則校驗不通過,丟棄ICMPv6請求報文。
(4) 如果Device A在超時時間內收到目的節點的ICMPv6應答報文,則目的節點可達;否則,目的節點不可達。
SRv6 SID Tracert支持Overlay檢測和非Overlay檢測兩種方式。
通過Overlay方式查看SRv6轉發路徑時,僅顯示轉發路徑上所有SRv6節點的信息。
進行Overlay檢測時,如果指定End.OP SID,應該保證定End.OP SID是最後一跳SID,如果後麵還有其他SID,則後續SID不能為尾節點上的本地節點,否則無法應答。
圖1-5 SRv6 SID Tracert Overlay檢測方式示意圖
如圖1-5所示,Overlay檢測工作過程為:
(1) Device A向Decive D發起Tracert,依次指定Device B的SRv6 SID和Device D的SRv6 SID。Device A構造UDP報文(該報文的目的UDP端口號是目的端的任何一個應用程序都不可能使用的端口號),封裝SRH擴展頭並進行發送。此時IPv6報文首部的Hop limit字段的取值設置為64。
(2) 中間節點收到UDP報文後:
¡ 如果中間節點為SRv6節點(如Device B),且報文的IPv6目的地址為本地的SRv6 SID,同時報文SRH的Flags字段中O標記位置位,則向Device A發送ICMPv6端口不可達報文,並且基於SRH轉發UDP報文。
¡ 如果中間節點不是SRv6節點(如Device C),則不向Device A發送ICMPv6端口不可達報文,直接根據目的IPv6地址查找IPv6路由表轉發UDP報文。
(3) Device D收到UDP報文後,報文SRH的Flags字段中O標記位置位且SL=0,需要查找Local SID表,確認報文目的IPv6地址是否為本地的SRv6 SID:
¡ 如果報文目的IPv6地址是Device D的SRv6 SID,則校驗通過,向Device A發送ICMPv6端口不可達報文。
¡ 如果報文目的IPv6地址不是Device D的SRv6 SID,則校驗不通過,並丟棄UDP報文。
(4) 如果Device A在超時時間內收到目的節點的ICMPv6端口不可達報文,則目的節點可達,且可以根據Tracert結果得到數據報文從源節點到目的節點所經曆的路徑;否則,目的節點不可達,且可以根據Tracert結果定位故障節點。
通過非Overlay方式查看SRv6轉發路徑時,會顯示轉發路徑上所有節點(包括支持SRv6的節點和不支持SRv6的節點)的信息。
圖1-6 SRv6 SID Tracert非Overlay檢測方式示意圖
如圖1-6所示,非Overlay檢測工作過程為:
(1) Device A向Decive D發起Tracert,依次指定Device B的SRv6 SID、Device D的SRv6 SID。Device A構造UDP報文(該報文的目的UDP端口號是目的端的任何一個應用程序都不可能使用的端口號),封裝SRH擴展頭並進行發送。此時IPv6報文首部的Hop limit字段的取值設置為1。
(2) 中間節點收到UDP報文後,如果Hop limit字段的值變成0,則向Device A發送ICMPv6超時報文。
(3) Device A收到中間節點發送的ICMPv6超時報文後,將Hop limit字段的取值加1,繼續發送UDP報文。
(4) 中間節點收到UDP報文後,如果Hop limit字段的值未變成0,則向下一節點轉發UDP報文。
¡ 如果中間節點為SRv6節點(如Device B),且報文的IPv6目的地址為本地的SRv6 SID,則基於SRH轉發UDP報文。
¡ 如果中間節點不是SRv6節點(如Device C),則根據目的IPv6地址查找IPv6路由表轉發UDP報文。
(5) Device D收到UDP報文後,Hop limit字段的值變成0,報文SRH中SL=0,需要查找Local SID表,確認報文目的IPv6地址是否為本地的SRv6 SID:
¡ 如果報文目的IPv6地址是Device D的SRv6 SID,則校驗通過,向Device A發送ICMPv6端口不可達報文。
¡ 如果報文目的IPv6地址不是Device D的SRv6 SID,則校驗不通過,並丟棄UDP報文。
(6) 如果Device A在超時時間內收到目的節點的ICMPv6端口不可達報文,則目的節點可達,且可以根據Tracert結果得到數據報文從源節點到目的節點所經曆的路徑;否則,目的節點不可達,且可以根據Tracert結果定位故障節點。
對於S12500G-AF係列交換機,設備必須滿足如下條件才支持配置SRv6 OAM:
· 主控板絲印前綴不為LSXM1。
· 接口板為SF係列接口板或SG係列接口板。
· 係統工作模式為專家模式。有關專家模式的詳細介紹,請參見“基礎配置指導”中的“設備管理”。
僅支持對DX4、DX6、DT4、DT6、DT46、DX2、DT2U、DT2M類型的SID執行SRv6 SID Ping操作。
可在任意視圖下執行本命令,通過SRv6 SID Ping功能檢測SRv6轉發路徑的連通性。
ping ipv6-sid [ -a source-ipv6 | -c count | -m interval | -q | -s packet-size | -t timeout | -tc traffic-class | -v ] * [ segment-by-segment ] sid &<1-11>
對於非Overlay檢測場景:
· 需要在中間設備(源節點與目的節點之間的設備)上開啟設備的ICMPv6超時報文的發送功能。
· 需要在目的節點開啟設備的ICMPv6超時報文的發送功能和ICMPv6目的不可達報文的發送功能。
對於Overlay檢測場景,需要在中間設備(源節點與目的節點之間的設備)和目的節點上開啟設備的ICMPv6目的不可達報文的發送功能。
可在任意視圖下執行本命令,通過SRv6 SID Tracert功能查看包含指定SRv6 SID列表的IPv6報文從源節點到目的節點所經過的路徑。
tracert ipv6-sid [ -a source-ipv6 | -f first-hop | -i interface-type interface-number | -m max-hops | -p port | -q packet-number | -s packet-size | -t traffic-class | -w timeout ] * [ overlay ] sid &<1-11>
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!