ブリッジの設定2010/06/10 |
[1] | ゲストOSがブリッジ接続できるよう設定をしておきます。 |
[root@dlp ~]# vi /etc/qemu-ifup
#!/bin/sh ME=$(basename $0) ifext=${ME#qemu-ifup-} case $ifext in qemu-ifup) ifname=eth0;; *) ifname=$ifext;; esac echo "Executing /etc/$ME" echo "Bringing up $1 for bridged mode..." /sbin/ifconfig $1 0.0.0.0 promisc up echo "Adding $1 to ..." /usr/sbin/brctl addif $ifname $1 sleep 2 [root@dlp ~]# vi /etc/qemu-ifdown
#!/bin/sh set_ifname () { [ -e /sys/class/net/$1 ] || return ifname=$(cat /sys/class/net/$1/brport/bridge/uevent \ |grep ^INTERFACE |cut -d '=' -f 2) } ME=$(basename $0) set_ifname $1 echo "Executing /etc/$ME" if [ -z "$ifname" ]; then echo "Can not detect target bridge name" exit 1 fi echo "Removing $1 from ${ifname}..." /usr/sbin/brctl delif $ifname $1 echo "Shutting down $1 ..." /sbin/ifconfig $1 down sleep 2 [root@dlp ~]# chmod 755 /etc/qemu-* [root@dlp ~]# ln -s /etc/qemu-ifup /var/kvm/qemu-ifup-br0 [root@dlp ~]# ln -s /etc/qemu-ifdown /var/kvm/qemu-ifdown-br0
|
[2] | X起動後、ターミナルを立ち上げ、以下のようにコマンドを入力し、
ブリッジ接続でゲストOSを立ち上げます。コマンドが長いのでスクリプト化しておいた方がよいでしょう。 複数のゲストOSを同時に起動するときは、以下のコマンド中の「ifname=tap0」の箇所を「ifname=tap1」と数字を増やしてやればOKです。 また同時に「-net nic,macaddr=MACアドレス」の箇所も変更してやる必要があります。 MACアドレスを指定するときは以下のコマンドでランダムなMACアドレスを生成できるので、それを使うとよいでしょう。 # echo $(echo -n DE:AD:BE:EF ; for i in `seq 1 2` ;do echo -n `echo ":$RANDOM" | cut -n -c -3` ;done) |
[root@dlp ~]# cd /var/kvm
[root@dlp kvm]# qemu-kvm \ -smp 2 -m 512 -hda www.img \ -net nic,macaddr=52:54:00:12:34:56 \ -net tap,ifname=tap0,script=qemu-ifup-br0,downscript=qemu-ifdown-br0 \ -daemonize # -smp 仮想CPU数の指定 # -m メモリ容量の指定 # -net nic,macaddr=(MACアドレス指定) # -hda ディスクイメージの指定 # -daemonize デーモン化 # -nographic インストール後はSSHでつなぐためグラフィックは 必要ないといった場合はこのオプションを付加 |
[3] | ここでの例では以下のように、ホストOSに 10.0.0.30 を、ゲストOSには 10.0.0.31 を 固定で割り当ててあります。ネットワークの設定については 初期設定の項を参照ください。 |
[4] | ゲストOSからゲートウェイにPingを打ってみると、以下のように正常に応答が返ってきており、 ブリッジ接続できていることが分かります。 |
Sponsored Link |