KVMのデフォルトネットワークをブリッジへ変更
KVMのデフォルトネットワークは通常、ブリッジでプライベートアドレスのサブネットを作ってNATで外部に出ていくものになっているが、これをホスト環境のネットワークインタフェースに直接ブリッジするもの(ホストブリッジ)に変えてみる。
まずは現状の確認。
$ export LIBVIRT_DEFAULT_URI='qemu:///system' $ virsh net-list --all Name State Autostart Persistent ---------------------------------------------- default inactive no yes
デフォルトのネットワークが定義されている。
いったんdefault
ネットワークの定義を削除する。
$ virsh net-undefine default $ virsh net-list --all Name State Autostart Persistent ----------------------------------------
続いて、ブリッジbr0
を使うホストブリッジ用ネットワークを定義する。
ブリッジを作成する方法は各ディストリビューションのドキュメントを参照のこと。
default
ネットワークをXMLを使って定義する。
なお <( ... )
の部分はbashのprocess substitution(プロセス置換)という機能。
$ virsh net-define <(cat <<EOF <network> <name>default</name> <forward mode="bridge"/> <bridge name="br0"/> </network> EOF ) Network default defined from /tmp/br0.xml $ virsh net-list --all Name State Autostart Persistent ---------------------------------------------- default inactive no yes
最後に、default
ネットワークを開始し、自動開始を設定する。
$ virsh net-start default Network default started $ virsh net-autostart default Network default marked as autostarted $ virsh net-list --all Name State Autostart Persistent -------------------------------------------- default active yes yes
KVMのデフォルトネットワークをホストブリッジに変更できた!