Single-Domain SR-TE その3(Anycast-SID)

SR-TE & Anycast-SID が理解できたので自分のメモ用にアウトプットします。

1. Anycast-SID

複数のノードをグループ化して1つのSIDとして扱う技術

2. Topology

3. Config

h_N1(Head-End)

hostname h_N1
group CCIE-ISIS
 router isis '.*'
  is-type level-2-only
  address-family ipv4 unicast
   metric-style wide
   segment-routing mpls
  !
  interface 'Gi.*'
   point-to-point
   address-family ipv4 unicast
   !
  !
  interface 'Loopback .*'
   address-family ipv4 unicast
   !
  !
 !
end-group
!
interface Loopback0
 ipv4 address 1.1.1.1 255.255.255.255
!         
interface MgmtEth0/RP0/CPU0/0
 shutdown
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.1.2.1 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 ipv4 address 10.1.3.1 255.255.255.0
!
!
router isis 1
 apply-group CCIE-ISIS
 net 49.0001.0000.0000.0001.00
 interface Loopback0
  address-family ipv4 unicast
   prefix-sid index 1
  !
 !
 interface GigabitEthernet0/0/0/0
 !
 interface GigabitEthernet0/0/0/2
 !
!
mpls oam
!
segment-routing
 traffic-eng
  segment-list ANYCAST
   index 10 mpls label 16045
   index 20 mpls label 16006
  !
  policy VIA_ANYCAST_SID_POLICY
   binding-sid mpls 24365
   color 600 end-point ipv4 6.6.6.6
   autoroute
    include ipv4 6.6.6.6/32
   !
   candidate-paths
    preference 100
     explicit segment-list ANYCAST
     !
    !
   !
  !
 !
!
end


h_N2

hostname h_N2
group CCIE-ISIS
 router isis '.*'
  is-type level-2-only
  address-family ipv4 unicast
   metric-style wide
   segment-routing mpls
  !
  interface 'Gi.*'
   point-to-point
   address-family ipv4 unicast
   !
  !
  interface 'Loopback .*'
   address-family ipv4 unicast
   !
  !
 !
end-group
!
interface Loopback0
 ipv4 address 2.2.2.2 255.255.255.255
!         
interface MgmtEth0/RP0/CPU0/0
 shutdown
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.1.2.2 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.2.3.2 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 ipv4 address 10.2.4.2 255.255.255.0
!
!
router isis 1
 apply-group CCIE-ISIS
 net 49.0001.0000.0000.0002.00
 interface Loopback0
  address-family ipv4 unicast
   prefix-sid index 2
  !
 !
 interface GigabitEthernet0/0/0/0
 !
 interface GigabitEthernet0/0/0/1
 !
 interface GigabitEthernet0/0/0/2
 !
!
mpls oam
!
end

h_N3

hostname h_N3
group CCIE-ISIS
 router isis '.*'
  is-type level-2-only
  address-family ipv4 unicast
   metric-style wide
   segment-routing mpls
  !
  interface 'Gi.*'
   point-to-point
   address-family ipv4 unicast
   !
  !
  interface 'Loopback .*'
   address-family ipv4 unicast
   !
  !
 !
end-group
!
interface Loopback0
 ipv4 address 3.3.3.3 255.255.255.255
!         
interface MgmtEth0/RP0/CPU0/0
 shutdown
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.1.3.3 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.2.3.3 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 ipv4 address 10.3.5.3 255.255.255.0
!
interface GigabitEthernet0/0/0/3
 ipv4 address 10.3.4.3 255.255.255.0
!
router isis 1
 apply-group CCIE-ISIS
 net 49.0001.0000.0000.0003.00
 interface Loopback0
  address-family ipv4 unicast
   prefix-sid index 3
  !
 !
 interface GigabitEthernet0/0/0/0
 !
 interface GigabitEthernet0/0/0/1
 !
 interface GigabitEthernet0/0/0/2
 !
 interface GigabitEthernet0/0/0/3
 !
!
mpls oam
!
end

h_N4(Anycast-SIDあり)

hostname h_N4
group CCIE-ISIS
 router isis '.*'
  is-type level-2-only
  address-family ipv4 unicast
   metric-style wide
   segment-routing mpls
  !
  interface 'Gi.*'
   point-to-point
   address-family ipv4 unicast
   !
  !
  interface 'Loopback .*'
   address-family ipv4 unicast
   !
  !
 !
end-group
!
interface Loopback0
 ipv4 address 4.4.4.4 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.2.4.4 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.4.5.4 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 ipv4 address 10.4.6.4 255.255.255.0
!
interface GigabitEthernet0/0/0/3
 ipv4 address 10.3.4.4 255.255.255.0
!
router isis 1
 apply-group CCIE-ISIS
 net 49.0001.0000.0000.0004.00
 interface Loopback0
  address-family ipv4 unicast
   prefix-sid index 45 n-flag-clear
  !
 !
 interface GigabitEthernet0/0/0/0
 !
 interface GigabitEthernet0/0/0/1
 !
 interface GigabitEthernet0/0/0/2
 !
 interface GigabitEthernet0/0/0/3
 !
!
mpls oam
!
end

h_N5(Anycast-SIDあり)

