インターンシップ体験記 〜SR-MPLS IPv6 Underlay 相互接続検証〜

はじめに

こんにちは、インターンシップ生の大平です。

2023年2月にNTTコミュニケーションズで開催された2週間の現場受け入れ型インターンシップに参加させていただきました。 普段は大学でエッジコンピューティングに関する研究をしています。

今回のインターンシップでは「SR (セグメントルーティング) を用いたキャリアネットワークの開発」というテーマで、 IPv6 Single/Dual-Stack SR-MPLSを検証しました。 この記事ではインターンシップの体験記として、どのような内容に取り組んだかを紹介します。

インターンシップに参加するまで

以前からカンファレンスネットワークの構築などでNTTコミュニケーションズの取り組みに触れる機会や社員の方とお話しする機会があり、会社の雰囲気やどのような業務をしているのかに興味を持ちインターンシップへの参加を決めました。 また、セグメントルーティングについては、以前から大まかな概要については知っていましたが実際に触れたことはなかったため、この機会に学んでみたいと考えたのも理由の1つです。

インターンシップで取り組んだこと

今回のインターンシップではマルチベンダー(Cisco、Juniper、Nokia)の機器が相互接続したIPv6 Single/Dual-Stack SR-MPLSを検証しました。 NTT Comが提案する mutli-AS SR は、役割や機能、地理的に異なるSR網を複数のASに分離し、疎結合に構成しつつEnd-to-EndにTE を行う独自のアーキテクチャとなっています。 multi-AS SRのユースケースの1つとして、SR-MPLSのASにIPv6 Underlayを敷設することによるSRv6 Migrationがありますが、2022年時点ではSR-MPLS IPv6 Underlayの実用例は存在しません。 そこでこの検証では、IPv6 Underlayで得られるPlug-and-Playなネットワーク構築やSRv6 Migrationなどのメリットを整理するとともに、現時点の実装で出来ることと出来ないことを洗い出すことを目的としています。

インターンシップの最初の1週間では、同一ベンダーの機器同士でIPv6 Single-Stack構成のSR-MPLSを構築しました。 これにより、各ベンダーの機器における基本的なSR-MPLSの機能を理解できました。 次に、マルチベンダーの機器同士でIPv6 Single-Stack構成のSR-MPLSを構築しました。 最後に、IPv4/IPv6 Dual-Stack構成のSR-MPLSを検証し、各ベンダーでできること・できないことの洗い出しを行いました。

以下では、SR-MPLSについてや検証の手順を説明します。

SR-MPLSについて

SR-MPLSは、データプレーンにMPLSを利用したセグメントルーティングです。

MPLSはパケットの転送情報をラベルで表現するフォワーディング技術です。 ラベルが付与されたパケットを受け取ったルーターは、MPLS Tableを参照し、ラベルを変換しつつパケットを転送します。

セグメントルーティングはパケットの転送情報をセグメントとして表現し、パケットに付与したセグメントリストに従ってパケットを転送するソースルーティングのパラダイムに沿ったルーティング技術です。 セグメントリストはパケットのヘッダーに追加され、各ルーターはこれに従って転送処理を行います。 このため、従来の経路制御技術よりも柔軟なトラフィックエンジニアリング可能となり、経路の最適化やネットワークリソースの効率的な利用などを実現できます。

検証手順

今回の検証では、下記の図のようなトポロジーを作成します。

このトポロジーでは9つのルーターからなるSR domainをコア網として構成し、3つの顧客を収容することを想定しています。

今回使用する機器は以下のとおりです。

  • rt01, rt04, rt07: IOS XR 7.4.1
  • rt02, rt05, rt08: JUNOS 22.3R1.11
  • rt03, rt06, rt09: SR OS 22.7.R1
  • v6-cust01, v6-cust02: Ubuntu Server 22.04

この検証では、以下のWebページを参考にIPv6 Underlayを検証しました。

基本設定

インターフェースのIPv6有効化とLoopbackインターフェースを設定します。 そして、インターフェースに付与されたリンクローカルアドレスを用いてルータ同士の疎通確認を行います。

IS-ISの設定

IS-ISを用いてSR-MPLSのSID情報を広告します。 各ルーターにIS-ISを設定し、IS-ISネイバーがUpしていることとSID TableにSID情報が登録されていることを確認します。

Cisco

  • IS-ISネイバーの確認
RP/0/RP0/CPU0:v6-rt01#show isis neighbors

