4

友人、Linux ブリッジ ユーティリティを使用して、qemu ゲストを実際のネットワークにブリッジしようとしています。
このために、私は非常に単純な方法を使用しています:

  1. (sudo brctl addbr br0) を使用して、ホストにブリッジを作成します。
  2. このブリッジに eth0 を追加します (sudo brctl addif br0 eth0)
  3. /etc/qemu-ifup スクリプトを変更 (brctl addif br0 $1)
  4. /etc/qemu-ifdown スクリプトを変更 (brctl delif br0 $1)

上記の 4 つの手順で、ゲストのネットワークが正常に機能するようになりました。しかし、問題は、eth0 をブリッジ br0 に接続した後、ホスト ネットワークが機能しないことです。

ステップ 1 とステップ 2 の後、ホスト ネットワークが機能しなくなることを確認しました。しかし、ゲストネットワークは引き続き機能しており、これが私を困惑させています。

誰かがこの2行の問題点を指摘できますか?

  1. (sudo brctl addbr br0) を使用して、ホストにブリッジを作成します。
  2. このブリッジに eth0 を追加します (sudo brctl addif br0 eth0)

PS : インターネットで提供されているほぼすべての方法を試しましたが、どの方法も成功しませんでした。私の質問はLinuxネットワーキングに関連しており、特にqemuではありません

4

1 に答える 1

7

私は自分の愚かさに気づきました。しかし、質問はまだ興味深く、同時に有用だったので、私はそれを閉じません。

これが問題です。eth0ではなくブリッジにIPスタックが必要です。
eth0のIPスタックがブリッジ構造を壊すためです。ソリューションにいくつかの手順を追加したところ、それは魅力のように機能します。Web上のほとんどのソリューションよりも優れています。

手順:

  1. (sudo brctl addbr br0)を使用してホスト上にブリッジを作成します
  2. eth0のIPアドレスを解放します(リンクをダウンおよびアップします)
  3. このブリッジにeth0を追加します(sudo brctl addif br0 eth0)
  4. ブリッジでIPスタックを開始します(sudo dhclient br0)
  5. / etc / qemu-ifupスクリプトを変更しました(brctl addif br0 $ 1)
  6. / etc / qemu-ifdownスクリプトを変更しました(brctl delif br0 $ 1)

私が使用したqemuコマンドは
次のとおりです。sudoqemu-system-i386-enable-kvm-net tap、vlan = 0、ifname = tap0 -net nic、vlan = 0 -hda〜/ Data / OS_DiskImages / ubuntu11.10 / disk.qcow2

ここに記載されているスクリプトの詳細な手順: リンク

于 2012-04-16T18:27:06.797 に答える