hostname h_N5
group CCIE-ISIS
 router isis '.*'
  is-type level-2-only
  address-family ipv4 unicast
   metric-style wide
   segment-routing mpls
  !
  interface 'Gi.*'
   point-to-point
   address-family ipv4 unicast
   !
  !
  interface 'Loopback .*'
   address-family ipv4 unicast
   !
  !
 !
end-group
!
interface Loopback0
 ipv4 address 5.5.5.5 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.3.5.5 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.4.5.5 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 ipv4 address 10.5.6.5 255.255.255.0
!
!
router isis 1
 apply-group CCIE-ISIS
 net 49.0001.0000.0000.0005.00
 interface Loopback0
  address-family ipv4 unicast
   prefix-sid index 45 n-flag-clear
  !
 !
 interface GigabitEthernet0/0/0/0
 !
 interface GigabitEthernet0/0/0/1
 !
 interface GigabitEthernet0/0/0/2
 !
!
mpls oam
!
end

h_N6

hostname h_N6
group CCIE-ISIS
 router isis '.*'
  is-type level-2-only
  address-family ipv4 unicast
   metric-style wide
   segment-routing mpls
  !
  interface 'Gi.*'
   point-to-point
   address-family ipv4 unicast
   !
  !
  interface 'Loopback .*'
   address-family ipv4 unicast
   !
  !
 !
end-group
!
interface Loopback0
 ipv4 address 6.6.6.6 255.255.255.255
!         
interface GigabitEthernet0/0/0/0
 ipv4 address 10.4.6.6 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 ipv4 address 10.5.6.6 255.255.255.0
!
router isis 1
 apply-group CCIE-ISIS
 net 49.0001.0000.0000.0006.00
 interface Loopback0
  address-family ipv4 unicast
   prefix-sid index 6
  !
 !
 interface GigabitEthernet0/0/0/0
 !
 interface GigabitEthernet0/0/0/2
 !
!
mpls oam
!
end

4.Anycast-SIDの実装

① IGPでSegment Routing を有効にします。

 router isis '.*'
  net 49.0001.0000.0000.000X.00
  address-family ipv4 unicast
   metric-style wide
   segment-routing mpls
  !

② 忘れずに Loopback0 で prefix-sid index X を有効化します。
この時に ” n-flag-clear ”を付与します。今回は、h_N4 と h_N5 で 同じ Anycast-SID を定義します。
IOS-XR の Default SRGB(16000-23999) に対して、index 45 を指定します。
つまり、Anycast-SID:16045 を指定します。
Loopback で指定するように absolute 16045(SRGB込みの絶対値)と指定しても同じことです。
index 45 も任意の値で良いです。ここでは、定義するノード名が分かるように 45 としただけです。

RP/0/RP0/CPU0:h_N5(config)#router isis 1
RP/0/RP0/CPU0:h_N5(config-isis)#interface loopback 0
RP/0/RP0/CPU0:h_N5(config-isis-if)#address-family ipv4 unicast 
RP/0/RP0/CPU0:h_N5(config-isis-if-af)#prefix-sid index 45 ?
  n-flag-clear   Clear N-flag for the prefix-SID 
  <cr>           
RP/0/RP0/CPU0:h_N5(config-isis-if-af)#prefix-sid index 45 n-flag-clear ?
  <cr>           
RP/0/RP0/CPU0:h_N5(config-isis-if-af)#prefix-sid index 45 n-flag-clear 

5. SR-TE の実装

実装の流れは、①全ノードでSegment Routing を有効にしてから ②Head-End で explicit Path を定義し、 ③SR-TEのポリシーを定義します。④最後に経路(Candidate-paths)の候補を②で指定した path list から選択します。
前回、前々回(SR-TE その1、その2)と異なる点は、Path list に Anycast-SID が含まれているか否かの違いです。

5.1 全ノード共通

IGPでSegment Routing を有効にします。
忘れずに Loopback0 で prefix-sid index X を有効化します。
ただし、Anycast-SIDを定義しないノードに限ります。

 router isis '.*'
  net 49.0001.0000.0000.000X.00
  address-family ipv4 unicast
   metric-style wide
   segment-routing mpls
  !
  interface Loopback 0
   address-family ipv4 unicast
    prefix-sid index X
   !
  !
 !

5.2 Head-End(h_N1)

5.2.1 explicit Path の定義

① Segment Routing を定義します。

RP/0/RP0/CPU0:h_N1(config)#
  segment-routing            Segment Routing

② Segment Routing で Traffic Engineering を定義します。

RP/0/RP0/CPU0:h_N1(config-sr)#?
  traffic-eng         Segment Routing Traffic Engineering

③ Segment-list configuration でSegment-list名(任意:ANYCAST)を定義します。

RP/0/RP0/CPU0:h_N1(config-sr-te)#?
  segment-list        Segment-list configuration
RP/0/RP0/CPU0:h_N1(config-sr-te)#segment-list ?
  name  Segment-list name
  WORD  Identifying name for segment-list
RP/0/RP0/CPU0:h_N1(config-sr-te)#segment-list ANYCAST

④ SR-TEで経路を明示的に定義します。

