- AWS VPC に L2 はあるのか – VLAN / ARP / VIP をクラウドの到達性モデルへ翻訳する
L2 の前提をクラウドの到達性モデルへ翻訳する視点を整理した記事です。 - VyOS tunnel interface – GRE などのトンネルを経路設計に組み込む
トンネルを単体機能ではなく、経路設計の部品として扱う記事です。 - VMware と OpenStack の違い – 仮想化基盤とクラウド基盤を同じものとして扱わない
仮想化基盤とクラウド基盤の責務の違いを整理した記事です。
VXLAN や Geneve は、ネットワーク仮想化の文脈でよく登場する技術です。一般的には、VXLAN は L3 ネットワーク上で L2 ネットワークを延伸する技術と説明されます。
これは間違いではありません。VXLAN は VTEP によって Ethernet frame を UDP/IP で encapsulation し、IP underlay の上に論理的な L2 segment を構成します。
しかし、この説明だけで VXLAN や Geneve を理解すると、設計を誤る可能性があります。なぜなら、VXLAN や Geneve の本質は、単に L2 を遠くまで伸ばすことではないからです。
この記事で扱う内容は次の通りです。
- VXLAN は L2 延伸そのものが目的ではなく、overlay network を構成するための技術である
- 問題はトンネルではなく、その上に載せる L2 / L3 の意味論である
- Geneve は単なる新しい VXLAN ではなく、拡張性を意識した encapsulation である
- underlay / overlay / data plane / control plane / management plane を分けて考える
- L2 を伸ばせることと、L2 を伸ばすべきことは違う
VXLAN は L2 延伸そのものが目的ではない
VXLAN は、L3 underlay の上に overlay network を構成するための encapsulation 技術です。物理ネットワーク側は IP fabric として構成し、その上に VNI によって分離された論理ネットワークを作ります。
ここで重要なのは、VXLAN が L2 を伸ばせることと、L2 を伸ばすべきことは別だという点です。L2 を overlay に載せれば、当然ながら L2 の意味論も一緒に持ち込むことになります。
| 論点 | 内容 |
|---|---|
| broadcast | ブロードキャストドメインをどこまで広げるのか |
| unknown unicast | 宛先不明フレームをどの範囲へ流すのか |
| multicast | 制御方式をどうするのか |
| ARP / ND | neighbor discovery をどこまで広げるのか |
| MTU | encapsulation 分の overhead をどう吸収するのか |
| 障害分離 | L2 障害をどこで止めるのか |
| 運用責任 | underlay と overlay の責任分界をどう切るのか |
つまり、VXLAN を使えば L2 延伸はできます。しかし、L2 延伸を選択した瞬間に、ブロードキャストドメインを拡張する責任も引き受けることになります。
問題はトンネルではなく、上に載せる意味論である
VXLAN や Geneve は、transport として見ればよくできた技術です。問題は、トンネルそのものではありません。問題は、その上に何を載せるかです。
L2 を載せるなら、L2 の責任を持つ必要があります。L3 を載せるなら、routing / policy / reachability の責任を持つ必要があります。
この区別を曖昧にしたまま、VXLAN だから便利、L2 延伸できるから移行が簡単、と考えると設計は危うくなります。
特に DR や拠点間接続の文脈では、IP アドレスを変えたくない、既存システムを変更したくない、という理由で L2 延伸が選ばれがちです。しかし、それは単に変更コストをネットワーク側へ押し込んでいるだけの場合があります。
Geneve はより汎用的な network virtualization encapsulation である
Geneve は、VXLAN より後発の network virtualization encapsulation です。VXLAN が比較的シンプルな L2 overlay の実装として広く使われてきたのに対し、Geneve はより拡張性を意識しています。
Geneve では、可変長 option によって追加情報を持たせることができます。仮想スイッチ、物理スイッチ、middlebox、controller など、さまざまな構成要素が関わるネットワーク仮想化基盤に対応しやすい設計です。
ここでも重要なのは、Geneve が新しい VXLAN だから良い、という単純な話ではないことです。Geneve の意味は、単なる encapsulation 方式の置き換えではなく、data plane にどのような情報を載せ、control plane とどう連携するかという話にあります。
Underlay と Overlay を分けて考える
VXLAN / Geneve の設計で重要なのは、underlay と overlay を分けて考えることです。
| 領域 | 役割 |
|---|---|
| underlay | IP 到達性、ECMP、物理経路、MTU、障害収束 |
| overlay | tenant / workload / service の論理ネットワーク |
| data plane | 実際の packet forwarding / encapsulation |
| control plane | MAC / IP / VTEP / policy などの制御 |
| management plane | 設定、状態管理、運用、監視 |
underlay は、基本的には安定した IP fabric として作るべきです。overlay は、その上に構成される論理ネットワークです。この分離ができていれば、VXLAN / Geneve は非常に強力な道具になります。
逆に、この分離が曖昧なまま L2 延伸だけを目的にすると、物理ネットワークと論理ネットワークの責任分界が崩れます。
L2 延伸は便利だが、責任も延伸する
L2 延伸は便利です。IP アドレスを変えずに VM を移動できる。既存システムの設定変更を減らせる。同一セグメント前提の古いシステムを延命できる。そのようなメリットはあります。
しかし、同時に L2 の責任も遠隔地まで広がります。
| 得られるもの | 引き受けるもの |
|---|---|
| IP アドレスを変えない移動 | 広域 L2 の障害範囲 |
| 既存システム変更の抑制 | broadcast / unknown unicast の制御 |
| 同一セグメント維持 | ARP / ND の拡散 |
| 移行時の一時的な柔軟性 | underlay / overlay の複雑化 |
したがって、L2 延伸はできるから使うものではありません。使うなら、どの範囲で、どの期間、どの制御プレーンで、どの障害を許容するのかを明確にする必要があります。
VXLAN / Geneve の理解は責任分界の理解である
VXLAN と Geneve を比較するとき、ヘッダ形式や option の有無だけを見ると、本質を見失います。もちろん、技術仕様の違いは重要です。しかし設計上より重要なのは、次の問いです。
| 問い | 意味 |
|---|---|
| underlay は何を保証するのか | IP 到達性、MTU、ECMP、障害収束 |
| overlay は何を表現するのか | tenant、segment、service、workload |
| control plane は何を配布するのか | MAC、IP、VTEP、policy |
| L2 を載せる必要があるのか | broadcast domain を広げる理由があるか |
| L3 境界で切れないのか | routing / policy で分離できないか |
| 障害範囲はどこで止まるのか | L2 / L3 / overlay / underlay の境界 |
VXLAN / Geneve は、単なるトンネル技術ではありません。ネットワーク仮想化において、物理ネットワークと論理ネットワークの責任を分離するための技術です。
まとめ
VXLAN や Geneve は、L2 延伸を可能にする技術です。しかし、それらを L2 延伸技術としてだけ理解すると、設計を誤ります。本質は、IP underlay の上に overlay network を構成することです。
設計上重要なのは、VXLAN か Geneve かという表面的な比較ではありません。underlay に何を任せるのか。overlay に何を載せるのか。control plane で何を制御するのか。L2 の意味論をどこまで広げるのか。障害範囲と責任分界をどこで切るのか。
- underlay に何を任せるのか
- overlay に何を載せるのか
- control plane で何を制御するのか
- L2 の意味論をどこまで広げるのか
- 障害範囲と責任分界をどこで切るのか
L2 を伸ばせることと、L2 を伸ばすべきことは違います。VXLAN / Geneve の理解とは、トンネルの理解ではなく、ネットワーク仮想化における責任分界の理解です。
- AWS VPC に L2 はあるのか – VLAN / ARP / VIP をクラウドの到達性モデルへ翻訳する
L2 の前提をクラウドの到達性モデルへ翻訳する視点を整理した記事です。 - VyOS tunnel interface – GRE などのトンネルを経路設計に組み込む
トンネルを単体機能ではなく、経路設計の部品として扱う記事です。 - VMware と OpenStack の違い – 仮想化基盤とクラウド基盤を同じものとして扱わない
仮想化基盤とクラウド基盤の責務の違いを整理した記事です。

