12.2. libvirt を使用したブリッジネットワーキング
ブリッジネットワーキング(別名、物理デバイス共有)は、物理デバイスを仮想マシンに 専従させるために使用します。ブリッジングは多くの場合、高度なセットアップや複数の ネットワークインターフェイスを持つサーバー上で使用されます。
Xen ネットワークスクリプトを無効にする
システムが Xen ブリッジを使用している場合は、/etc/xen/xend-config.sxp
への編集で以下の行を変更することにより、デフォルトの Xen ネットワーキングブリッジを 無効にすることが推奨されます:
(network-script network-bridge)
から:
(network-script /bin/true)
NetworkManager を無効にする
NetworkManager はブリッジングをサポートしません。NetworkManager を無効にして ネットワークスクリプト(/etc/sysconfig/network-scripts/
ディレクトリ内に 存在)を介したネットワーキングを使用する必要があります。
# chkconfig NetworkManager off # chkconfig network on # service NetworkManager stop # service network start
注記
NetworkManager をオフにする代わりに、"
NM_CONTROLLED=no
" を サンプルで使用されている ifcfg-*
スクリプトに追加することができます。
network initscript を作成
次の2つのネットワーク設定ファイルを作成するか、 又は編集します。この手順を追加のネットワークブリッジで(別名で)繰り返します。
/etc/sysconfig/network-scripts
ディレクトリへ移動します:
# cd /etc/sysconfig/network-scripts
ブリッジに追加するデバイス用のネットワークスクリプトを開きます。この例では、
ifcfg-eth0
は、ブリッジの一部としてセットされている 物理ネットワークインターフェイスを定義しています:
DEVICE=eth0 # change the hardware address to match the hardware address your NIC uses HWADDR=00:16:76:D6:C9:45 ONBOOT=yes BRIDGE=br0
注記
デバイスの MTU (Maximum Transfer Unit) を設定するには、
MTU
変数を 設定ファイルの末尾に追記します。
MTU=9000
ifcfg-br0
、又はそれに似た名前のネットワークスクリプトを /etc/sysconfig/network-scripts
ディレクトリ内に作成します。 br0
とは、ブリッジの名前です。これはファイル名が DEVICE パラメータと同じであれば、どんな名前でも結構です。
DEVICE=br0 TYPE=Bridge BOOTPROTO=dhcp ONBOOT=yes DELAY=0
警告
TYPE=Bridge
の行は、大文字/小文字の区別があります。これは 大文字の「B」 と 小文字の 「ridge」 で構成れています。
設定が終了したら、ネットワークを再開始するか、マシンをリブートします。
# service network restart
iptables
を設定して、全てのトラフィックがブリッジを渡って 転送されるようにします。
# iptables -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT # service iptables save # service iptables restart
注記
別の方法としては、
iptables
ルールを使って、ブリッジされた トラフィックがプロセスされることを阻止します。/etc/sysctl.conf
内で 以下の行を追記します:
net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0 net.bridge.bridge-nf-call-arptables = 0
sysctl
の使用で設定されたカーネルパラメータを再ロードします。
# sysctl -p /etc/sysctl.conf
libvirt
デーモンを再起動
# service libvirtd reload
この時点で、「共有物理デバイス」があるはずです。これはゲストを 付帯できるもので、全面的な LAN アクセスを持ちます。以下のようにして 新規ブリッジを確認します:
# brctl show bridge name bridge id STP enabled interfaces virbr0 8000.000000000000 yes br0 8000.000e0cb30550 no eth0
注記。このブリッジは完全に
virbr0
ブリッジから独立しています。 物理デバイスを virbr0
に付帯する試行は しないで下さい。 virbr0
ブリッジは NAT (Network Address Translation) 接続機能だけのために あります。