web-dev-qa-db-ja.com

brctladdifの後にメインインターフェイスへの接続が失われました

最近サーバーをセットアップしていましたが、サーバーで使用可能なパブリックIPの1つをKVMゲストに割り当てることになっています。サーバーのセットアップは次のとおりです。

eno1-ホストのメインインターネット接続、パブリックIPで割り当て-ループバックvirbr0-KVMによって作成された仮想NICへのブリッジ

open Nebulaを使用して、ゲストマシンに割り当てられた仮想ネットワークにvirbr0を割り当て、ゲストマシンに特定の構成をセットアップしました。

ゲストマシン-/ etc/network/interfaces

auto ens3
iface ens3 inet static
    address y.y.y.y
    netmask 255.255.255.255
    pointopoint <provided by Host provider>
    gateway <provided by Host provider>

ゲスト構成が完了したら、ホストで次を実行します。

 brctl addif virbr0 eno1

これを実行した後、新しく割り当てられたIPを介してゲストマシンにアクセスできました。ただし、SSHまたはOpenNebulaを介してホストにアクセスできなくなりました。

なぜこれが起こるのですか? /etc/network/interfacesでvirbr0構成をセットアップして、ホストがクラッシュしても永続的になるようにする方法もありますか?

1

ホストにブリッジが必要です。今アドレスx.x.x.xを持っているとしましょう。

auto eno1
iface eno1 inet manual
auto br1
iface br1 inet static
   address x.x.x.x
   netmask <hostnetmask>
   gateway <hostgateway>
   bridge_ports eno1
   bridge_stp off
   bridge_maxwait 0
   bridge_fd 0

これらは、起動時にネットワークを構成するための設定です。

NICが1つしかない場合は、これらの設定でホストを再起動して、ブリッジをアクティブにします。または、 screenまたはtmux でネットワークを再起動します。

デュアルNICセットアップを使用している場合は、再起動する必要はありません。nic2(eno2)のアドレスを介してマシンにSSHで接続し、次に

ifdown eno1
ip link add name br1 type bridge
ip link set dev br1 up
ip link set dev eno1 master br1
ip addr flush eno1
ifup eno1

最後に、br1ネットワークインターフェイスでゲストを起動します。

Sudo kvm -net nic -net bridge,br=br1 ...
1
Stefaan Ghysels

ブリッジデバイス「virbr0:」にIPアドレスを設定する必要があります。

ip addr add y.y.y.y/32 dev virbr0

起動時に構成する詳細については、@ stefaan-ghyselsの回答を参照してください。

0
pbacterio