28 5月 2009 @ 6:46 PM 

前回xenのインストールをしてドメインUからドメイン0のネットワークがつながるところまでいったが、ドメイン0からインターネットに接続できないっていうかゲートウェイまでたどり着けないという状況に陥ったところで終わった。
それからごちゃごちゃ試行錯誤したり、調べたりしていたんだが、ついに外部ネットワークに接続できた。

結論からいうと、xenの設定は前回のでOKだった。
なにがだめだったのかというと、iptablesの設定だった。

xenのネットワークはいままで、peth — eth — xenbr — vif という形でつながっていた。
pethは本物の物理インターフェイスで、ethはホストの仮想インターフェイス、xenbrは仮想ブリッジ、vifがゲストドメインの仮想インターフェイスだ。
ところが、今回いれたxenはバージョン3.2になるが、このバージョンではxenbrとethが統合されたようだ。
そのため、前書いた通りxenbrが生まれない状態となる。
つまり、前回の状態は正しい状態だった。
xenをアップグレードしたらネットワークにつながらなくなったとかいう人は、ドメインUのvifが使うブリッジにxenbr0とか指定していたらeth0とかに変えてみるとつながるかと思う。
そのため、brlctlをたたくとこんな感じに表示される。

# brctl show
bridge name    bridge id        STP enabled    interfaces
eth0        8000.000e0cb58317    no        peth0
                            vif8.0

xenのブリッジ生成を行うスクリプトは、/etc/xen/scripts/network-bridgeで、この子がその辺の作業をする。
ドメインUが持つ仮想インターフェイスの生成とブリッジへの接続はvif-bridgeが行う。

で、最初に書いたがiptablesの何が問題だったかというと、FOWARDチェインをDROPしていたのが原因だった。
うちのサーバでルーティングするという予定はなかったので、FOWARDをDROPしていたんだけども、xenによる仮想ネットワークではブリッジによるFOWARDが行われるからだ。

原因を突き止めるのにxenのネットワークの仕組みを勉強しまくって、カスタムネットワーク構築も出きるようになっちゃったよ。。。


Posted By: ゆ。
Last Edit: 28 5月 2009 @ 06:52 PM

EmailPermalink
Tags
Tags: ,
Categories: Linux, PC


 

Responses to this post » (One Total)

 
  1. [...] Xenを使って仮想化しているマシンではネットワークも仮想化される。 そのあたりはこちら参照。 [...]

Post a Comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


 Last 50 Posts
 Back
Change Theme...
  • Users » 100
  • Posts/Pages » 314
  • Comments » 177
Change Theme...
  • VoidVoid « Default
  • LifeLife
  • EarthEarth
  • WindWind
  • WaterWater
  • FireFire
  • LightLight