IS-IS 1 neighbors:
System Id      Interface        SNPA           State Holdtime Type IETF-NSF
v6-rt04        Gi0/0/0/0        *PtoP*         Up    22       L2   Capable
v6-rt05        Gi0/0/0/1        *PtoP*         Up    25       L2   Capable
  • SID Table (MPLS Table) の確認
RP/0/RP0/CPU0:v6-rt01#show mpls forwarding
Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes
Label  Label       or ID              Interface                    Switched
------ ----------- ------------------ ------------ --------------- ------------
16002  16002       SR Pfx (idx 2)     Gi0/0/0/0    fe80::20c:29ff:fe3e:f7e8   \
                                                                   2192
       16002       SR Pfx (idx 2)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   0
16003  16003       SR Pfx (idx 3)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   2594
16004  Pop         SR Pfx (idx 4)     Gi0/0/0/0    fe80::20c:29ff:fe3e:f7e8   \
                                                                   1501
16005  Pop         SR Pfx (idx 5)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   2662
16006  16006       SR Pfx (idx 6)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   2602
16007  16007       SR Pfx (idx 7)     Gi0/0/0/0    fe80::20c:29ff:fe3e:f7e8   \
                                                                   1433
       16007       SR Pfx (idx 7)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   0
16008  16008       SR Pfx (idx 8)     Gi0/0/0/0    fe80::20c:29ff:fe3e:f7e8   \
                                                                   0
       16008       SR Pfx (idx 8)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   2654
16009  16009       SR Pfx (idx 9)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   2662
24000  Pop         SR Adj (idx 1)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   0
24001  Pop         SR Adj (idx 3)     Gi0/0/0/1    fe80::20c:29ff:feb0:78e2   \
                                                                   0
24002  Pop         SR Adj (idx 1)     Gi0/0/0/0    fe80::20c:29ff:fe3e:f7e8   \
                                                                   0
24003  Pop         SR Adj (idx 3)     Gi0/0/0/0    fe80::20c:29ff:fe3e:f7e8   \
                                                                   0
24004  Aggregate   100: Per-VRF Aggr[V]   \
                                      100                          0

Juniper

  • IS-ISネイバーの確認
user@v6-rt02> show isis adjacency
Interface             System         L State         Hold (secs) SNPA
ge-0/0/0.0            v6-rt04        2  Up                    26
ge-0/0/1.0            v6-rt05        2  Up                    18
ge-0/0/2.0            v6-rt06        2  Up                    23
  • SID Table (MPLS Table) の確認
user@v6-rt02> show route table mpls.0

