TOC
サマリ
- Multi-AS で構成されるネットワークにおいて、SR-MPLS + EVPN による L2VPN を実現
- IOS XR + Junos + SR OS の Multi-vendor 環境での動作検証に、特定の組み合わせ以外は成功
この記事は Multi-AS SR 検証連載の第 13 回です。過去の記事は こちら
概要
イノベーションセンターの竹中です。普段の業務では Multi-AS Segment Routing に関する技術検証や、ネットワーク運用効率化のためのコントローラー開発などを行なっています。
第3回の記事で IOS XR + Junos の 2 つのベンダー機器で構成される Single-AS/Multi-AS L2VPN についてご紹介しましたが、今回新たに Nokia SR OS(Service Router Operating System)を PE・P・ASBR に加えた 3 つのベンダー機器での Multi-AS L2VPN 動作検証をご紹介します。
EVPN による L2VPN に関する説明は、第3回記事の概要にて紹介しているので、そちらをご参照ください。
検証
EVPN L2VPN の検証例を実際の設定例を添えつつ紹介します。 IOS XR、Junos の設定例は第3回の記事で紹介したため本記事では割愛し、SR OS の設定例を中心に紹介します。 本記事の検証は Inter-AS Option B の L2VPN について、SR OS と各ベンダー間の互換性確認を目的とします。 つまり下記を検証します。
- SR OS を PE として L2VPN が構築できるかどうかを確認する
- SR OS と IOS XR/Junos の間で L2VPN 経路を交換できるかどうかを確認する
- Inter-AS Option B 構成を構築する際に SR OS を ASBR として利用できるかを確認する
下記のトポロジーを利用し L2VPN の検証例を紹介します。 なお、検証は運用中の実機環境を利用しているため、一部トポロジーが雑然としていることはご了承ください。

