NSX-T BGP ルート集約

今回はNSX-Tにおける、BGPのルート集約の検証証跡をまとめました。

 

概要

ルート集約について

以下のように、10.1.1.0/24~10.1.254.0/24の254個のSegmentが存在する状況で、BGPを動作させた場合、物理ネットワーク側に254個のルート情報が広報されてしまいます。

 

このような状況において、ルート集約を使用することで、物理ネットワーク側に広報されるルート情報数を大幅に削減可能です。

 

ルート集約を実施した際はルーティングループが発生する可能性があります。例えば、下図において、R2が10.1.3.1宛のパケットを受信したとします。この際、R2はR1から学習した集約ルートを基に、10.1.3.1宛のパケットをR1に転送します。
しかし、R1側には10.1.3.1を含むセグメントは存在しないため、R1はR2から学習したデフォルトルートを基に、10.1.3.1宛のパケットをR2に転送します。
この結果、10.1.3.1宛のパケットはR1とR2間で転送され続けます。

 

上記のようなルーティングループを防止するために、ルート集約を実施したルータのルーティングテーブルには、集約ルートの10.1.0.0/16がDiscard Route(ネクストホップがNULLのルート情報)として投入されます。この結果、R1は10.1.3.1宛のパケットを受信した際、R2にパケットを転送せずに、破棄することが可能です。

 

検証結果

検証内容、構成

Tier-1 GWでSegment 1とSegment 2を収容します。
Tier-1 GWとTier-0 GWを接続します。
NSX EdgeにTier-0 GWのSRを配置し、物理ネットワークとNSX-Tの仮想ネットワークを接続します。

Tier-0 GWのSRをAS 100、R3をAS 200として、EBGPネイバーを構築します。
Tier-0 GWのSRはBGP経由で10.1.1.0/24と10.2.2.0/24を広報します。

この状況で、Tier-0 GWのSRにおいて、BGPのルート集約を設定した際の動作を確認します。

 

ネットワーク機器のCLIの設定


interface GigabitEthernet2
 ip address 10.1.1.1 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 10.1.1.254
            


interface GigabitEthernet2
 ip address 10.2.2.2 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 10.2.2.254
            


interface GigabitEthernet2
 ip address 20.1.1.100 255.255.255.0
!
router bgp 200
 bgp router-id 3.3.3.3
 neighbor 20.1.1.1 remote-as 100
            

 

ルート集約無し

Tier-0 GWのSRにおいて、BGPのルート集約が無効な場合の動作を確認します。

 

BGPの設定

最初、ルート集約の設定はしません。

 

状態確認

Tier-0 GWのSRのBGPテーブルに10.1.1.0/24と10.2.2.0/24が存在することが確認できます。

NSX Edge1

edge1(tier0_sr)> get bgp
BGP IPv4 table version is 70, BGP IPv6 table version is 0
Local router ID is 20.1.1.1
Status flags: > - best, I - internal
Origin flags: i - IGP, e - EGP, ? - incomplete

EVPN type-2 prefix: [2]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP]
EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP]
EVPN type-4 prefix: [4]:[ESI]:[IPlen]:[OrigIP]
EVPN type-5 prefix: [5]:[EthTag]:[IPlen]:[IP]

   Network      Next Hop      Metric  LocPrf  Weight  Path   RD
 > 10.2.2.0/24  100.64.128.1  0       100     32768   100 ?
 > 10.1.1.0/24  100.64.128.1  0       100     32768   100 ?
            

 

Tier-0 GWのSRは、R3に対して10.1.1.0/24と10.2.2.0/24を広報していることが確認できます。

NSX Edge1

edge1(tier0_sr)> get bgp
BGP IPv4 table version is 70, BGP IPv6 table version is 0
Local router ID is 20.1.1.1
Status flags: > - best, I - internal
Origin flags: i - IGP, e - EGP, ? - incomplete

EVPN type-2 prefix: [2]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP]
EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP]
EVPN type-4 prefix: [4]:[ESI]:[IPlen]:[OrigIP]
EVPN type-5 prefix: [5]:[EthTag]:[IPlen]:[IP]

   Network      Next Hop      Metric  LocPrf  Weight  Path   RD
 > 10.2.2.0/24  100.64.128.1  0       100     32768   100 ?
 > 10.1.1.0/24  100.64.128.1  0       100     32768   100 ?
            

 

R3のBGPテーブルを見ると、R3はTier-0 GWのSRから10.1.1.0/24と10.2.2.0/24を学習していることが確認できます。

