ubuntuにKVMをインストール

ubuntuは12.04を使用。普通にインストールしたのち、

$ sudo apt-get install kvm libvirt-bin bridge-utils virt-manager

デフォルトではゲストOSのネットワークはNATで接続するようになっているが、ゲストOSを各種サーバとして使うために、StaticなIPアドレスが割り当てられるようにブリッジ接続に変更する。

NAT用のインタフェースを削除する

$ sudo brctl show
$ sudo virsh net-autostart default --disable
$ sudo virsh net-destroy default
$ sudo brctl show

/etc/network/interfacesの変更。以下のようにbr0を追加する。

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
address 10.5.34.145
network 10.5.0.0
netmask 255.255.0.0
broadcast 10.5.255.255
gateway 10.5.34.254
dns-nameservers 10.4.34.1
dns-search foo.bar.co.jp
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off

10.5.34.145はホストOSで使うIPアドレス

最初はゲストOSを増やすたびにbrを増やしていくのかと思ったが、br0だけでOK。ゲストOSはbr0を通して別のIPアドレスで通信するようになる。ここでいちど再起動。

あとはvirt-managerを起動してゲストOSをインストールする。その際、ネットワークインタフェースを聞かれるのでbr0を指定する。ゲストOSインストール後、ネットワークの設定で固定IPアドレス(br0と同一セグメントであること)を割り当てれば通信ができるようになる。

設定を上書きされてしまうことがあるので、ホストOS上のネットワークマネージャを消しておく。

$ sudo apt-get remove network-manager