構成1を使用する場合は、以下の手順で仮想ネットワークの設定を行います。
OSのインストール直後(デフォルト)は、デフォルトゲートウェイが設定されたインタフェースに対して仮想ネットワークが設定されます。
仮想ブリッジを複数作成したい場合や、デフォルトゲートウェイが割り当てられていないインタフェース上に仮想ブリッジを作成する場合は、以下の手順で仮想ネットワークを設定してください。
デフォルトゲートウェイが割り当てられた仮想NIC方式の仮想インタフェースに対してのみ仮想ブリッジを作成する場合は、本設定は不要です。
仮想ブリッジ作成用シェルスクリプトを作成します。
参考
仮想NIC方式のみを使用する場合は、仮想マシン機能の仮想ネットワーク配下に仮想NIC方式の仮想インタフェースが作られるため、hanetxen start/stopを実行する必要はありません。
以下は、作成するシェルスクリプト名をnetwork-bridge-glsとした場合の設定例です。下記の例では、仮想インタフェース(sha0)に対して1つの仮想ネットワークを設定しています。
/etc/xen/scripts/network-bridge-gls
#!/bin/sh
#
# Sample of Create/Delete virtual bridge
#
# $1 start : Create virtual bridge
# stop : Delete virtual bridge
# status: Display virtual bridge information
# Exit if anything goes wrong
#set -e
command=$1
xenscript=/etc/xen/scripts/network-bridge
# op_start:subscript for start operation #
op_start () {
$xenscript $command vifnum=0 netdev=sha0
}
# op_stop:subscript for stop operation #
op_stop () {
# same operation as start
op_start
}
case "$command" in
start)
# Create your virtual bridge
op_start
;;
stop)
# Delete virtual bridge
op_stop
;;
status)
# display virtual bridge information
$xenscript status
;;
*)
echo "Unknown command: $command" >&2
echo 'Valid commands are: start, stop, status' >&2
exit 1
esac |
作成したスクリプトは、“/etc/xen/scripts”配下に配置してください。
# cp network-bridge-gls /etc/xen/scripts # cd /etc/xen/scripts # chmod +x network-bridge-gls |
xendサービスへの登録
xendサービスの設定ファイル(/etc/xen/xend-config.sxp)の“network-script”パラメータを編集してください。“network-script”パラメータには、“network-bridge”が設定されています。作成したスクリプト名に変更してください。
# Your default ethernet device is used as the outgoing interface, by default.
# To use a different one (e.g. eth1) use
#
# (network-script 'network-bridge netdev=eth1')
#
# The bridge is named xenbr0, by default. To rename the bridge, use
#
# (network-script 'network-bridge bridge=<name>')
#
# It is possible to use the network-bridge script in more complicated
# scenarios, such as having two outgoing interfaces, with two bridges, and
# two fake interfaces per guest domain. To do things like this, write
# yourself a wrapper script, and call network-bridge from it, as appropriate.
#
(network-script network-bridge-gls) |
注意
仮想ブリッジを5つ以上作成する場合は、/etc/modprobe.confに以下の設定を追加してください。詳細は、「Linux 仮想マシン機能 ユーザーズマニュアル」を参照してください。以下は最大6つの仮想ブリッジを作成する場合の例です。
options netloop nloopbacks=6 |