Citrix XenServer上でプライベートネットワーク構築
背景(読まなくてOK)
i7 12GBメモリのマシンにCitrix XenServerを入れ,「これで仮想マシン使い放題!」と思ったのもつかの間.
そのまま仮想マシンを作っても,ブリッジ接続にしかならず,IPが枯渇してしまう.IPv4の枯渇も問題だけど,うちのネットワークは既に*.254がDHCPから割り振られてしまう状態.絶賛枯渇中です.
で,XenCenterでNetworkタブを開いてみたら,「Add Network...」のボタンを発見.これはプライベートネットワークを構築すれば,これ以上IP消費せずにいけるんじゃなかろうか? と思い立ったわけです.
Agenda
の5本立てです.
プライベートネットワークの作成
XenServer上では,「Internal Network」.
- XenCenterを立ち上げる
- 左側のツリーから,物理サーバを選ぶ
- 右側上部のタブから「Network」を選ぶ
- 「Add Netowrk...」をクリック
- Internal Networkを作成する
この時点ではIPレンジ等はまったく関係ない.
XenServer内部に,新たなハブが出来上がったと考えると分かりやすいかも.
NATルータとなる仮想マシンの作成
既に仮想マシンがある場合は,シャットダウンしてNetowrkタブを開いて,「Add Interface...」をクリックし,先程作ったInternal Networkを追加.
新規に仮想マシンを作成する場合は,Networkの設定画面にて,「Network 0」はそのままに,新たに作成したInternal Networkも追加.
MAC Addressは自動生成のままで.
あとは普通に(OpenSSHは入れましたが)インストール.
NATルータ上にDHCPサーバ構築
ネットワーク設定
/etc/network/interfacesを編集.編集後,"/etc/init.d/networking restart".
# The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet dhcp # ここはstaticに設定して良いが,今回は重要でないのでDHCPのまま. auto eth1 iface eth1 inet static address 192.168.2.1 netmask 255.255.255.0 gateway 192.168.1.1
DHCPサーバ設定
/etc/dhcp3/dhcpd.confに以下を追記.
subnet 192.168.2.0 netmask 255.255.255.0 { range 192.168.2.100 192.168.2.200; option routers 192.168.2.1; }
NATルータの設定
ufwを使う.
https://help.ubuntu.com/10.04/serverguide/C/firewall.html#ip-masquerade-ufw
を参考に(というかそのまま).
/etc/ufw/before.rules に追記
追記というよりも,前追? 既にいろいろと書いてあるのだが,先頭の11文ぐらいのコメントの直後に以下を書く.COMMITまで忘れずに.
# nat Table rules *nat :POSTROUTING ACCEPT [0:0] # Forward traffic from eth1 through eth0. -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE # don't delete the 'COMMIT' line or these nat table rules won't be processed COMMIT