RP/0/RP0/CPU0:h_N1(config-sr-te-sl)#?
  index               Next entry index
RP/0/RP0/CPU0:h_N1(config-sr-te-sl)#index ?
  <1-65535>  Index number
RP/0/RP0/CPU0:h_N1(config-sr-te-sl)#index 10 ?
  mpls  MPLS configuration
RP/0/RP0/CPU0:h_N1(config-sr-te-sl)#index 10 mpls ?
  label      MPLS label configuration
RP/0/RP0/CPU0:h_N1(config-sr-te-sl)#index 10 mpls label ?
  <0-1048575>  MPLS label value
RP/0/RP0/CPU0:h_N1(config-sr-te-sl)#index 10 mpls label 16045 ?
  <cr>  

今回は、Node1→(Anycast-SID:Node4 or 5)→6 を作ります。

   segment-routing
    traffic-eng
     segment-list ANYCAST
    ★index 10 mpls label 16045
      index 20 mpls label 16006
     !
    !
   !

★ が今回のメイントピックである Anycast-SID です。

5.2.2 SR-TE Policy の定義

SR-TE Policy を以下のように定義します。
a) ポリシー名 :VIA_ANYCAST_SID_POLICY
b) B-SID(任意):24365
c) color :600
d) Tail-End :6.6.6.6(h_N6)

SR-TEは、a)ポリシー名とc)カラー、d)Tail-Endの指定が必須です。

① 先ずはポリシー名を定義します。

RP/0/RP0/CPU0:h_N1(config-sr-te)#policy ?
  WORD  Identifying name for policy with max 59 characters
RP/0/RP0/CPU0:h_N1(config-sr-te)#policy VIA_ANYCAST_SID_POLICY

② B-SID(binding-sid)は任意設定です。 ※ SR-TE Policy自体に割り当てられたSIDをB-SID(binding-sid)と呼びます。

RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#?
  binding-sid              Binding Segment Identifier
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#binding-sid ?
  mpls  MPLS label
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#binding-sid mpls ?
  <16-1048575>  MPLS label
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#binding-sid mpls 24365 ?
  <cr>  

③ 次にカラーとTail-Endを指定します。

RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#?
  color                    Specify color for policy
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#color ?
  <1-4294967295>  Color value
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#color 600 ?
  end-point  Policy endpoint
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#color 600 end-point ?
  ipv4  IPv4 address
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#color 600 end-point ipv4 ?
  A.B.C.D  IPv4 endpoint address
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#color 600 end-point ipv4 6.6.6.6 ?
  <cr>  

5.2.3 Candidate-paths の定義

Candidate-paths を以下のように定義します。
a) preference :100(大きい方が優先されます!)
b) explicit path :ANYCAST

preference と指定する経路リストをセットで指定します。

RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#?
  candidate-paths          Candidate-paths configuration
RP/0/RP0/CPU0:h_N1(config-sr-te-policy)#candidate-paths 
RP/0/RP0/CPU0:h_N1(config-sr-te-policy-path)#?
  preference          Policy path-option preference entry
RP/0/RP0/CPU0:h_N1(config-sr-te-policy-path)#preference ?
  <1-65535>  Path-option preference
RP/0/RP0/CPU0:h_N1(config-sr-te-policy-path)#preference 100 
RP/0/RP0/CPU0:h_N1(config-sr-te-policy-path-pref)#?
  explicit            Preconfigured path
RP/0/RP0/CPU0:h_N1(config-sr-te-policy-path-pref)#explicit ?
  segment-list  Specify Segment-list
RP/0/RP0/CPU0:h_N1(config-sr-te-policy-path-pref)#explicit segment-list ?
  EXPLICIT_LIST  Identifying name for segment-list
  WORD           Identifying name for segment-list
RP/0/RP0/CPU0:h_N1(config-sr-te-policy-path-pref)#explicit segment-list ANYCAST

全体像としてはこのようになります。

segment-routing
 traffic-eng
  segment-list ANYCAST
   index 10 mpls label 16045
   index 20 mpls label 16006
  !
  policy VIA_ANYCAST_SID_POLICY
   color 600 end-point ipv4 6.6.6.6
   autoroute
    include ipv4 6.6.6.6/32
   !
   candidate-paths
    preference 100
     explicit segment-list ANYCAST
     !
    !
   !
  !
 !
!

6. 検証

6.1 SR-TE 基本確認

SR-TEを定義すると新しいインターフェース(SR-TE用のLSP)が出現します。

  RP/0/RP0/CPU0:h_N1#show ip interface brief | exclude una
  Tue Mar 21 11:13:12.628 UTC
  
  Interface                      IP-Address      Status          Protocol Vrf-Name
★srte_c_600_ep_6.6.6.6          1.1.1.1         Up              Up       default 
  Loopback0                      1.1.1.1         Up              Up       default 
  GigabitEthernet0/0/0/0         10.1.2.1        Up              Up       default 
  GigabitEthernet0/0/0/2         10.1.3.1        Up              Up       default 
  RP/0/RP0/CPU0:h_N1#

