私はローカルネットワーク192.168.1.1/24
を持っています。私はlibvirtを使用しており、仮想マシンでもこのネットワーク、少なくとも192.168.1.128/25
などのサブネットワークを使用する必要があります。ただし、すべてのlibvirtブリッジオプションは別のネットワークを作成し、ネットワークを使用するように設定できません。VirtManagerでエラーが発生し、転送されたネットワークを手動で定義します。
`` `
<network>
<name>mynetwork</name>
<bridge name="mybr0" />
<forward mode="route" dev="em1"/>
<ip address="192.168.1.1" netmask="255.255.255.0">
<dhcp>
<range start="192.168.1.128" end="192.168.1.254" />
</dhcp>
</ip>
</network>
`` `
次のエラーが発生します。
virsh # net-start mynetwork
error: Failed to start network mynetwork
error: internal error: Network is already in use by interface em1
VirtualBoxには、ルーターのDHCPサーバーからIPを取得するだけのブリッジ接続を作成するオプションがあり、ネットワーク内の別のマシンのように機能します。どうすればこれを達成できますか? bridge-utils
パッケージを使用して手動でブリッジを作成しようとしましたが、今のところうまくいきません。
編集:私はUbuntu14.04を使用しています。
KVMでブリッジ接続を作成する方法を説明できますが、VirtualBoxとは異なります。ゲストマシンのIPアドレスはDHCPサーバーによって割り当てられませんが、ユーザーが選択した静的IPであり、できれば外部にあります。 DHCPプール。
ケーブル接続を使用する場合、 libvirt Wikiページ は、イーサネットインターフェイスをVMとブリッジする方法を示しています。
注意:上記はイーサネットIFでのみ機能します。ワイヤレスインターフェイスをブリッジすることは可能ですが、この方法ではできません。
Bohdi Zazenによるこの素敵な投稿 これを行う方法を示しています。 arp-proxyを使用して、arpトラフィックを特別に細工されたtapインターフェイスに中継します。古い機能は1つだけです。それは、tunctlコマンド/パッケージを使用したtapインターフェイスの作成です。それをしないでください、iprouteはあなたのためにそれを世話することができます:
ip tuntap add tap0 mode tap user root
ip link set tap0 up
そうでなければ、彼の解決策は完璧に機能します。
静的IPを使用するという考えが耐えられない場合は、説明されているように、ブリッジではなくNAT)を実行できます ここ 。