Shammer's Philosophy

My private adversaria

bridge を利用する

最終構成について

昨日の記事

 Linux(Debian wheezy) で VLAN を利用する - Shammerism

でVLAN の設定をやってみたが、最終的な目標は

  • NIC 2枚挿しで Debian をインストール
  • 片方の NIC は管理用ネットワークに接続、もう一方の NIC は検証用ネットワークへ接続
  • Xen のホストとして構成し、それぞれの VM も管理用ネットワークと検証用ネットワークへ接続

という構成にすること。

問題点

当然、NIC は 2 つなので、 Xen のホストになる DebianNIC を専有することになってしまう。しかし、最終的には複数の VM をこのホスト上で動作させ、それぞれの VM も管理用、検証用のネットワークにつなぎたい。解決策は、

  • eth0:0 とかいうような形で一つの NIC に複数の IP を割り当てる
  • bridge を使用する

前者の方法をとると、VM の数だけ eth0:0 というようなインターフェースを定義しないといけない。これはちょっと厳しい。これに大して、bridge を使用する場合は管理用ネットワークブリッジを一つ作成すれば、VM がいくつになろうとそのブリッジへつなげばよい。いわば、仮想の巨大(接続ポート数無限の)スイッチを作るイメージ。圧倒的に後者の bridge を使用する方が管理は楽だと思う。一度作成してしまえば、VM がいくつになろうと関係ない。eth0:0 という形で作成すると VM の数ごとにこれが増えることになる。これは避けたい。

作成方法

コマンドラインによる方法
  1. apt-get install bridge-utils(Maybe already installed. If not installed, next command would be failed.)
  2. brctl addbr $ManagementBridgeName
  3. brctl addif $ManagementBridgeName $ManagementInterface

実際の例はこんな感じだ。(eth1 が管理用ネットワークに接続している NIC とする)

# brctl addbr xenbr1
# brctl addif xenbr1 eth1
# brctl show 
/etc/network/interfaces に定義する方法

以下のように記載する。(eth1 が管理用ネットワークに接続している NIC とする)

# 
# This is a management xenbrige configurations. 
# 
auto	eth1 
iface eth1 inet manual 
auto	xenbr1 
iface xenbr1	inet	static 
    bridge_ports	eth1 
    address	10.0.0.1 
    netmask	255.0.0.0 
    network	10.0.0.0 
    broadcast	10.0.0.255 
    gateway	10.255.255.254 
        dns-nameservers	***.***.***.***	***.***.***.*** 
        dns-search ***.com

bridge_ports は、このブリッジには eth1 が接続している、ということ。ここまでやって再起動し、通信に問題がなければ次のステップへいける。後日、VLAN につながる bridge の定義をまとめたい。