KVMでプライベートネットワークを構築する際の設定
単一ホスト上のゲストOS間だけで閉じた仮想ネットワークを構築する設定です。
物理NICに接続されないブリッジインタフェース(以降、"空ブリッジ")を作り、ゲストOSのNICを空ブリッジに接続させる設定になります。
VirtualBoxでの"ホストオンリーアダプタ"なイメージです。
空ブリッジの作成
ホストOSの"/etc/network/interfaces"に、以下の設定を追加します。
今回は、"172.16.xxx.xxx"なプライベートアドレスを使いました。
auto br1 iface br1 inet static address 172.16.0.101 netmask 255.255.0.0 bridge_ports none
ネットワークを再起動して、"br1"が起動したことを確認します。
$ sudo /etc/init.d/networking restart
$ sudo ifconfig br1
ゲストOS側のインタフェース設定
virt-managerでゲストOSを作成する際に、空ブリッジ*1を選択することができません。
なので、一旦物理NICが接続されているブリッジを指定して、ゲストOS(ネットワークインタフェース)を作成します。
その後、ゲスト定義ファイル(/etc/libvirt/qemu/
<source bridge='br0'/>
な記述を
<source bridge='br1'/>
に編集し、ゲストOSの構成変更を反映します。
$ sudo virsh define /etc/libvirt/qemu/<Guest-Host-Name>.xml
あとは、ゲストOSを起動し、以下のように通常のインタフェースな感じで設定します。
### /etc/network/interfaces ###
auto eth1
allow-hotplug eth1
iface eth1 inet static
address 172.16.0.102
netmask 255.255.0.0
おまけ
空ブリッジ作成時に、"bridge-utils"のman見ようとして、"man bridge-utils"したけど見れなかった。
"man bridge-utils-interfaces"で見れるんですが、ちょっと探しちゃいました。