ICTSC2026 一次予選 問題解説: 問7
問7
ある管理者が VXLAN を使い、2 拠点のサーバーセグメントを L2 で接続した。underlay は OSPF で構成されており、VTEP-A と VTEP-B のループバック間の疎通は確認できている。しかし overlay の通信が一切届かない。
調査を進めると、underlay のパス上にファイアウォールが存在していることがわかった。
提示情報
対象機器:Cisco IOS
VTEP-Aの設定
interface vxlan0
vxlan id 100
vxlan local-tunnelip 10.255.0.1
vxlan port 4789
ファイアウォール ACL(underlay パス上)
permit udp any eq 4789 any eq 4789
deny udp any any
パケットキャプチャ(VTEP-A → VTEP-B 方向、underlay 上で取得)
| No. | Protocol | Src IP | Dst IP | Src Port | Dst Port | Info |
|---|---|---|---|---|---|---|
| 1 | UDP | 10.255.0.1 | 10.255.0.2 | 51234 | 4789 | VXLAN |
| 2 | UDP | 10.255.0.1 | 10.255.0.2 | 49821 | 4789 | VXLAN |
| 3 | UDP | 10.255.0.1 | 10.255.0.2 | 52103 | 4789 | VXLAN |
| 4 | UDP | 10.255.0.1 | 10.255.0.2 | 50917 | 4789 | VXLAN |
以下のうち正しいものをすべて選べ。
選択肢(複数選択)
- VXLAN のカプセル化には UDP が使用される
- 通信を遮断している原因は、ACLが宛先ポート 4789 への UDP を permit していないためである
- パケットキャプチャから、VXLANの送信元UDPポートには動的なポート番号が使用されていることが確認できる
- VXLAN の宛先 UDP ポートは 8472 が標準であり、VTEP-A の vxlan port 4789 という設定が誤っている
- ACL を「permit udp any eq 4789 any any」に変更すれば通信が回復する
- VXLAN トンネルが正常に機能するには、送信元と宛先の UDP ポートが同じ値でなければならない
- ACL を「permit udp any any eq 4789」に変更すれば通信が回復する
正解
1, 3, 7
解説
①、③、⑦
①正解 RFC 7348 で定義されているとおり、VXLAN は UDP でカプセル化する。
②不正解 キャプチャを見ると宛先ポートは 4789 で正しい。しかし送信元ポートが 51234, 49821 などフローに応じて動的に算出される。この ACL は「送信元ポートが 4789 ではない」ためマッチせず deny されている。
③正解 キャプチャの Src Port 列を見ると 51234 / 49821 / 52103 / 50917 と毎回異なる。VXLAN の送信元ポートはアンダーレイの ECMP を活用するため、内部フレームの送受信 IP・ポート・プロトコルをハッシュして決定する。
④不正解 IANA が VXLAN に割り当てた公式ポートは 4789(RFC 7348)。
⑤不正解 VTEP-A の送信元ポートはランダム(51234 など)であり 4789 ではない。この ACL でも依然としてマッチしないため通信は回復しない。
⑥不正解 VXLAN が必要とするのは宛先ポート 4789 のみ。送信元ポートは可変であり、送受信双方が一致する必要はない。
⑦正解 VXLANが必要とするのは宛先ポート 4789 のみなため指定し、送信元・宛先は any にすることで通信が回復する。