今回定義したSR-TEポリシーは、Head-End:1.1.1.1(h_N1)、color:60、Tail-End:6.6.6.6(h_N6)です。 ルーティングにその変化が現れています。

  RP/0/RP0/CPU0:h_N1#show route | begin Gate
  Tue Mar 21 11:18:12.486 UTC
  Gateway of last resort is not set
  
  L    1.1.1.1/32 is directly connected, 1d08h, Loopback0
  i L2 2.2.2.2/32 [115/20] via 10.1.2.2, 00:02:00, GigabitEthernet0/0/0/0
  i L2 3.3.3.3/32 [115/20] via 10.1.3.3, 00:02:00, GigabitEthernet0/0/0/2
  i L2 4.4.4.4/32 [115/30] via 10.1.2.2, 00:02:00, GigabitEthernet0/0/0/0
                  [115/30] via 10.1.3.3, 00:02:00, GigabitEthernet0/0/0/2
  i L2 5.5.5.5/32 [115/30] via 10.1.3.3, 00:02:00, GigabitEthernet0/0/0/2
★i L2 6.6.6.6/32 [115/40] via 6.6.6.6, 01:12:28, srte_c_600_ep_6.6.6.6
  C    10.1.2.0/24 is directly connected, 07:51:28, GigabitEthernet0/0/0/0
  L    10.1.2.1/32 is directly connected, 07:51:28, GigabitEthernet0/0/0/0
  C    10.1.3.0/24 is directly connected, 07:43:37, GigabitEthernet0/0/0/2
  L    10.1.3.1/32 is directly connected, 07:43:37, GigabitEthernet0/0/0/2
  i L2 10.2.3.0/24 [115/20] via 10.1.2.2, 00:02:00, GigabitEthernet0/0/0/0
                   [115/20] via 10.1.3.3, 00:02:00, GigabitEthernet0/0/0/2
  i L2 10.2.4.0/24 [115/20] via 10.1.2.2, 00:02:00, GigabitEthernet0/0/0/0
  i L2 10.3.4.0/24 [115/20] via 10.1.3.3, 00:02:00, GigabitEthernet0/0/0/2
  i L2 10.3.5.0/24 [115/20] via 10.1.3.3, 00:02:00, GigabitEthernet0/0/0/2
  i L2 10.4.5.0/24 [115/30] via 10.1.2.2, 00:00:53, GigabitEthernet0/0/0/0
                   [115/30] via 10.1.3.3, 00:00:53, GigabitEthernet0/0/0/2
  i L2 10.4.6.0/24 [115/30] via 10.1.2.2, 00:02:00, GigabitEthernet0/0/0/0
                   [115/30] via 10.1.3.3, 00:02:00, GigabitEthernet0/0/0/2
  i L2 10.5.6.0/24 [115/30] via 10.1.3.3, 00:02:00, GigabitEthernet0/0/0/2
  L    127.0.0.0/8 [0/0] via 0.0.0.0, 1d08h
  RP/0/RP0/CPU0:h_N1#

Head-End:1.1.1.1(h_N1)の LFIB を確認すると、 SR-TEの NEXT_HOP やTail-End、B-SID(任意):24365も確認できます。 SR-TE(EXPLICIT_PATH_POLICY)
・Head-End:1.1.1.1(h_N1)
・NEXT_HOP:10.1.2.2(Gi0/0/0/0)
・NEXT_HOP:10.1.3.3(Gi0/0/0/2)
・B-SID :24365

  RP/0/RP0/CPU0:h_N1#show mpls forwarding 
  Mon Mar 20 13:00:42.380 UTC
  Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
  Label  Label       or ID              Interface                    Switched    
  ------ ----------- ------------------ ------------ --------------- ------------
  16002  Pop         SR Pfx (idx 2)     Gi0/0/0/0    10.1.2.2        0           
  16003  Pop         SR Pfx (idx 3)     Gi0/0/0/2    10.1.3.3        0           
  16004  16004       SR Pfx (idx 4)     Gi0/0/0/0    10.1.2.2        0           
         16004       SR Pfx (idx 4)     Gi0/0/0/2    10.1.3.3        0           
  16005  16005       SR Pfx (idx 5)     Gi0/0/0/2    10.1.3.3        0           
  16006  16006       SR Pfx (idx 6)     Gi0/0/0/0    10.1.2.2        0           
         16006       SR Pfx (idx 6)     Gi0/0/0/2    10.1.3.3        0           
  24000  Pop         SR Adj (idx 1)     Gi0/0/0/2    10.1.3.3        0           
  24001  Pop         SR Adj (idx 3)     Gi0/0/0/2    10.1.3.3        0           
  24002  Pop         SR Adj (idx 1)     Gi0/0/0/0    10.1.2.2        0           
  24003  Pop         SR Adj (idx 3)     Gi0/0/0/0    10.1.2.2        0           
  24004  Pop         No ID              Gi0/0/0/2    10.1.3.3        0           
  24005  Pop         No ID              Gi0/0/0/0    10.1.2.2        0           
☆24007  Pop         6.6.6.6/32         srte_c_60_ep 6.6.6.6         0           
☆24008  16004       SR TE: 1 [TE-INT]  Gi0/0/0/0    10.1.2.2        196         
☆       16005       SR TE: 1 [TE-INT]  Gi0/0/0/2    10.1.3.3        560         
☆24365  Pop         No ID              srte_c_60_ep point2point     0           
  RP/0/RP0/CPU0:h_N1#

