domU が dom0 とはまったく異なる IP (同じネットワーク範囲ではない) を持つセットアップで Xen を実行しようとしています。この答えすべてが同じ /24 範囲内で動作しましたが、完全に無関係な IP では動作しませんでした。
dom0 の /etc/network/interfaces:
# The primary interface.
# The configuration is done in the bridge.
auto eth0
# The bridge for Xen to use.
auto xenbr0
iface eth0 inet static
bridge_ports eth0
address 188.165.X.Y
netmask 255.255.255.0
network 188.165.X.0
broadcast 188.165.X.255
gateway 188.165.X.254
dom0のブリッジ(brctl show
):
bridge name bridge id STP enabled interfaces
eth0 8000.00259022aab2 no peth0
vif1.0
domU の /etc/network/interfaces:
# The primary network interface
auto eth0
iface eth0 inet static
address 91.121.A.B
gateway 188.165.X.254
netmask 255.255.255.0
domU の設定でもさまざまなネットマスクを試しました。domU がネットワークに正常に接続できるようにするには、どのように設定すればよいでしょうか?
答え1
91.121.xxはインターネット経由でゲートウェイ188.165.X.254にルーティングされると仮定します。
ゲートウェイは、91.121.xxから188.165.XYのVMホストへのルートを必要とします。
つまり、91.121.xx に到達しようとするすべてのトラフィックは、Xen サーバーに到達することになります。
前の質問では、すべてのインターフェースが同じネットワーク上にあり、すべてをメイン インターフェースにブリッジできました。これはレイヤー 2 接続です。
ただし、この場合、ゲストはホストとは異なるネットワーク上に存在します。レイヤー 3 のルーティング接続が必要です。
ホスト上で2つのことが起こる必要がある
1) 91.121.xxネットワークのインターフェースが必要 2) ルータになる必要がある
(1) については、前と同様のネットワーク設定がありますが、物理インターフェースはブリッジから除外されています。仮想マシンが接続するためのブリッジインターフェースを作成しますが、eth0 インターフェースとは別の独自のアドレスを指定します。
auto lo br0 eth0
iface lo inet loopback
iface br0 inet static
bridge_ports none
address 91.121.x.1
netmask 255.255.255.0
iface eth0 inet static
address 188.165.X.Y
netmask 255.255.255.0
network 188.165.X.0
broadcast 188.165.X.255
gateway 188.165.X.254
これが起動すると、サーバーには 2 つのインターフェースがあり、ルーターとして動作できるようになります。これはデフォルトではオフになっています。/etc/sysctl.conf
次の行を変更して、コメントが解除されていることを確認します。
net.ipv4.ip_forward=1
次のコマンド ラインでこれを一時的に有効にすることができますが、再起動後も有効にするには上記の変更が必要です。
sysctl -w net.ipv4.ip_forward=1
これで、サーバーは eth0 に到着した 91.121.xx 宛のパケットを br0 インターフェースからルーティングするようになります。そこで、VM をこのインターフェースにブリッジする必要があります。これは通常の方法とまったく同じですが、完全性のためにここに記載しています。
.cfg 内:
vif = ['bridge=br0, mac=00:16:3E:12:16:19']
domU インターフェース ファイル内:
auto eth0
iface eth0 inet static
address 91.121.A.B
gateway 91.121.x.x (this is the dom0 br0 interface address)
netmask 255.255.255.0
91.121.x.x
domU から dom0 にping し、dom0 から domU に ping することで、ブリッジ全体ですべてが正しく動作しているかどうかをテストできます91.121.x.254
。次に、domu から dom0 外部インターフェイスに ping します。188.165.X.Y
最初の ping はブリッジが機能していることを証明し、2 番目の ping はルーティングが機能していることを証明します。