1. 定義:KVMでのVLANフィルタリング問題
KVM環境において、Linux BridgeのVLANフィルタリング(vlan_filtering=1)を有効にすると、仮想マシン(VM)がVLANネットワークと通信できなくなる問題が発生します。これは、VM起動時に動的に生成されるTAPデバイス(仮想インターフェース)に対して、適切なVLAN IDが自動で割り当てられないためです。
2. 要点:解決のための2段階設定
- ホストNW起動時: 外部ツールを使わず、OS標準の
/etc/sysconfig/network-scripts/ifup-postを利用し、物理デバイスとブリッジデバイスにVLAN IDを付与します。 - VM起動時: libvirtのフック機能(
/etc/libvirt/hooks/qemu)を利用し、VM起動完了後に生成されたTAPデバイスへ直接VLAN IDを付与します。
3. 比較:標準機能とフックスクリプトの違い
| 項目 | libvirt標準設定 | フックスクリプト(本方式) |
|---|---|---|
| 設定場所 | XML定義ファイル | ifup-post / hooks/qemu |
| 適用タイミング | libvirtのネットワーク起動時 | OSネットワーク起動時 / VM起動完了時 |
| TAPデバイス制御 | 自動生成に依存 | ブリッジコマンドで直接制御可能 |
4. 具体例:ifup-postとqemuフックの設定手順
Linux Bridge環境を想定した最短設定手順です。
手順1:ホストNW起動時の設定
ネットワークスクリプト実行後にVLANを許可します。
# /etc/sysconfig/network-scripts/ifup-post
#!/bin/bash
# 定義: 対象のVLAN ID、ブリッジ、物理デバイス
VLAN_ID=100
BRIDGE_DEV="br0"
PHYS_DEV="eth0"
# ブリッジデバイス自身(self)と物理デバイスにVLAN IDを追加
bridge vlan add vid $VLAN_ID dev $BRIDGE_DEV self
bridge vlan add vid $VLAN_ID dev $PHYS_DEV
手順2:VM起動時の動的設定
VMの起動完了を検知してTAPデバイスをVLANに参加させます。
# /etc/libvirt/hooks/qemu
#!/bin/bash
OBJECT="$1" # ドメイン名(VM名)
OPERATION="$2" # 動作ステータス
VLAN_ID=100
# 仮想マシンの起動完了を確認
if [ "$OPERATION" = "started" ]; then
# TAPデバイス名を取得
TAP_DEV=$(virsh domiflist "$OBJECT" | grep bridge | awk '{print $1}')
if [ -n "$TAP_DEV" ]; then
# 生成されたtapデバイスにVLAN IDを付与
bridge vlan add vid $VLAN_ID dev $TAP_DEV
fi
fi
5. 注意事項
作成したスクリプトには実行権限(chmod +x)を付与してください。
また、VM側のインターフェースをアクセスポート(タグなし)として動作させる場合は、TAPデバイスへのコマンド末尾に pvid untagged を付与する必要があるかもしれません
KEEPTIME モバイルモニター 15.6インチ 1920*1080 モバイルディスプレイ ポータブルモニター IPS液晶パネル 非光沢画面 薄型 軽量 マグネット保護カバー付き USB Type-C ミニHDMI PS4/XBOX/Sw-itch/PC/Macなど対応 在宅勤務 リモートワーク【銀白色】
¥10,980 (2026年5月17日 06:18 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)Apple 2026 MacBook Neo A18 Proチップ搭載13インチノートブック:AIとApple Intelligenceのために設計、Liquid Retinaディスプレイ、8GBユニファイドメモリ、256GB SSDストレージ、1080p FaceTime HDカメラ - インディゴ
只今、価格を取得しています。
(2026年5月17日 06:18 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)


コメント