mpls.0: 31 destinations, 31 routes (31 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

0                  *[MPLS/0] 00:12:33, metric 1
                       to table inet.0
0(S=0)             *[MPLS/0] 00:12:33, metric 1
                       to table mpls.0
1                  *[MPLS/0] 00:12:33, metric 1
                       Receive
2                  *[MPLS/0] 00:12:33, metric 1
                       to table inet6.0
2(S=0)             *[MPLS/0] 00:12:33, metric 1
                       to table mpls.0
13                 *[MPLS/0] 00:12:33, metric 1
                       Receive
16                 *[VPN/0] 00:12:33
                    >  via lsi.0 (100), Pop
17                 *[VPN/0] 00:12:33
                    >  via lsi.1 (200), Pop
18                 *[VPN/0] 00:12:33
                    >  via lsi.2 (300), Pop
19                 *[L-ISIS/14] 00:11:01, metric 0
                    >  to 10.2.5.5 via ge-0/0/1.0, Pop
19(S=0)            *[L-ISIS/14] 00:11:01, metric 0
                    >  to 10.2.5.5 via ge-0/0/1.0, Pop
20                 *[L-ISIS/14] 00:11:01, metric 0
                    >  to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Pop
20(S=0)            *[L-ISIS/14] 00:11:01, metric 0
                    >  to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Pop
21                 *[L-ISIS/14] 00:10:36, metric 0
                    >  to 10.2.6.6 via ge-0/0/2.0, Pop
21(S=0)            *[L-ISIS/14] 00:10:36, metric 0
                    >  to 10.2.6.6 via ge-0/0/2.0, Pop
22                 *[L-ISIS/14] 00:10:36, metric 0
                    >  to fe80::38:ffff:fe00:0 via ge-0/0/2.0, Pop
22(S=0)            *[L-ISIS/14] 00:10:36, metric 0
                    >  to fe80::38:ffff:fe00:0 via ge-0/0/2.0, Pop
23                 *[L-ISIS/14] 00:08:46, metric 0
                    >  to 10.2.4.4 via ge-0/0/0.0, Pop
23(S=0)            *[L-ISIS/14] 00:08:46, metric 0
                    >  to 10.2.4.4 via ge-0/0/0.0, Pop
24                 *[L-ISIS/14] 00:08:36, metric 0
                    >  to fe80::20c:29ff:fe3e:f7fc via ge-0/0/0.0, Pop
24(S=0)            *[L-ISIS/14] 00:08:36, metric 0
                    >  to fe80::20c:29ff:fe3e:f7fc via ge-0/0/0.0, Pop
16001              *[L-ISIS/14] 00:08:31, metric 30
                       to fe80::20c:29ff:fe3e:f7fc via ge-0/0/0.0, Swap 16001
                    >  to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Swap 16001
16003              *[L-ISIS/14] 00:10:36, metric 20
                       to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Swap 16003
                    >  to fe80::38:ffff:fe00:0 via ge-0/0/2.0, Swap 16003
16004              *[L-ISIS/14] 00:08:36, metric 20
                    >  to fe80::20c:29ff:fe3e:f7fc via ge-0/0/0.0, Pop
16004(S=0)         *[L-ISIS/14] 00:08:36, metric 20
                    >  to fe80::20c:29ff:fe3e:f7fc via ge-0/0/0.0, Pop
16005              *[L-ISIS/14] 00:11:01, metric 10
                    >  to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Pop
16005(S=0)         *[L-ISIS/14] 00:11:01, metric 10
                    >  to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Pop
16006              *[L-ISIS/14] 00:10:36, metric 10
                    >  to fe80::38:ffff:fe00:0 via ge-0/0/2.0, Swap 16006
16007              *[L-ISIS/14] 00:08:36, metric 30
                       to fe80::20c:29ff:fe3e:f7fc via ge-0/0/0.0, Swap 16007
                    >  to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Swap 16007
16008              *[L-ISIS/14] 00:08:31, metric 20
                       to fe80::20c:29ff:fe3e:f7fc via ge-0/0/0.0, Swap 16008
                       to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Swap 16008
                    >  to fe80::38:ffff:fe00:0 via ge-0/0/2.0, Swap 16008
16009              *[L-ISIS/14] 00:10:31, metric 20
                       to fe80::20c:29ff:feb0:7800 via ge-0/0/1.0, Swap 16009
                    >  to fe80::38:ffff:fe00:0 via ge-0/0/2.0, Swap 16009

Nokia

  • IS-ISネイバーの確認
[/]
A:user@v6-rt03# show router isis adjacency

===============================================================================
Rtr Base ISIS Instance 0 Adjacency
===============================================================================
System ID                Usage State Hold Interface                     MT-ID
-------------------------------------------------------------------------------
v6-rt06                  L2    Up    24   if-to-rt06                    0
v6-rt05                  L2    Up    21   if-to-rt05                    0
-------------------------------------------------------------------------------
Adjacencies : 2
===============================================================================
  • SID Table (MPLS Table) の確認
[/]
A:user@v6-rt03# tools dump router segment-routing tunnel
===================================================================================================
Legend: (B) - Backup Next-hop for Fast Re-Route
        (D) - Duplicate
label stack is ordered from top-most to bottom-most
===================================================================================================
--------------------------------------------------------------------------------------------------+
 Prefix                                                                                           |
 Sid-Type        Fwd-Type       In-Label  Prot-Inst(algoId)                                       |
                 Next Hop(s)                                     Out-Label(s) Interface/Tunnel-ID |
--------------------------------------------------------------------------------------------------+
 fd00:ffff::1
 Node            Orig/Transit   16001     ISIS-0
                 fe80::20c:29ff:feb0:7814                        16001       if-to-rt05
 fd00:ffff::2
 Node            Orig/Transit   16002     ISIS-0
                 fe80::20c:29ff:feb0:7814                        16002       if-to-rt05
 fd00:ffff::3
 Node            Terminating    16003     ISIS-0
 fd00:ffff::4
 Node            Orig/Transit   16004     ISIS-0
                 fe80::20c:29ff:feb0:7814                        16004       if-to-rt05
 fd00:ffff::5
 Node            Orig/Transit   16005     ISIS-0
                 fe80::20c:29ff:feb0:7814                        3           if-to-rt05
 fd00:ffff::6
 Node            Orig/Transit   16006     ISIS-0
                 fe80::38:ffff:fe00:0                            16006       if-to-rt06
 fd00:ffff::7
 Node            Orig/Transit   16007     ISIS-0
                 fe80::20c:29ff:feb0:7814                        16007       if-to-rt05
 fd00:ffff::8
 Node            Orig/Transit   16008     ISIS-0
                 fe80::20c:29ff:feb0:7814                        16008       if-to-rt05
 fd00:ffff::9
 Node            Orig/Transit   16009     ISIS-0
                 fe80::20c:29ff:feb0:7814                        16009       if-to-rt05
 fe80::20c:29ff:feb0:7814-"if-to-rt05"
 Adjacency       Transit        524283    ISIS-0
                 fe80::20c:29ff:feb0:7814                        3           if-to-rt05
 10.3.5.5
 Adjacency       Transit        524284    ISIS-0
                 10.3.5.5                                        3           if-to-rt05
 fe80::38:ffff:fe00:0-"if-to-rt06"
 Adjacency       Transit        524285    ISIS-0
                 fe80::38:ffff:fe00:0                            3           if-to-rt06
 10.3.6.6
 Adjacency       Transit        524287    ISIS-0
                 10.3.6.6                                        3           if-to-rt06
--------------------------------------------------------------------------------------------------+
No. of Entries: 13
--------------------------------------------------------------------------------------------------+

VRF、MP-BGP VPNv6の設定

MP-BGP VPNv6を用いて、顧客のVRFの経路を広告します。 各PEルーターにVRF及びMP-BGP VPNv6を設定します。 そして、BGPネイバーの状態と顧客の経路(VRFの経路)が登録されていることを確認します。

Cisco

  • BGPネイバーの確認
RP/0/RP0/CPU0:v6-rt01#show bgp vpnv6 unicast summary
BGP router identifier 10.254.1.1, local AS number 65000
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0x0   RD version: 0
BGP main routing table version 23
BGP NSR Initial initsync version 20 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

BGP is operating in STANDALONE mode.


Process       RcvTblVer   bRIB/RIB   LabelVer  ImportVer  SendTblVer  StandbyVer
Speaker              23         23         23         23          23           0

Neighbor        Spk    AS MsgRcvd MsgSent   TblVer  InQ OutQ  Up/Down  St/PfxRcd
fd00:ffff::2      0 65000      53      48       23    0    0 00:22:42          1
fd00:ffff::3      0 65000      49      48       23    0    0 00:22:41          1
fd00:ffff::4      0 65000      24      25       23    0    0 00:22:38          0
fd00:ffff::5      0 65000      52      48       23    0    0 00:22:42          0
fd00:ffff::6      0 65000      48      48       23    0    0 00:22:39          0
fd00:ffff::7      0 65000      26      25       23    0    0 00:22:41          1
fd00:ffff::8      0 65000      53      48       23    0    0 00:22:40          1
fd00:ffff::9      0 65000      49      48       23    0    0 00:22:40          1
  • VRFの経路確認
RP/0/RP0/CPU0:v6-rt01#show route vrf 100 ipv6

Codes: C - connected, S - static, R - RIP, B - BGP, (>) - Diversion path
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - ISIS, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, su - IS-IS summary null, * - candidate default
       U - per-user static route, o - ODR, L - local, G  - DAGR, l - LISP
       A - access/subscriber, a - Application route
       M - mobile route, r - RPL, t - Traffic Engineering, (!) - FRR Backup path

Gateway of last resort is not set

C    fd00:100:1::/64 is directly connected,
      00:23:23, GigabitEthernet0/0/0/2
L    fd00:100:1::ffff/128 is directly connected,
      00:23:23, GigabitEthernet0/0/0/2
B    fd00:100:2::/64
      [200/0] via fd00:ffff::8 (nexthop in vrf default), 00:21:23

Juniper

  • BGPネイバーの確認
user@v6-rt02> show bgp summary
Threading mode: BGP I/O
Default eBGP mode: advertise - accept, receive - accept
Groups: 1 Peers: 8 Down peers: 0
Table          Tot Paths  Act Paths Suppressed    History Damp State    Pending
bgp.l3vpn-inet6.0
                       5          5          0          0          0          0
Peer                     AS      InPkt     OutPkt    OutQ   Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped...
fd00:ffff::1          65000         52         55       0       0       24:15 Establ
  bgp.l3vpn-inet6.0: 1/1/1/0
  100.inet6.0: 1/1/1/0
fd00:ffff::3          65000         57         59       0       0       26:18 Establ
  bgp.l3vpn-inet6.0: 1/1/1/0
  300.inet6.0: 1/1/1/0
fd00:ffff::4          65000         50         55       0       0       24:18 Establ
  bgp.l3vpn-inet6.0: 0/0/0/0
fd00:ffff::5          65000         60         59       0       0       26:25 Establ
  bgp.l3vpn-inet6.0: 0/0/0/0
fd00:ffff::6          65000         56         59       0       0       26:16 Establ
  bgp.l3vpn-inet6.0: 0/0/0/0
fd00:ffff::7          65000         52         55       0       0       24:17 Establ
  bgp.l3vpn-inet6.0: 1/1/1/0
  300.inet6.0: 1/1/1/0
fd00:ffff::8          65000         61         59       0       0       26:12 Establ
  bgp.l3vpn-inet6.0: 1/1/1/0
  100.inet6.0: 1/1/1/0
fd00:ffff::9          65000         57         59       0       0       26:17 Establ
  bgp.l3vpn-inet6.0: 1/1/1/0
  200.inet6.0: 1/1/1/0
  • VRFの経路確認
user@v6-rt02> show route table 200.inet6.0

200.inet6.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

fd00:200:1::/64    *[Direct/0] 00:27:19
                    >  via ge-0/0/3.0
fd00:200:1::ffff/128
                   *[Local/0] 00:27:19
                       Local via ge-0/0/3.0
fd00:200:2::/64    *[BGP/170] 00:24:54, localpref 100, from fd00:ffff::9
                      AS path: I, validation-state: unverified
                    >  to fe80::20c:29ff:fe3e:f7fc via ge-0/0/0.0, Push 524286, Push 16009, Push 16005(top)
fe80::20c:29ff:fe57:ca87/128
                   *[Local/0] 00:27:19
                       Local via ge-0/0/3.0
ff02::2/128        *[INET6/0] 00:28:50
                       MultiRecv

Nokia

  • BGPネイバーの確認
[/]
A:user@v6-rt03# show router bgp summary
<snip.>
===============================================================================
BGP Summary
===============================================================================
Legend : D - Dynamic Neighbor
===============================================================================
Neighbor
Description
                   AS PktRcvd InQ  Up/Down   State|Rcv/Act/Sent (Addr Family)
                      PktSent OutQ
-------------------------------------------------------------------------------
fd00:ffff::1
                65000      31    0 00h14m08s 0/0/1 (VpnIPv6)
                           33    0
fd00:ffff::2
                65000      39    0 00h16m12s 0/0/1 (VpnIPv6)
                           38    0
fd00:ffff::4
                65000      31    0 00h14m14s 0/0/1 (VpnIPv6)
                           33    0
fd00:ffff::5
                65000      38    0 00h16m12s 0/0/1 (VpnIPv6)
                           37    0
fd00:ffff::6
                65000      39    0 00h17m33s 0/0/1 (VpnIPv6)
                           40    0
fd00:ffff::7
                65000      32    0 00h14m07s 1/1/1 (VpnIPv6)
                           33    0
fd00:ffff::8
                65000      40    0 00h16m34s 0/0/1 (VpnIPv6)
                           38    0
fd00:ffff::9
                65000      40    0 00h17m33s 0/0/1 (VpnIPv6)
                           40    0
-------------------------------------------------------------------------------
  • VRFの経路確認
[/]
A:user@v6-rt03# show router service-name "300" route-table ipv6

===============================================================================
IPv6 Route Table (Service: 300)
===============================================================================
Dest Prefix[Flags]                            Type    Proto     Age        Pref
      Next Hop[Interface Name]                                    Metric
-------------------------------------------------------------------------------
fd00:300:1::/64                               Local   Local     00h21m21s  0
       if-to-cust01                                                 0
fd00:300:2::/64                               Remote  BGP VPN   00h16m08s  170
       fd00:ffff::7 (tunneled:SR-ISIS:524298)                       30
-------------------------------------------------------------------------------
No. of Routes: 2
Flags: n = Number of times nexthop is repeated
       B = BGP backup route available
       L = LFA nexthop available
       S = Sticky ECMP requested
===============================================================================

tracerouteを用いた動作確認とSR-MPLS TE(Traffic Engneering)の設定について

各ルータでtracerouteコマンドを用いて想定した経路でパケットが転送されていることを確認します。

ここではrt07 (Cisco) とrt03 (Nokia) でのping/traceroute例を示します。

RP/0/RP0/CPU0:v6-rt07#traceroute fd00:300:1::ffff vrf 300
Thu Apr 13 09:54:05.712 UTC

Type escape sequence to abort.
Tracing the route to fd00:300:1::ffff

 1  fd00:ffff::5 [MPLS: Labels 16003/524286 Exp 0] 4 msec 5 msec 12 msec
 2  fd00:300:1::ffff 3 msec 12 msec 3 msec
[/admin]
A:user@v6-rt03# traceroute fd00:300:2::ffff router-instance "300" detail probe-count 1
traceroute to fd00:300:2::ffff, 30 hops max, 60 byte packets
  1   1  fd00:300:2::ffff  (fd00:300:2::ffff)  2.91 ms

以降は各PEルーターでSR Policyを設定し、広告する各VRFごとにColor Extended Communityを付加します。 そして、対向のPEルーターで受け取った経路にColorが付加されていることと対向の顧客への経路にSR Policyが適用されていることを確認します。

今回の検証では、機器の実装状況等の理由からIPv6 UnderlayでのSR Policyの動作確認はできませんでした。

検証例と成果

今回のインターンシップでは、動作確認のためこのような表を作成し検証を実施しました。

この体験記では、動作に成功した内容のうち、一部を紹介させて頂きました。

SR-MPLSのSID学習については各ベンダーで概ね動作し、学習したSIDを利用しての相互接続や通信にも成功しました。 またIPv6 Underlayを用いたSR-MPLS網の構築では、ルーターに自動的に設定されるリンクローカルアドレスを用いてIS-ISのルーティングを行うことができ、IPv4 Underlayと比較して効率的な構築が可能でした。

一方、今回の検証ではIPv6 Single/Dual-Stackの双方において、TEの設定を投入した際に想定通りの動作をしない事象が見られました。 これらの動作結果については、検証中の部分もあり実際の結果の掲載は控えますが、動かなかった場合の詳細な症状やメッセージなどをまとめることで、その後のメーカーへの問合せにつなげることができました。

インターンシップの感想

インターンシップに参加する前は、SR-MPLSという技術について全く知識がなかったため、業務を無事に進められるか非常に不安でした。 しかし、インターンシップではトレーナーの方々のサポートを受けながら、問題に直面しつつも楽しく検証作業を進めることができました。

SR-MPLS IPv6 Underlayを検証する中で、前提となるSR-MPLSの動作など、技術に関する知識や理解を深めておくことの重要性を感じました。 SRやその周辺技術については今後も継続して学習を続けたいと考えています。

業務以外の部分では、オフィスの見学やMTGへの参加、交流会や懇親会などを通じて、受け入れていただいたチームの雰囲気や別のチームの業務内容などを知るとともに会社全体のイメージを掴むことが出来ました。

最後にはなりますが、2週間のインターンシップで数々の貴重な経験をさせていただき、心から感謝しています。 竹中さん、三島さん、木村さんありがとうございました。

トレーナーからのコメント

トレーナーの三島です。2週間のインターンシップお疲れ様でした!

インターンシップで検証した、IPv6 Underlay SR-MPLSの相互接続は、我々を含めおそらく業界でも誰も試したことがない難易度の高いテーマでした。 その中でも、SRに関する事前学習や検証項目の整理や環境構築から動作結果をまとめたレポートの作成、ベンダへの問い合わせ項目の作成まで検証の一連の流れを一人称で進めていただけたこと、とても嬉しく思っております。

IPv6 Underlay SR-MPLSは、Plug-and-Playなネットワーク構築やSRv6 Migrationなどの固有の利点をもった面白い技術です。
大平さんに検証していただいたことで、各社の実装状況や、IPv6 Underlayの持つ利点が明確になり、SRv6 Migration等に向けた下地を得ることができました! 検証いただいた内容を基に我々も検証を進め、今後のネットワーク作りに役立てていきたいと思います。

このインターンシップで得た知見が、今後の大平さんの研究活動に役立つことを祈っています。 改めて、インターンシップへの参加とご活躍ありがとうございました!

© NTT Communications Corporation All Rights Reserved.