2010-02-20

Linux(Debian Lenny) KVMの仮想マシン用ネットワーク設定

前回KVMでOpenSolarisをセットアップしましたが、ネットワーク設定については省略していたので一応メモしておきます。

とは言っても基本的にはここに書いてあるとおりにすればOKです。
http://www.howtoforge.com/virtualization-with-kvm-on-a-debian-lenny-server


ネットワーク設定は、Debianの場合は/etc/network/interfaces ファイルを編集して行います。たぶんUbuntuでも同様です。
参考までに設定内容をさらしておきます。

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
auto eth0
iface eth0 inet manual

auto virbr0
iface virbr0 inet static
   address 192.168.1.50
   network 192.168.1.0
   netmask 255.255.255.0
   broadcast 192.168.1.255
   gateway 192.168.1.1
   bridge_ports eth0
   bridge_fd 9
   bridge_hello 2
   bridge_maxage 12
   bridge_stp offk

 仮想マシンを作成する際に、ネットワーク接続設定で共有物理装置を選択してここの設定で作成したブリッジを使用するようにします。
また、親機はLANで192.168.1.50にIP固定してますが、仮想マシンの方でもIPを固定したい場合は仮想マシン側で設定する必要があります。
最近のほとんどのOSではインストール時にデフォルトでDHCPが使われるので、IP固定する必要が無い場合は仮想マシン側で特に設定する必要はありません。

上記の設定をして、
% sudo /etc/init.d/networking restart

として、ifconfigすればvirbr0が追加されているのが確認できます。
% sudo ifconfig
eth0      Link encap:イーサネット  ハードウェアアドレス 00:1b:fc:b5:d7:16
          inet6アドレス: fe80::21b:fcff:feb5:d716/64 範囲:リンク
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
          RXパケット:2941586 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:4429749 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:1000
          RXバイト:783148810 (746.8 MiB)  TXバイト:5767081060 (5.3 GiB)
          割り込み:254 ベースアドレス:0x4000

lo        Link encap:ローカルループバック
          inetアドレス:127.0.0.1 マスク:255.0.0.0
          inet6アドレス: ::1/128 範囲:ホスト
          UP LOOPBACK RUNNING  MTU:16436  メトリック:1
          RXパケット:97752 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:97752 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:0
          RXバイト:131654783 (125.5 MiB)  TXバイト:131654783 (125.5 MiB)

virbr0    Link encap:イーサネット  ハードウェアアドレス 00:1b:fc:b5:d7:16
          inetアドレス:192.168.1.50 ブロードキャスト:192.168.1.255  マスク:255.255.255.0
          inet6アドレス: 2001:c90:1440:3692:21b:fcff:feb5:d716/64 範囲:グローバル
          inet6アドレス: fe80::21b:fcff:feb5:d716/64 範囲:リンク
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
          RXパケット:2638912 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:4277438 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:0
          RXバイト:271638921 (259.0 MiB)  TXバイト:5737162576 (5.3 GiB)

ここで仮想マシンを立ち上げると、以下のように vnet が追加されていきます。
vnet0     Link encap:イーサネット  ハードウェアアドレス 00:ff:ea:f3:9d:56
          inet6アドレス: fe80::2ff:eaff:fef3:9d56/64 範囲:リンク
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
          RXパケット:64 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:306 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:500
          RXバイト:7259 (7.0 KiB)  TXバイト:59290 (57.9 KiB)
以上で設定は終わりです。
一応仮想マシン側の方も確認してみます
$ ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
rtls0: flags=1004843 mtu 1500 index 2
        inet 192.168.1.15 netmask ffffff00 broadcast 192.168.1.255
lo0: flags=2002000849 mtu 8252 index 1
        inet6 ::1/128
rtls0: flags=2000841 mtu 1500 index 2
        inet6 fe80::5652:ff:fe34:e14/10
rtls0:1: flags=2080841 mtu 1500 index 2
        inet6 2001:c90:1440:3692:5652:ff:fe34:e14/64

こまかい内容はよく分かりませんが、とりあえずDHCPで192.168.1.15が割り当てられているようです。

0 件のコメント:

コメントを投稿

ZenBackWidget