また、各 EVI で扱う組み合わせを表に示します。
| EVI | AS65001 PE → | → ASBR-ASBR → | → AS65002 PE |
|---|---|---|---|
| 3600 | Juniper | Cisco | Nokia |
| 3700 | Cisco | Nokia | Juniper |
使用する機器は以下の通りです。
IOS XR
- rt01: Cisco ASR9901 (IOS XR 7.6.1)
- rt03: Cisco 8201 (IOS XR 7.5.1)
- rt06、rt08: Cisco ASR9902 (IOS XR 7.5.1)
- rt10: Cisco NCS55A2 (IOS XR 7.5.1)
Junos
- rt02、rt12: Juniper MX204 (JUNOS 22.1R1.10)
- rt04: Juniper PTX10001-36MR (JUNOS 21.4R1.15-EVO)
SR OS
- rt05、rt07、rt09、rt11、rt13: Nokia 7750 SR-1 (SR OS 23.3.R1)
SR OS の IGP や SR の設定は 第12回 の記事で紹介したため割愛します。下記の設定および確認を順に行います。
- EVI と CE 向けポート設定と状態確認
- BGP の設定
- LP の設定
- 経路の確認
- 疎通試験
EVI と CE 向けポート設定
まず、PE で EVI と CE 向けポートを設定します。各 EVI は MP-BGP EVPN にて 64999:<EVI 番号> の RT を用いて経路交換します。
PE (例: rt13)
[gl:/configure policy-options]
A:user@rt13# info
community "comm-3600" {
member "target:64999:3600" { }
}
policy-statement "vsi-export-3600" {
entry 10 {
action {
action-type accept
community {
add ["comm-3600"]
}
}
}
}
policy-statement "vsi-import-3600" {
entry 10 {
from {
community {
name "comm-3600"
}
}
action {
action-type accept
}
}
}
[gl:/configure service]
A:user@rt13# info
customer "3600" {
}
system {
bgp {
evpn {
ethernet-segment "esi-26-1/2/c16/1" {
admin-state enable
esi 0x02000000010000002616
multi-homing-mode single-active
association {
port 1/2/c16/1 {
}
}
}
}
}
}
vpls "3600" {
admin-state enable
customer "3600"
bgp 1 {
route-distinguisher "10.255.2.26:3600"
vsi-import ["vsi-import-3600"]
vsi-export ["vsi-export-3600"]
}
bgp-evpn {
evi 3600
mpls 1 {
admin-state enable
auto-bind-tunnel {
resolution any
}
}
}
sap 1/2/c16/1:3600 {
admin-state enable
}
}
EVI と CE 向けポートの状態確認
EVI と CE 向けポートが紐づき、また Admin/Operation 共に up していることが確認できます。
[/]
A:user@rt13# show service id 3600 sap
===============================================================================
SAP(Summary), Service 3600
===============================================================================
PortId SvcId Ing. Ing. Egr. Egr. Adm Opr
QoS Fltr QoS Fltr
-------------------------------------------------------------------------------
1/2/c16/1:3600 3600 1 none 1 none Up Up
-------------------------------------------------------------------------------
Number of SAPs : 1
-------------------------------------------------------------------------------
===============================================================================
BGP の設定
L2VPN 経路を広告するため PE と ASBR で MP-BGP EVPN を設定します。
PE (例: rt13)
[gl:/configure router "Base" bgp]
A:user@rt13# info
rapid-withdrawal true
family {
evpn true
}
rapid-update {
evpn true
}
group "iBGP" {
peer-as 65002
local-address 10.255.2.2
family {
evpn true
}
}
neighbor "10.255.2.6" {
admin-state enable
group "iBGP"
}
neighbor "10.255.2.7" {
admin-state enable
group "iBGP"
}
ASBR (例: rt07)
[gl:/configure router "Base" bgp]
A:user@rt07# info
inter-as-vpn true
rapid-withdrawal true
family {
evpn true
}
ebgp-default-reject-policy {
import false
export false
}
rapid-update {
evpn true
}
next-hop-resolution {
labeled-routes {
transport-tunnel {
family vpn {
resolution any
}
}
}
}
group "65002" {
vpn-apply-import true
peer-as 65002
bfd-liveness true
family {
evpn true
}
}
group "iBGP" {
peer-as 65001
local-address 10.255.1.7
family {
evpn true
}
}
neighbor "10.100.3.2" {
group "65002"
}
neighbor "10.255.1.1" {
group "iBGP"
}
neighbor "10.255.1.2" {
group "iBGP"
}
Local Preference(LP) の設定
EVI ごとに通過する ASBR を制御するため、ASBR で LP を設定します。 本検証では RT ごとに通過させたい ASBR への経路には LP 300 を、通過させたくない ASBR への経路には LP 50 を明示的に設定します。
IOS XR ASBR 間
rt06
route-policy lp-for-evpn
if extcommunity rt matches-any (64999:3600) then
set local-preference 300
elseif extcommunity rt matches-any (64999:3700) then
set local-preference 50
else
pass
endif
end-policy
router bgp 65001
neighbor 10.100.1.2
address-family l2vpn evpn
route-policy lp-for-evpn in
!
!
rt08
route-policy lp-for-evpn
if extcommunity rt matches-any (64999:3600) then
set local-preference 300
elseif extcommunity rt matches-any (64999:3700) then
set local-preference 50
else
pass
endif
end-policy
router bgp 65002
neighbor 10.100.1.1
address-family l2vpn evpn
route-policy lp-for-evpn in
!
!
SR OS ASBR 間
rt07
[gl:/configure policy-options]
A:user@rt07# info
community "lp-high-grp" {
member "target:64999:3700" { }
}
community "lp-low-grp" {
member "target:64999:3600" { }
}
policy-statement "lp-for-evpn" {
entry 1 {
from {
community {
name "lp-high-grp"
}
}
action {
action-type accept
local-preference 300
}
}
entry 2 {
from {
community {
name "lp-low-grp"
}
}
action {
action-type accept
local-preference 50
}
}
}
[gl:/configure router "Base" bgp]
A:user@rt07# info
vpn-apply-export true
vpn-apply-import true
group "65002" {
import {
policy ["lp-for-evpn"]
}
}
rt09
[gl:/configure policy-options]
A:user@rt09# info
community "lp-high-grp" {
member "target:64999:3700" { }
}
community "lp-low-grp" {
member "target:64999:3600" { }
}
policy-statement "lp-for-evpn" {
entry 1 {
from {
community {
name "lp-high-grp"
}
}
action {
action-type accept
local-preference 300
}
}
entry 2 {
from {
community {
name "lp-low-grp"
}
}
action {
action-type accept
local-preference 50
}
}
}
[gl:/configure router "Base" bgp]
A:user@rt09# info
vpn-apply-export true
vpn-apply-import true
group "65001" {
import {
policy ["lp-for-evpn"]
}
}
経路の確認
各 PE で構成に従った経路を学習しているかを確認します。 type1 経路、type3 経路が交換されていること、また EVI ごとにそれぞれ nexthop が適切な ASBR となっていることが確認できます。
EVI 3600
AS65001 側 PE (rt02)
user@rt02> show route table evpn-3600.evpn.0
evpn-3600.evpn.0: 9 destinations, 17 routes (9 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
1:10.255.1.2:3600::0207::0/192 AD/EVI
*[EVPN/170] 15w4d 20:10:12
Indirect
1:10.255.2.26:3600::02000000010000002616::0/192 AD/EVI
*[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.3
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
> to 10.1.8.2 via et-0/0/0.0, Push 16007
to 10.1.16.2 via et-0/0/2.0, Push 16007
[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.4
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
> to 10.1.8.2 via et-0/0/0.0, Push 16007
to 10.1.16.2 via et-0/0/2.0, Push 16007
[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.20
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
> to 10.1.8.2 via et-0/0/0.0, Push 16007
to 10.1.16.2 via et-0/0/2.0, Push 16007
1:10.255.2.26:3600::02000000010000002616::FFFF:FFFF/192 AD/ESI
*[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.3
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
> to 10.1.8.2 via et-0/0/0.0, Push 16007
to 10.1.16.2 via et-0/0/2.0, Push 16007
[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.4
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
> to 10.1.8.2 via et-0/0/0.0, Push 16007
to 10.1.16.2 via et-0/0/2.0, Push 16007
[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.20
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
> to 10.1.8.2 via et-0/0/0.0, Push 16007
to 10.1.16.2 via et-0/0/2.0, Push 16007
2:10.255.1.2:3600::0::00:0c:29:f0:5a:09/304 MAC/IP
*[EVPN/170] 14w5d 01:18:41
Indirect
2:10.255.2.26:3600::0::00:0c:29:1f:dd:dc/304 MAC/IP
*[BGP/170] 00:00:26, localpref 300, from 10.255.1.3
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
to 10.1.8.2 via et-0/0/0.0, Push 16007
> to 10.1.16.2 via et-0/0/2.0, Push 16007
[BGP/170] 00:00:26, localpref 300, from 10.255.1.4
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
to 10.1.8.2 via et-0/0/0.0, Push 16007
> to 10.1.16.2 via et-0/0/2.0, Push 16007
[BGP/170] 00:00:26, localpref 300, from 10.255.1.20
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
to 10.1.8.2 via et-0/0/0.0, Push 16007
> to 10.1.16.2 via et-0/0/2.0, Push 16007
2:10.255.1.2:3600::0::00:0c:29:f0:5a:09::192.168.32.1/304 MAC/IP
*[EVPN/170] 14w5d 01:18:36
Indirect
2:10.255.1.2:3600::0::00:0c:29:f0:5a:09::192.168.33.1/304 MAC/IP
*[EVPN/170] 1w3d 19:40:14
Indirect
3:10.255.1.2:3600::0::10.255.1.2/248 IM
*[EVPN/170] 17w3d 18:54:21
Indirect
3:10.255.2.26:3600::0::10.255.2.26/248 IM
*[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.3
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
to 10.1.8.2 via et-0/0/0.0, Push 16007
> to 10.1.16.2 via et-0/0/2.0, Push 16007
[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.4
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
to 10.1.8.2 via et-0/0/0.0, Push 16007
> to 10.1.16.2 via et-0/0/2.0, Push 16007
[BGP/170] 2w2d 16:54:52, localpref 300, from 10.255.1.20
AS path: 65002 I, validation-state: unverified
to 10.1.3.2 via et-0/0/1.0, Push 16007
to 10.1.8.2 via et-0/0/0.0, Push 16007
> to 10.1.16.2 via et-0/0/2.0, Push 16007
AS65002 側 PE (rt13)
[/]
A:user@rt13# show router bgp routes evpn auto-disc detail
===============================================================================
BGP Router ID:10.255.2.26 AS:65002 Local AS:65002
===============================================================================
Legend -
Status codes : u - used, s - suppressed, h - history, d - decayed, * - valid
l - leaked, x - stale, > - best, b - backup, p - purge
Origin codes : i - IGP, e - EGP, ? - incomplete
===============================================================================
BGP EVPN Auto-Disc Routes
===============================================================================
Original Attributes
Network : n/a
Nexthop : 10.255.2.1
Path Id : None
From : 10.255.2.1
Res. Nexthop : 10.2.17.1
Local Pref. : 300 Interface Name : to_ar-rt10
Aggregator AS : None Aggregator : None
Atomic Aggr. : Not Atomic MED : None
AIGP Metric : None IGP Cost : 30
Connector : None
Community : target:64999:3600
Cluster : 0.0.0.1
Originator Id : 10.255.2.1 Peer Router Id : 10.255.2.25
Flags : Valid IGP
TieBreakReason : PeerIP MP Exc. Reason : NotNextHopDiverse
Route Source : Internal
AS-Path : 65001
EVPN type : AUTO-DISC
ESI : 00:00:00:00:00:00:00:00:02:07
Tag : 0
Route Dist. : 10.255.1.2:3600
MPLS Label : LABEL 60946
Route Tag : 0
Neighbor-AS : 65001
DB Orig Val : N/A Final Orig Val : N/A
Source Class : 0 Dest Class : 0
Add Paths Send : Default
Last Modified : 52d23h37m
Modified Attributes
Network : n/a
Nexthop : 10.255.2.1
Path Id : None
From : 10.255.2.1
Res. Nexthop : 10.2.17.1
Local Pref. : 300 Interface Name : to_ar-rt10
Aggregator AS : None Aggregator : None
Atomic Aggr. : Not Atomic MED : None
AIGP Metric : None IGP Cost : 30
Connector : None
Community : target:64999:3600
Cluster : 0.0.0.1
Originator Id : 10.255.2.1 Peer Router Id : 10.255.2.25
Flags : Valid IGP
TieBreakReason : PeerIP MP Exc. Reason : NotNextHopDiverse
Route Source : Internal
AS-Path : 65001
EVPN type : AUTO-DISC
ESI : 00:00:00:00:00:00:00:00:02:07
Tag : 0
Route Dist. : 10.255.1.2:3600
MPLS Label : LABEL 60946
Route Tag : 0
Neighbor-AS : 65001
DB Orig Val : N/A Final Orig Val : N/A
Source Class : 0 Dest Class : 0
Add Paths Send : Default
Last Modified : 52d23h37m
(snip)
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 8
===============================================================================
[/]
A:user@rt26# show router bgp routes evpn incl-mcast
===============================================================================
BGP Router ID:10.255.2.26 AS:65002 Local AS:65002
===============================================================================
Legend -
Status codes : u - used, s - suppressed, h - history, d - decayed, * - valid
l - leaked, x - stale, > - best, b - backup, p - purge
Origin codes : i - IGP, e - EGP, ? - incomplete
===============================================================================
BGP EVPN Inclusive-Mcast Routes
===============================================================================
Flag Route Dist. OrigAddr
Tag NextHop
-------------------------------------------------------------------------------
u*>i 10.255.1.2:3600 10.255.1.2
0 10.255.2.1
*i 10.255.1.2:3600 10.255.1.2
0 10.255.2.1
i 10.255.2.26:3600 10.255.2.26
0 10.255.2.26
i 10.255.2.26:3600 10.255.2.26
0 10.255.2.26
-------------------------------------------------------------------------------
Routes : 4
===============================================================================
EVI 3700
AS65001 側 PE (rt01)
※ type3 経路の nexthop が rt07 となっていませんが、こちらは後述の制約事項で扱います。
RP/0/RSP0/CPU0:rt01#show evpn evi vpn-id 3700 ead
Mon Jun 19 11:49:14.279 JST
VPN-ID Encap Ethernet Segment Id EtherTag Nexthop Label SID
---------- ------ ------------------------ ---------- --------------------------------------- -------- ---------------------------------------
3700 MPLS 0000.0000.0000.0000.0132 0x0 :: 24019
3700 MPLS 0000.0000.0000.0000.1607 0x0 10.255.1.22 507880
3700 MPLS 0000.0000.0000.0000.1607 0xffffffff 10.255.1.22 0
RP/0/RSP0/CPU0:rt01#show evpn evi vpn-id 3700 inclusive-multicast detail
Mon Jun 19 11:48:06.327 JST
VPN-ID Encap EtherTag Originating IP
---------- ------ ---------- ----------------------------------------
3700 MPLS 0 10.255.1.1
TEPid : 0xffffffff
PMSI Type: 6
Nexthop: ::
Label : 26015
SR-TE Info: N/A
Source : Local
E-Tree : Root
3700 MPLS 0 10.255.2.8
TEPid : 0x02000002
PMSI Type: 6
Nexthop: 10.255.2.8
Label : 507882
SR-TE Info: N/A
Source : Remote
E-Tree : Root
AS65002 側 PE (rt12)
user@rt12> show route table evpn-3700.evpn.0
evpn-3700.evpn.0: 8 destinations, 12 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
1:10.255.1.1:1::0132::FFFF:FFFF/192 AD/ESI
*[BGP/170] 2d 00:11:42, localpref 300, from 10.255.2.5
AS path: 65001 I, validation-state: unverified
to 10.2.4.1 via et-0/0/1.0, Push 16009
> to 10.2.16.2 via et-0/0/2.0, Push 16009
[BGP/170] 2d 00:11:42, localpref 300, from 10.255.2.25
AS path: 65001 I, validation-state: unverified
to 10.2.4.1 via et-0/0/1.0, Push 16009
> to 10.2.16.2 via et-0/0/2.0, Push 16009
1:10.255.1.1:3700::0132::0/192 AD/EVI
*[BGP/170] 2d 00:11:42, localpref 300, from 10.255.2.5
AS path: 65001 I, validation-state: unverified
> to 10.2.4.1 via et-0/0/1.0, Push 16009
to 10.2.16.2 via et-0/0/2.0, Push 16009
[BGP/170] 2d 00:11:42, localpref 300, from 10.255.2.25
AS path: 65001 I, validation-state: unverified
> to 10.2.4.1 via et-0/0/1.0, Push 16009
to 10.2.16.2 via et-0/0/2.0, Push 16009
1:10.255.2.8:3700::1607::0/192 AD/EVI
*[EVPN/170] 14w1d 00:55:46
Indirect
2:10.255.1.1:3700::0::00:0c:29:f0:5a:13/304 MAC/IP
*[BGP/170] 2d 00:11:42, localpref 300, from 10.255.2.5
AS path: 65001 I, validation-state: unverified
> to 10.2.4.1 via et-0/0/1.0, Push 16009
to 10.2.16.2 via et-0/0/2.0, Push 16009
[BGP/170] 2d 00:11:42, localpref 300, from 10.255.2.25
AS path: 65001 I, validation-state: unverified
> to 10.2.4.1 via et-0/0/1.0, Push 16009
to 10.2.16.2 via et-0/0/2.0, Push 16009
2:10.255.2.8:3700::0::00:0c:29:1f:dd:c8/304 MAC/IP
*[EVPN/170] 00:11:41
Indirect
2:10.255.2.8:3700::0::00:0c:29:1f:dd:c8::192.168.33.3/304 MAC/IP
*[EVPN/170] 00:06:33
Indirect
3:10.255.1.1:3700::0::10.255.1.1/248 IM
*[BGP/170] 2d 00:11:42, localpref 300, from 10.255.2.5
AS path: 65001 I, validation-state: unverified
to 10.2.4.1 via et-0/0/1.0, Push 16009
> to 10.2.16.2 via et-0/0/2.0, Push 16009
[BGP/170] 2d 00:11:42, localpref 300, from 10.255.2.25
AS path: 65001 I, validation-state: unverified
to 10.2.4.1 via et-0/0/1.0, Push 16009
> to 10.2.16.2 via et-0/0/2.0, Push 16009
3:10.255.2.8:3700::0::10.255.2.8/248 IM
*[EVPN/170] 15w6d 23:38:46
Indirect
疎通試験
各 EVI について、ce01 から ping で ce02 への疎通確認を行います。
EVI 3600 (192.168.32.0/24)
user@ce01:~$ ping 192.168.32.2 -c 5 PING 192.168.32.2 (192.168.32.2) 56(84) bytes of data. 64 bytes from 192.168.32.2: icmp_seq=1 ttl=64 time=1.92 ms 64 bytes from 192.168.32.2: icmp_seq=2 ttl=64 time=2.02 ms 64 bytes from 192.168.32.2: icmp_seq=3 ttl=64 time=1.92 ms 64 bytes from 192.168.32.2: icmp_seq=4 ttl=64 time=1.96 ms 64 bytes from 192.168.32.2: icmp_seq=5 ttl=64 time=2.10 ms --- 192.168.32.2 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4006ms rtt min/avg/max/mdev = 1.919/1.984/2.096/0.067 ms
EVI 3700 (192.168.33.0/24)
user@ce01:~$ ping 192.168.33.2 -c 5 PING 192.168.33.2 (192.168.33.2) 56(84) bytes of data. 64 bytes from 192.168.33.2: icmp_seq=1 ttl=64 time=1.66 ms 64 bytes from 192.168.33.2: icmp_seq=2 ttl=64 time=1.50 ms 64 bytes from 192.168.33.2: icmp_seq=3 ttl=64 time=1.59 ms 64 bytes from 192.168.33.2: icmp_seq=4 ttl=64 time=1.49 ms 64 bytes from 192.168.33.2: icmp_seq=5 ttl=64 time=1.46 ms --- 192.168.33.2 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4007ms rtt min/avg/max/mdev = 1.461/1.541/1.660/0.073 ms
パケットが転送でき、VPN が構築できていることが確認できました。
以上、2パターンの組み合わせで L2VPN が構築できている事が確認できました。
制約事項
2023/8/21 現在、L2VPN の Option-B シグナリングは IOS XR と SR OS で可能です。 しかし、相互接続において IOS XR と SR OS で Option-B によるシグナリング時の type3 経路 (IMET route) の解釈違いがありました。 解釈違いによって IOS XR を PE、SR OS を ASBR とする組み合わせの場合に AS を越えて BUM トラフィックが通らないことにご注意ください。
まとめ
IOS XR 、Junos と SR OS の Multi-vendor 環境における Multi-AS L2VPN の検証結果を紹介しました。 次回の記事では、同様の Multi-vendor 環境における Color-Based TE について紹介予定です。
(2023/9/4 追記) 公開しました:[Multi-AS Segment Routing 検証連載 #14] Color-Based Steering using IOS XR, Junos and SR OS