CEFを確認するとSR-TEで定義した内容が反映されています。他のLoopbackアドレスと見比べると分かりやすいかと思います。
SR-TEのautorouteが効いています。他のLoopbackアドレスだとNEXT_HOPがインターフェース名ですが、Head-End宛だけがSR-TEになっています。

  RP/0/RP0/CPU0:h_N1#show cef
  Tue Mar 21 11:39:07.609 UTC
  
  Prefix              Next Hop            Interface
  ------------------- ------------------- ------------------
  0.0.0.0/0           drop                default handler 
  0.0.0.0/32          broadcast
  1.1.1.1/32          receive             Loopback0
  2.2.2.2/32          10.1.2.2/32         GigabitEthernet0/0/0/0
  3.3.3.3/32          10.1.3.3/32         GigabitEthernet0/0/0/2
  4.4.4.4/32          10.1.2.2/32         GigabitEthernet0/0/0/0
                      10.1.3.3/32         GigabitEthernet0/0/0/2
  5.5.5.5/32          10.1.3.3/32         GigabitEthernet0/0/0/2
☆6.6.6.6/32          6.6.6.6/32          srte_c_600_ep_6.6.6.6
  10.1.2.0/24         attached            GigabitEthernet0/0/0/0
  10.1.2.0/32         broadcast           GigabitEthernet0/0/0/0
  10.1.2.1/32         receive             GigabitEthernet0/0/0/0
  10.1.2.255/32       broadcast           GigabitEthernet0/0/0/0
  10.1.3.0/24         attached            GigabitEthernet0/0/0/2
  10.1.3.0/32         broadcast           GigabitEthernet0/0/0/2
  10.1.3.1/32         receive             GigabitEthernet0/0/0/2
  10.1.3.255/32       broadcast           GigabitEthernet0/0/0/2
  10.2.3.0/24         10.1.2.2/32         GigabitEthernet0/0/0/0
                      10.1.3.3/32         GigabitEthernet0/0/0/2
  10.2.4.0/24         10.1.2.2/32         GigabitEthernet0/0/0/0
  10.3.4.0/24         10.1.3.3/32         GigabitEthernet0/0/0/2
  10.3.5.0/24         10.1.3.3/32         GigabitEthernet0/0/0/2
  10.4.5.0/24         10.1.2.2/32         GigabitEthernet0/0/0/0
                      10.1.3.3/32         GigabitEthernet0/0/0/2
  10.4.6.0/24         10.1.2.2/32         GigabitEthernet0/0/0/0
                      10.1.3.3/32         GigabitEthernet0/0/0/2
  10.5.6.0/24         10.1.3.3/32         GigabitEthernet0/0/0/2
  127.0.0.0/8         receive
  224.0.0.0/4         0.0.0.0/32          
  224.0.0.0/24        receive
  255.255.255.255/32  broadcast
  RP/0/RP0/CPU0:h_N1#

SR-TE ポリシーの情報はコマンドで確認することができます。

   RP/0/RP0/CPU0:h_N1#show segment-routing traffic-eng policy        
   Tue Mar 21 11:46:31.652 UTC
   
   SR-TE policy database
   ---------------------
   
   Color: 600, End-point: 6.6.6.6
★1  Name: srte_c_600_ep_6.6.6.6
     Status:
★2    Admin: up  Operational: up for 08:34:10 (since Mar 21 03:12:21.568)
     Candidate-paths:
       Preference: 100 (configuration) (active)
★3      Name: VIA_ANYCAST_SID_POLICY
★4      Requested BSID: 24365
           Protection Type: protected-preferred
           Maximum SID Depth: 10 
★5      Explicit: segment-list ANYCAST (valid)
           Weight: 1, Metric Type: TE
             16045
             16006
     Attributes:
       Binding SID: 24365
       Forward Class: Not Configured
       Steering labeled-services disabled: no
       Steering BGP disabled: no
       IPv6 caps enable: yes
       Invalidation drop enabled: no
   
   RP/0/RP0/CPU0:h_N1#

★1:Color と End-point(Head-End) が自動的にLSP名に反映されるのが特徴です。
SR-TE LSP名(Name: srte_c_6_ep_6.6.6.6)から、Color: 60, End-point: 6.6.6.6であることが分かります。
★2:SR-TEが有効な状態を示しています。
★3:SR-TE ポリシーは、VIA_ANYCAST_SID_POLICY であることが分かります。
★4:このSR-TEに紐づけられているBinding SIDは、 24365 であることが分かります。
★5:Explicit path が指定されていることが分かります。

6.2 ロードバランシング

ドキュメントは見つけられなかったのですが、どうやら Anycast group では master となるノードが決まっているようです。
以下想像している条件です。
・Loopback のIPアドレスが小さい方のノード
・Anycast group のうちで uptime が最も長いノード

以下のような青いトラフィックと緑のトラフィックのようなロードバランシングを最初想像していました。

でも実際は、全くの別物でした。どうやら Anycast group では master となるノードが決まっているようで、 なおかつ master となるノードを経由する経路でロードバランシングできるならロードバランシングすると言う挙動でした。

