VPCルートサーバをEVS以外の使い道を考えてみる(応用編)
はじめに
- 今回はVPCルートサーバのもう少し応用編です。
- 複数のアプライアンス(vyos)をVPCルートサーバに接続してもう少し深く調べた内容をまとめます。
前回のまとめ
- VPCルータサーバはEVSのNSX Edgeの交換用にリリースされているサービス(多分)
- NSX EdgeやvyosなどとはeBGPで接続
- 経路はImportのみ。
- VPCルートサーバに渡した経路は、紐付けしたルートテーブルに反映する。(複数指定可能)
- Transit GatewayのRoute Tableには反映されない。
今回のまとめ
先に結論になりますが、今回のまとめです。
- 複数アプライアンスの接続は可能
- 経路の選定アルゴリズムはBGPの仕様に準拠
- AS-Path Prependは利用可能
今回の構成図とConfig
-
vyosのBGP関連のConfigはこちらです
vyos#1のAS番号は65103、vyos#2のAS番号は65104です。
Loopbackのアドレスだけが異なります。(172.20.255.1,172.20.255.2)
VPCルートサーバのAS番号は65102です。
vyos#1
set bgp address-family ipv4-unicast network 172.20.255.1/32
set bgp address-family ipv4-unicast redistribute static
set bgp neighbor 172.27.160.151 address-family ipv4-unicast nexthop-self
set bgp neighbor 172.27.160.151 address-family ipv4-unicast soft-reconfiguration inbound
set bgp neighbor 172.27.160.151 remote-as '65102'
set bgp neighbor 172.27.160.151 timers connect '10'
set bgp neighbor 172.27.160.151 timers holdtime '40'
set bgp neighbor 172.27.160.151 timers keepalive '10'
set bgp system-as '65103'
set static route 172.20.0.0/24 blackhole
set static route 172.20.1.0/24 blackhole
set static route 172.20.2.0/24 blackhole
set static route 172.20.3.0/24 blackhole
set static route 172.20.4.0/24 blackhole
set static route 172.20.5.0/24 blackhole
set static route 172.20.6.0/24 blackhole
set static route 172.20.7.0/24 blackhole
set static route 172.20.8.0/24 blackhole
set static route 172.20.9.0/24 blackhole
vyos#2
set bgp address-family ipv4-unicast network 172.20.255.2/32
set bgp address-family ipv4-unicast redistribute static
set bgp neighbor 172.27.160.151 address-family ipv4-unicast nexthop-self
set bgp neighbor 172.27.160.151 address-family ipv4-unicast soft-reconfiguration inbound
set bgp neighbor 172.27.160.151 remote-as '65102'
set bgp neighbor 172.27.160.151 timers connect '10'
set bgp neighbor 172.27.160.151 timers holdtime '40'
set bgp neighbor 172.27.160.151 timers keepalive '10'
set bgp system-as '65104'
set static route 172.20.0.0/24 blackhole
set static route 172.20.1.0/24 blackhole
set static route 172.20.2.0/24 blackhole
set static route 172.20.3.0/24 blackhole
set static route 172.20.4.0/24 blackhole
set static route 172.20.5.0/24 blackhole
set static route 172.20.6.0/24 blackhole
set static route 172.20.7.0/24 blackhole
set static route 172.20.8.0/24 blackhole
set static route 172.20.9.0/24 blackhole
実際の結果について
- VPCルートサーバのエンドポイントのPeeringはこのように見えてきます。
右側にスライドするとBGPのステータスとKeepaliveも確認可能です。
- VPCルートサーバのルートテーブルはこのように見えてきます。
AS番号の若番(65103)が選定されます。
- VPCのルートテーブルはこのように見えてきます。
172.20.255.1(vyos#1/AS65103)と172.20.255.2(vyos#2/AS65104)のNexthopのENI異なるのが確認できます。
AS-Pathをprependしてみる
- vyos#1(AS65103)のVPCルートサーバのPeer先にAS-Path Prependを適用します。
vyos#1 AS-Path Prenpend
AS-Path Prepend関連
set route-map AS-Prepend rule 10 action 'permit'
set route-map AS-Prepend rule 10 set as-path prepend '65103 60103'
BGP関連
set bgp address-family ipv4-unicast network 172.20.255.1/32
set bgp address-family ipv4-unicast redistribute static
set bgp neighbor 172.27.160.151 address-family ipv4-unicast nexthop-self
set bgp neighbor 172.27.160.151 address-family ipv4-unicast route-map export 'AS-Prepend'
set bgp neighbor 172.27.160.151 address-family ipv4-unicast soft-reconfiguration inbound
set bgp neighbor 172.27.160.151 remote-as '65102'
set bgp neighbor 172.27.160.151 timers connect '10'
set bgp neighbor 172.27.160.151 timers holdtime '40'
set bgp neighbor 172.27.160.151 timers keepalive '10'
set bgp system-as '65103'
set static route 172.20.0.0/24 blackhole
set static route 172.20.1.0/24 blackhole
set static route 172.20.2.0/24 blackhole
set static route 172.20.3.0/24 blackhole
set static route 172.20.4.0/24 blackhole
set static route 172.20.5.0/24 blackhole
set static route 172.20.6.0/24 blackhole
set static route 172.20.7.0/24 blackhole
set static route 172.20.8.0/24 blackhole
set static route 172.20.9.0/24 blackhole
まとめ(一部再掲)
- VPCルートサーバは複数のアプライアンスとの接続が可能
- 経路選定はBGPの標準に準拠
- AS-Path Prependが使える
- Nexthop Selfが必要(VPCルートテーブルのNexthopはアプライアンスのENI)
- VPCルートサーバはアプライアンス間の経路交換は不可(インポートのみ)
- Transit Gatewayへの伝搬はしない(前回書いたとおり)
VPCルートサーバの使い道
- Amazon EVSのNSX Edge用のVPCルートサーバですが、アプライアンスとの接続も問題なく利用できそうです。
例えば、YamahaのVRXやFortigateやVYOSのVPNの冗長構成で組む場合などは非常に有効じゃないかと思います。従来の仕組みで切り替えるより、BGPを活用できることで柔軟に活用することが可能かと思います。最後まで読んでいただきありがとうございました。
実際に利用される場合はしっかり検証などをとられることを推奨します。