仮想ネットワークの基礎と実践:VLAN・VXLAN・SDN/NFV・クラウドVPCを総覧
仮想ネットワークとは — 概要
仮想ネットワーク(Virtual Network)は、物理的なネットワーク機器や物理配線に依存せずに、ソフトウェア的に論理的なネットワークを構築・管理する技術の総称です。サーバやストレージ、アプリケーションがどの物理スイッチ/ルーターに接続されているかにかかわらず、論理的にセグメント化・接続・分離されたネットワークを提供できます。クラウド環境、データセンターの仮想化、コンテナ基盤、ソフトウェア定義ネットワーク(SDN)やネットワーク機能仮想化(NFV)など、モダンなインフラで中核を成す概念です。
歴史と背景
ネットワーク仮想化は、専用ハードウェア中心だったネットワークをソフトウェアで柔軟に制御したいという要求から発展しました。VLAN(IEEE 802.1Q)によるレイヤ2の論理分離、GRE/VXLANなどのトンネリング技術、そしてSDNのコントロールプレーン分離やNFVによるネットワーク機能のソフトウェア化が主要な進化経路です。近年はクラウド事業者が提供するVPC/VNetや、コンテナオーケストレーション(Kubernetes)のネットワークモデルが一般化しています。
仮想ネットワークの主な種類・技術
- VLAN(IEEE 802.1Q):レイヤ2のタグ付けにより、同一物理ネットワーク上で論理的に複数のブロードキャストドメインを作る技術。タグは4バイトを追加します。
- トンネリング(VXLAN、GRE 等):
- VXLAN(RFC 7348):レイヤ2フレームをUDPでカプセル化し、オーバーレイネットワークを作る。大規模なマルチテナント環境で広く利用され、VNI(VXLAN Network Identifier)でセグメントを識別します。カプセル化によるMTUオーバーヘッド(概ね約50バイト)に注意が必要です。
- GRE(RFC 2784):汎用的なトンネリング。VXLANほどマルチテナンシー向けの機能は持ちませんが単純なカプセル化用途で使われます。
- SDN(Software Defined Networking):制御プレーンとデータプレーンを分離し、中央のコントローラ(例えばOpenDaylightなど)がネットワーク全体を論理的に制御します。Open Networking Foundation (ONF) が提唱する理念が有名です。
- NFV(Network Functions Virtualization):従来ハードウェアで提供されてきたファイアウォール、ロードバランサ、ルーターなどの機能を仮想化し、汎用サーバ上で動作させるアプローチ。ETSIが仕様化をリードしています。
- クラウドのVPC/VNet:AWSのVPCやAzureのVirtual Networkのように、クラウド事業者が提供する論理的ネットワーク。サブネット、ルートテーブル、セキュリティグループ(ファイアウォール)等を使って設計します。
- コンテナネットワーキング(CNI、Kubernetes ネットワークモデル):コンテナ環境では、CNIプラグインを通じて各Pod/コンテナにIPアドレスを割り当て、フラットな通信モデルやマルチテナント分離を実現します。
主要コンポーネントと動作要素
- オーバーレイとアンダーレイ:仮想ネットワークはオーバーレイ(仮想的なネットワーク)とアンダーレイ(物理ネットワーク)が協調して動作します。オーバーレイはトンネルでパケットを運び、アンダーレイは実際のルーティング/転送を担います。
- 仮想スイッチ/分散スイッチ:ハイパーバイザ上の仮想スイッチ(例:Open vSwitch)や分散スイッチは、仮想マシン/コンテナ間のパケット転送やACL、フロー制御を実行します。
- 論理ルータ/ゲートウェイ:サブネット間ルーティングや外部ネットワークへの接続を行う論理的なルータ機能(分散ルーティングや集中型ゲートウェイ)があります。
- コントローラ/オーケストレーション:SDNコントローラやクラウドのAPI、Kubernetesなどがネットワーク設定を自動化・管理します。
アドレス管理とルーティング
仮想ネットワークでは、IPアドレスの割り当て(静的/DHCP)、サブネット設計、ルーティング(スタティック、動的ルーティングプロトコルの利用)、NAT(プライベートアドレスとグローバルアクセス)などの設計が重要です。プライベートIPアドレス範囲はRFC 1918に従います。クラウド環境のVPCでは通常、複数のサブネットをAZ(アベイラビリティゾーン)単位で分け、ルートテーブルやNATゲートウェイでインターネットアクセスを制御します。
セキュリティと分離(マルチテナンシー)
仮想ネットワークの大きな利点は論理的な分離が容易なことです。代表的な手法は以下の通りです。
- VLAN/VXLANによるセグメンテーション:異なるタグやVNIでトラフィックを分離。
- マイクロセグメンテーション:ホストやワークロード単位できめ細かくファイアウォールルールを適用し、不要な東西トラフィックを遮断します(例:VMware NSXの分散ファイアウォール)。
- セキュリティグループ/ACL:クラウドや仮想スイッチでのレイヤ3/4のアクセス制御。
- 暗号化とトンネル保護:インターネット越しや信頼できない経路のトンネルにはIPsec等で暗号化を施すことが推奨されます。
性能・運用上の注意点
- カプセル化オーバーヘッド:VXLANなどはパケットに追加ヘッダを付けるためMTU調整(jumboフレームの利用)やPath MTUを考慮する必要があります。
- パケット処理負荷:仮想化によるパケット転送はCPU負荷が増える場合があるため、SR-IOVやDPDKといったオフロード技術を用いることで性能向上が可能です。
- トラブルシューティング:オーバーレイとアンダーレイの二重構造は障害切り分けを難しくします。ログ、フロー情報、コントローラの状態を総合的に監視する設計が必要です。
- 可観測性:分散環境ではフローの可視化(フローミラーリング、Telemetry)や分散トレーシングが重要です。
代表的なユースケース
- クラウドでのVPCによるテナント分離とサブネット設計
- データセンターのネットワーク抽象化とマルチテナント環境の構築
- 開発・検証環境でのネットワークテンプレート展開(インフラのインフラ化:IaCとの連携)
- コンテナ/マイクロサービスのEast-West通信管理とセキュリティ
- ネットワーク機能のソフトウェア化(仮想ファイアウォール、仮想ロードバランサ)による運用効率化
設計上のベストプラクティス
- 要件に応じた分離設計:VLAN/VXLAN/セキュリティグループの使い分けを明確にする。
- アドレスプランの長期設計:IP枯渇やクロスVPC接続を見据えたアドレス管理。
- 可観測性とログ設計:フロー収集、メトリクス、アラートの整備。
- セキュリティの多層化:境界防御だけでなく、マイクロセグメンテーションやIDS/IPSで内部防御も行う。
- 自動化の徹底:Terraform、Ansible、Kubernetesなどで一貫した設定管理を行い、人的ミスを減らす。
まとめ
仮想ネットワークは、柔軟性・拡張性・自動化を実現するための中核技術です。VLANやトンネリング技術、SDN/NFV、クラウドVPC、コンテナネットワークなど多様な技術要素が組み合わさって動作します。設計時にはセキュリティ、性能、可観測性、運用自動化をバランスよく考慮する必要があります。適切に設計・運用すれば、物理的制約から解放された高速なサービス提供と効率的な運用が可能になります。
参考文献
- RFC 7348 - Virtual eXtensible Local Area Network (VXLAN)
- RFC 7432 - BGP MPLS-Based Ethernet VPN(EVPN)
- RFC 2784 - Generic Routing Encapsulation (GRE)
- RFC 1918 - Address Allocation for Private Internets
- ETSI - Network Functions Virtualisation (NFV)
- Open Networking Foundation (ONF) - SDN 関連情報
- AWS: What is Amazon VPC?
- Microsoft Learn: Azure Virtual Network overview
- OpenStack Neutron ドキュメント
- VMware NSX 製品情報
- CNI (Container Network Interface) 仕様(GitHub)
- Kubernetes: Cluster networking
- PCI-SIG - SR-IOV などの仕様(PCI-SIG)