百聞は一見に如かずトラフィックがどのようにロードバランシングするのかを示します。

TRACEROUTE を10回実行した結果を確認できます

RP/0/RP0/CPU0:h_N1#! 1st attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:26.520 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 9 msec  3 msec 
    10.1.2.2 6 msec 
 2  10.3.4.4 [MPLS: Label 16006 Exp 0] 6 msec 
    10.2.4.4 4 msec  3 msec 
 3  10.4.6.6 8 msec  *  9 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 2nd attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:30.123 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.2.2 [MPLS: Labels 16045/16006 Exp 0] 5 msec 
    10.1.3.3 3 msec 
    10.1.2.2 4 msec 
 2  10.2.4.4 [MPLS: Label 16006 Exp 0] 3 msec 
    10.3.4.4 3 msec  3 msec 
 3  10.4.6.6 5 msec  *  8 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 3rd attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:33.703 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 5 msec 
    10.1.2.2 5 msec 
    10.1.3.3 3 msec 
 2  10.2.4.4 [MPLS: Label 16006 Exp 0] 3 msec 
    10.3.4.4 6 msec  3 msec 
 3  10.4.6.6 9 msec  *  13 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 4th attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:37.229 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.2.2 [MPLS: Labels 16045/16006 Exp 0] 5 msec 
    10.1.3.3 3 msec 
    10.1.2.2 22 msec 
 2  10.2.4.4 [MPLS: Label 16006 Exp 0] 3 msec  3 msec  3 msec 
 3  10.4.6.6 11 msec  *  5 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 5th attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:40.785 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.2.2 [MPLS: Labels 16045/16006 Exp 0] 14 msec 
    10.1.3.3 3 msec 
    10.1.2.2 7 msec 
 2  10.3.4.4 [MPLS: Label 16006 Exp 0] 7 msec 
    10.2.4.4 8 msec 
    10.3.4.4 3 msec 
 3  10.4.6.6 12 msec  *  6 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 6th attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:44.358 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.2.2 [MPLS: Labels 16045/16006 Exp 0] 6 msec  3 msec 
    10.1.3.3 3 msec 
 2  10.3.4.4 [MPLS: Label 16006 Exp 0] 4 msec  5 msec 
    10.2.4.4 3 msec 
 3  10.4.6.6 5 msec  *  6 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 7th attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:47.923 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 5 msec 
    10.1.2.2 5 msec  3 msec 
 2  10.3.4.4 [MPLS: Label 16006 Exp 0] 4 msec  3 msec  3 msec 
 3  10.4.6.6 5 msec  *  6 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 8th attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:51.446 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.2.2 [MPLS: Labels 16045/16006 Exp 0] 5 msec 
    10.1.3.3 3 msec 
    10.1.2.2 8 msec 
 2  10.2.4.4 [MPLS: Label 16006 Exp 0] 3 msec  3 msec  3 msec 
 3  10.4.6.6 5 msec  *  8 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 9th attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:55.084 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.2.2 [MPLS: Labels 16045/16006 Exp 0] 4 msec 
    10.1.3.3 3 msec 
    10.1.2.2 3 msec 
 2  10.3.4.4 [MPLS: Label 16006 Exp 0] 3 msec 
    10.2.4.4 3 msec 
    10.3.4.4 3 msec 
 3  10.4.6.6 4 msec  *  5 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 10th attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:13:58.648 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.2.2 [MPLS: Labels 16045/16006 Exp 0] 4 msec 
    10.1.3.3 3 msec  3 msec 
 2  10.2.4.4 [MPLS: Label 16006 Exp 0] 5 msec  3 msec  3 msec 
 3   * 
    10.4.6.6 5 msec  * 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#show mpls forwarding | i "TE|Label|Next|---"
Tue Mar 21 12:14:19.420 UTC
Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
Label  Label       or ID              Interface                    Switched    
------ ----------- ------------------ ------------ --------------- ------------
24009  16045       SR TE: 2 [TE-INT]  Gi0/0/0/0    10.1.2.2        1344        
       16045       SR TE: 2 [TE-INT]  Gi0/0/0/2    10.1.3.3        1176        
RP/0/RP0/CPU0:h_N1#

LFIB を見るとロードバランシング出来ている様子が見て取れます。

  RP/0/RP0/CPU0:h_N1#show mpls forwarding                        
  Tue Mar 21 12:16:18.524 UTC
  Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
  Label  Label       or ID              Interface                    Switched    
  ------ ----------- ------------------ ------------ --------------- ------------
  16002  Pop         SR Pfx (idx 2)     Gi0/0/0/0    10.1.2.2        0           
  16003  Pop         SR Pfx (idx 3)     Gi0/0/0/2    10.1.3.3        0           
  16006  16006       SR Pfx (idx 6)     Gi0/0/0/0    10.1.2.2        0           
         16006       SR Pfx (idx 6)     Gi0/0/0/2    10.1.3.3        0           
  16045  16045       SR Pfx (idx 45)    Gi0/0/0/0    10.1.2.2        0           
         16045       SR Pfx (idx 45)    Gi0/0/0/2    10.1.3.3        0           
  24000  Pop         SR Adj (idx 1)     Gi0/0/0/2    10.1.3.3        0           
  24001  Pop         SR Adj (idx 3)     Gi0/0/0/2    10.1.3.3        0           
  24002  Pop         SR Adj (idx 1)     Gi0/0/0/0    10.1.2.2        0           
  24003  Pop         SR Adj (idx 3)     Gi0/0/0/0    10.1.2.2        0           
  24004  Pop         No ID              Gi0/0/0/2    10.1.3.3        0           
         Pop         No ID              Gi0/0/0/0    10.1.2.2        0           
  24007  Pop         6.6.6.6/32         srte_c_600_e 6.6.6.6         0           
