OpenVZ ブリッジの設定
ゲストOSをホストOS側NWに接続するための設定。
・bridge-utils のインストール
# apt-get install bridge-utils
・ブリッジの作成
※ssh で作業している場合は接続が切れるので、シェルで設定する
# brctl addbr br0 # brctl addif br0 eth0 # ifconfig eth0 0.0.0.0 # ifconfig br0 192.168.0.100 netmask 255.255.255.0 up # route add default gw 192.168.0.1 br0
・ブリッジが正常に動作することが確認できたら /etc/network/interfaces に設定追加する
# vi /etc/network/interfaces auto eth0 iface eth0 inet static address 0.0.0.0 auto br0 iface br0 inet static address 192.168.0.100 netmask 255.255.255.0 gateway 192.168.0.1 bridge_ports eth0
・/usr/sbin/vznetaddbr の設定
# vi /usr/sbin/vznetaddbr ※下記内容で上書き #!/bin/sh # /usr/sbin/vznetaddbr # a script to add virtual network interfaces (veth's) in a CT to a bridge on CT0 CONFIGFILE=/etc/vz/conf/$VEID.conf . $CONFIGFILE VZHOSTIF=`echo $NETIF |sed 's/^.*host_ifname=\(.*\),.*$/\1/g'` if [ ! -n "$VZHOSTIF" ]; then echo "According to $CONFIGFILE CT$VEID has no veth interface configured." exit 0 fi if [ ! -n "$VZHOSTBR" ]; then echo "According to $CONFIGFILE CT$VEID has no bridge interface configured." exit 1 fi echo "Adding interface $VZHOSTIF to bridge $VZHOSTBR on CT0 for CT$VEID" /sbin/ifconfig $VZHOSTIF 0 echo 1 > /proc/sys/net/ipv4/conf/$VZHOSTIF/proxy_arp echo 1 > /proc/sys/net/ipv4/conf/$VZHOSTIF/forwarding /usr/sbin/brctl addif $VZHOSTBR $VZHOSTIF exit 0
・VPS設定ファイルに設定追加
# echo "CONFIG_CUSTOMIZED=\"yes\"" >> /etc/vz/conf/101.conf # echo "VZHOSTBR=\"${BRIDGE:-br0}\"" >> /etc/vz/conf/101.conf
・ゲストOSにインターフェース追加
# vzctl set 101 --netif_add eth0,,,,br0 --save
・ゲストOSで eth0 の設定をする
# vi /etc/network/interfaces auto eth0 iface eth0 inet static address 192.168.0.101 netmask 255.255.255.0 gateway 192.168.0.1
・ /etc/vz/vznet.conf の作成
# vi /etc/vz/vznet.conf #!/bin/bash EXTERNAL_SCRIPT="/usr/sbin/vznetaddbr"
※ゲストOS起動時に /usr/sbin/vznetaddbr が実行され、ホストOSの br0 に ゲストOSのeth0が追加される
・動作確認
# vzctl start 101
・ブリッジの状態確認
# brctl show
ssmping を使えば unicast、multicastそれぞれの疎通確認が可能