R3

R3#show ip bgp
BGP table version is 17, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
              t secondary path, L long-lived-stale,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric  LocPrf  Weight  Path
 *>  10.1.1.0/24      20.1.1.1                 0               0  100 ?
 *>  10.2.2.0/24      20.1.1.1                 0               0  100 ?
            

 

ルート集約有り , 集約ルートのみ広報

Tier-0 GWのSRにおいて、BGPで10.0.0.0/8の集約ルートを生成します。そして、R3に対して、集約ルートのみ広報します。

 

 

BGPの設定

BGPで集約ルートとして10.0.0.0/8を設定します。サマリのみはいを指定した場合、集約ルートのみ広報されます。

 

状態確認

Tier-0 GWのSRのBGPテーブルには10.1.1.0/24と10.2.2.0/24に加えて、集約ルートの10.0.0.0/8が存在することが確認できます。

NSX Edge1

edge1(tier0_sr)> get bgp
BGP IPv4 table version is 70, BGP IPv6 table version is 0
Local router ID is 20.1.1.1
Status flags: > - best, I - internal
Origin flags: i - IGP, e - EGP, ? - incomplete

EVPN type-2 prefix: [2]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP]
EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP]
EVPN type-4 prefix: [4]:[ESI]:[IPlen]:[OrigIP]
EVPN type-5 prefix: [5]:[EthTag]:[IPlen]:[IP]

   Network      Next Hop      Metric  LocPrf  Weight  Path   RD
 > 10.2.2.0/24  100.64.128.1  0       100     32768   100 ?
 > 10.0.0.0/8   0.0.0.0       0       100     32768   100 ?
 > 10.1.1.0/24  100.64.128.1  0       100     32768   100 ?
            

 

Tier-0 GWのSRは、R3に対して集約ルートの10.0.0.0/8のみ広報していることが確認できます。

NSX Edge1

edge1(tier0_sr)> get bgp
BGP IPv4 table version is 70, BGP IPv6 table version is 0
Local router ID is 20.1.1.1
Status flags: > - best, I - internal
Origin flags: i - IGP, e - EGP, ? - incomplete

EVPN type-2 prefix: [2]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP]
EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP]
EVPN type-4 prefix: [4]:[ESI]:[IPlen]:[OrigIP]
EVPN type-5 prefix: [5]:[EthTag]:[IPlen]:[IP]

   Network      Next Hop      Metric  LocPrf  Weight  Path   RD
 > 10.0.0.0/8   0.0.0.0       0       100     32768   100 ?
            

 

Tier-0 GWのSRのルーティングテーブルには、ネクストホップがNULLである集約ルートの10.0.0.0/8が存在することが確認できます。

NSX Edge1

edge1(tier0_sr)> get route

Flags: t0c - Tier0-Connected, t0s - Tier0-Static, b - BGP,
t0n - Tier0-NAT, t1s - Tier1-Static, t1c - Tier1-Connected,
t1n: Tier1-NAT, t1l: Tier1-LB VIP, t1ls: Tier1-LB SNAT,
t1d: Tier1-DNS FORWARDER, t1ipsec: Tier1-IPSec, isr: Inter-SR,
> - selected route, * - FIB route

Total number of routes: 8

b  > * 10.0.0.0/8 unreachable (blackhole), 00:02:24
t1c> * 10.1.1.0/24 [3/0] via 100.64.128.1, linked-333, 4d10h20m
t1c> * 10.2.2.0/24 [3/0] via 100.64.128.1, linked-333, 10:48:43
t0c> * 20.1.1.0/24 is directly connected, uplink-325, 01w0d11h
t0c> * 100.64.128.0/31 is directly connected, linked-333, 01w0d11h
t0c> * 169.254.0.0/24 is directly connected, downlink-327, 01w0d11h
t0c> * fcc3:7c30:4fbf:b800::/64 is directly connected, linked-333, 01w0d11h
t0c> * fe80::/64 is directly connected, linked-333, 01w0d11h
            

 

R3のBGPテーブルを見ると、R3はTier-0 GWのSRから集約ルートの10.0.0.0/8のみを学習していることが確認できます。

R3

R3#show ip bgp
BGP table version is 17, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
              t secondary path, L long-lived-stale,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric  LocPrf  Weight  Path
 *>  10.0.0.0         20.1.1.1                                 0  100 ?
            

 

ルート集約有り , 集約ルートと集約前ルートを広報