★24009  16045       SR TE: 2 [TE-INT]  Gi0/0/0/0    10.1.2.2        1344        
★       16045       SR TE: 2 [TE-INT]  Gi0/0/0/2    10.1.3.3        1176        
  24365  Pop         No ID              srte_c_600_e point2point     0           
  RP/0/RP0/CPU0:h_N1#

SR-TE policy の状態を確認すると Path[0] と Path[1] にロードバランシングしています。 だがしかし、Anycast group は、h_N4 と h_N5 の二つあるのに h_N4 宛にしかパケットを転送しません。

6.3 冗長性

ここで、master Node (勝手に命名したもので正式名称ではありません)を再起動します。

RP/0/RP0/CPU0:h_N4#admin hw-module location all reload 
Tue Mar 21 12:23:51.419 UTC
Reload hardware module ? [no,yes] yes
result Card graceful reload request on all acknowledged.
RP/0/RP0/CPU0:h_N4#


すると、master Node の切り替えが発生します。一時的に [TE-INT] が3つになります。

   RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric             
   Tue Mar 21 12:24:30.076 UTC
   
   Type escape sequence to abort.
   Tracing the route to 6.6.6.6
   
☆  1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 23 msec  4 msec  3 msec 
☆  2  10.3.5.5 [MPLS: Label 16006 Exp 0] 57 msec  3 msec  3 msec 
☆  3  10.5.6.6 12 msec  *  8 msec 
   RP/0/RP0/CPU0:h_N1#show mpls forwarding                  
   Tue Mar 21 12:24:38.292 UTC
   Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
   Label  Label       or ID              Interface                    Switched    
   ------ ----------- ------------------ ------------ --------------- ------------
   16002  Pop         SR Pfx (idx 2)     Gi0/0/0/0    10.1.2.2        0           
   16003  Pop         SR Pfx (idx 3)     Gi0/0/0/2    10.1.3.3        0           
   16006  16006       SR Pfx (idx 6)     Gi0/0/0/2    10.1.3.3        0           
   16045  16045       SR Pfx (idx 45)    Gi0/0/0/2    10.1.3.3        0           
   24000  Pop         SR Adj (idx 1)     Gi0/0/0/2    10.1.3.3        0           
   24001  Pop         SR Adj (idx 3)     Gi0/0/0/2    10.1.3.3        0           
   24002  Pop         SR Adj (idx 1)     Gi0/0/0/0    10.1.2.2        0           
   24003  Pop         SR Adj (idx 3)     Gi0/0/0/0    10.1.2.2        0           
   24004  Pop         No ID              Gi0/0/0/2    10.1.3.3        0           
★ 24005  16045       SR TE: 2 [TE-INT]  Gi0/0/0/2    10.1.3.3        224         
   24007  Pop         6.6.6.6/32         srte_c_600_e 6.6.6.6         0           
★ 24009  16045       SR TE: 2 [TE-INT]  Gi0/0/0/0    10.1.2.2        1344        
★        16045       SR TE: 2 [TE-INT]  Gi0/0/0/2    10.1.3.3        1176        
   24365  Pop         No ID              srte_c_600_e point2point     0           
   RP/0/RP0/CPU0:h_N1#

☆:master Node が切り替わる前まで通らなかった h_N5 経由にトラフィックが流れ始めます。
★:新しい SR-TE(24005)と古い SR-TE(24009)が存在しています。

master Node が h_N5 に切り替わると、Head-End から master Node 経由でECMP経路が無くなるので、 新しい SR-TE ではロードバランシングしなくなります。また、LFIBのカウンターがリセットされます。

   RP/0/RP0/CPU0:h_N1#show mpls forwarding 
   Tue Mar 21 12:24:44.379 UTC
   Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
   Label  Label       or ID              Interface                    Switched    
   ------ ----------- ------------------ ------------ --------------- ------------
   16002  Pop         SR Pfx (idx 2)     Gi0/0/0/0    10.1.2.2        0           
   16003  Pop         SR Pfx (idx 3)     Gi0/0/0/2    10.1.3.3        0           
   16006  16006       SR Pfx (idx 6)     Gi0/0/0/2    10.1.3.3        0           
   16045  16045       SR Pfx (idx 45)    Gi0/0/0/2    10.1.3.3        0           
   24000  Pop         SR Adj (idx 1)     Gi0/0/0/2    10.1.3.3        0           
   24001  Pop         SR Adj (idx 3)     Gi0/0/0/2    10.1.3.3        0           
   24002  Pop         SR Adj (idx 1)     Gi0/0/0/0    10.1.2.2        0           
   24003  Pop         SR Adj (idx 3)     Gi0/0/0/0    10.1.2.2        0           
   24004  Pop         No ID              Gi0/0/0/2    10.1.3.3        0           