Tier-0 GWのSRにおいて、BGPで10.0.0.0/8の集約ルートを生成します。そして、R3に対して、集約ルートに加えて、集約前ルートも広報します。

 

 

BGPの設定

BGPで集約ルートとして10.0.0.0/8を設定します。サマリのみいいえを指定した場合、集約ルートに加えて、集約前ルートも広報されます。

 

状態確認

Tier-0 GWのSRのBGPテーブルには10.1.1.0/24と10.2.2.0/24に加えて、集約ルートの10.0.0.0/8が存在することが確認できます。

NSX Edge1

edge1(tier0_sr)> get bgp
BGP IPv4 table version is 70, BGP IPv6 table version is 0
Local router ID is 20.1.1.1
Status flags: > - best, I - internal
Origin flags: i - IGP, e - EGP, ? - incomplete

EVPN type-2 prefix: [2]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP]
EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP]
EVPN type-4 prefix: [4]:[ESI]:[IPlen]:[OrigIP]
EVPN type-5 prefix: [5]:[EthTag]:[IPlen]:[IP]

   Network      Next Hop      Metric  LocPrf  Weight  Path   RD
 > 10.2.2.0/24  100.64.128.1  0       100     32768   100 ?
 > 10.0.0.0/8   0.0.0.0       0       100     32768   100 ?
 > 10.1.1.0/24  100.64.128.1  0       100     32768   100 ?
            

 

Tier-0 GWのSRは、R3に対して集約ルートの10.0.0.0/8に加えて、集約前の10.1.1.0/24と10.2.2.0/24も広報していることが確認できます。

NSX Edge1

edge1(tier0_sr)> get bgp
BGP IPv4 table version is 70, BGP IPv6 table version is 0
Local router ID is 20.1.1.1
Status flags: > - best, I - internal
Origin flags: i - IGP, e - EGP, ? - incomplete

EVPN type-2 prefix: [2]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP]
EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP]
EVPN type-4 prefix: [4]:[ESI]:[IPlen]:[OrigIP]
EVPN type-5 prefix: [5]:[EthTag]:[IPlen]:[IP]

   Network      Next Hop      Metric  LocPrf  Weight  Path   RD
 > 10.2.2.0/24  100.64.128.1  0       100     32768   100 ?
 > 10.0.0.0/8   0.0.0.0       0       100     32768   100 ?
 > 10.1.1.0/24  100.64.128.1  0       100     32768   100 ?
            

 

Tier-0 GWのSRのルーティングテーブルには、ネクストホップがNULLである集約ルートの10.0.0.0/8が存在することが確認できます。

NSX Edge1

edge1(tier0_sr)> get route

Flags: t0c - Tier0-Connected, t0s - Tier0-Static, b - BGP,
t0n - Tier0-NAT, t1s - Tier1-Static, t1c - Tier1-Connected,
t1n: Tier1-NAT, t1l: Tier1-LB VIP, t1ls: Tier1-LB SNAT,
t1d: Tier1-DNS FORWARDER, t1ipsec: Tier1-IPSec, isr: Inter-SR,
> - selected route, * - FIB route

Total number of routes: 8

b  > * 10.0.0.0/8 unreachable (blackhole), 00:02:24
t1c> * 10.1.1.0/24 [3/0] via 100.64.128.1, linked-333, 4d10h20m
t1c> * 10.2.2.0/24 [3/0] via 100.64.128.1, linked-333, 10:48:43
t0c> * 20.1.1.0/24 is directly connected, uplink-325, 01w0d11h
t0c> * 100.64.128.0/31 is directly connected, linked-333, 01w0d11h
t0c> * 169.254.0.0/24 is directly connected, downlink-327, 01w0d11h
t0c> * fcc3:7c30:4fbf:b800::/64 is directly connected, linked-333, 01w0d11h
t0c> * fe80::/64 is directly connected, linked-333, 01w0d11h
            

 

R3のBGPテーブルを見ると、R3はTier-0 GWのSRから集約ルートの10.0.0.0/8に加えて、集約前ルートの10.1.1.0/24と10.2.2.0/24も学習していることが確認できます。

R3

R3#show ip bgp
BGP table version is 17, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
              t secondary path, L long-lived-stale,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric  LocPrf  Weight  Path
 *>  10.0.0.0         20.1.1.1                                 0  100 ?
 *>  10.1.1.0/24      20.1.1.1                 0               0  100 ?
 *>  10.2.2.0/24      20.1.1.1                 0               0  100 ?
            

コメント

タイトルとURLをコピーしました