★ 24005  16045       SR TE: 2 [TE-INT]  Gi0/0/0/2    10.1.3.3        252         
   24007  Pop         6.6.6.6/32         srte_c_600_e 6.6.6.6         0           
   24365  Pop         No ID              srte_c_600_e point2point     0           
   RP/0/RP0/CPU0:h_N1#

master Node が 切り替わった後(h_N4 が再起動完了)のトラフィック経路を確認します。

TRACEROUTE を10回実行した結果を確認できます

RP/0/RP0/CPU0:h_N1#! 1st attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:28.720 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 12 msec  5 msec  3 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 6 msec  4 msec  3 msec 
 3  10.5.6.6 11 msec  *  13 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 2nd attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:32.302 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 8 msec  3 msec  4 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 6 msec  4 msec  4 msec 
 3  10.5.6.6 5 msec  *  9 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 3rd attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:35.856 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 5 msec  5 msec  3 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 4 msec  4 msec  4 msec 
 3  10.5.6.6 4 msec  *  6 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 4th attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:39.392 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 5 msec  3 msec  3 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 4 msec  3 msec  4 msec 
 3  10.5.6.6 5 msec  *  9 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 5th attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:42.954 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 13 msec  4 msec  3 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 4 msec  4 msec  4 msec 
 3  10.5.6.6 5 msec  *  6 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 6th attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:46.490 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 6 msec  5 msec  4 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 4 msec  4 msec  3 msec 
 3  10.5.6.6 5 msec  *  11 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 7th attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:50.027 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 13 msec  5 msec  4 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 4 msec  4 msec  5 msec 
 3  10.5.6.6 6 msec  *  7 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 8th attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:53.556 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 7 msec  4 msec  4 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 4 msec  5 msec  3 msec 
 3  10.5.6.6 6 msec  *  8 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 9th attempt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:38:57.111 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 6 msec  4 msec  4 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 4 msec  4 msec  4 msec 
 3  10.5.6.6 5 msec  *  6 msec 
RP/0/RP0/CPU0:h_N1#!
RP/0/RP0/CPU0:h_N1#! 10th attemt
RP/0/RP0/CPU0:h_N1#traceroute 6.6.6.6 sou 1.1.1.1 numeric
Tue Mar 21 12:39:00.658 UTC

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.1.3.3 [MPLS: Labels 16045/16006 Exp 0] 5 msec  3 msec  4 msec 
 2  10.3.5.5 [MPLS: Label 16006 Exp 0] 4 msec  4 msec  3 msec 
 3   * 
    10.5.6.6 6 msec  * 
RP/0/RP0/CPU0:h_N1#

Head-End のLFIB は以下のようになります。

   RP/0/RP0/CPU0:h_N1#show mpls forwarding
   Wed Mar 22 11:31:23.307 UTC
   Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
   Label  Label       or ID              Interface                    Switched    
   ------ ----------- ------------------ ------------ --------------- ------------
   16002  Pop         SR Pfx (idx 2)     Gi0/0/0/0    10.1.2.2        0           
   16003  Pop         SR Pfx (idx 3)     Gi0/0/0/2    10.1.3.3        0           
   16006  16006       SR Pfx (idx 6)     Gi0/0/0/0    10.1.2.2        0           
          16006       SR Pfx (idx 6)     Gi0/0/0/2    10.1.3.3        0           
   16045  16045       SR Pfx (idx 45)    Gi0/0/0/2    10.1.3.3        0           
   24000  Pop         SR Adj (idx 1)     Gi0/0/0/2    10.1.3.3        0           
   24001  Pop         SR Adj (idx 3)     Gi0/0/0/2    10.1.3.3        0           
   24002  Pop         SR Adj (idx 1)     Gi0/0/0/0    10.1.2.2        0           
   24003  Pop         SR Adj (idx 3)     Gi0/0/0/0    10.1.2.2        0           
   24004  Pop         No ID              Gi0/0/0/2    10.1.3.3        0           
★ 24005  16045       SR TE: 2 [TE-INT]  Gi0/0/0/2    10.1.3.3        2772        
   24007  Pop         6.6.6.6/32         srte_c_600_e 6.6.6.6         0           
   24365  Pop         No ID              srte_c_600_e point2point     0           
   RP/0/RP0/CPU0:h_N1#

再起動した h_N4 が起動完了してパケットを転送できるようになったにも関わらず、SR-TE は h_N4 と h_N5 でロードバランシングすることなく 現在 master Node となっている h_N5 を中心にパケット転送をするようになります。最初の状態に戻すには、現在の master Node(h_N5)を再起動する必要があります。

7. 検証から得られたこと

恐らくmaster Node を判別するための Flag がどこかにあると思われます。見つけたら記事を更新します。

8. 参考

① Anycast SID-Aware Path Computation
www.cisco.com

次回は、Dynamic SR-TE について記事を書きます。
最後までお読みいただきありがとうございました!