brctl addif 后与主界面失去连接

brctl addif 后与主界面失去连接

我最近在设置一台服务器,我应该将服务器可用的公共 IP 之一分配给 KVM 客户机。该服务器具有以下设置:

eno1 - 主机的主要互联网连接,分配有公共 IP lo - 环回 virbr0 - 桥接到 KVM 创建的虚拟网卡

使用 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 或 Open Nebula 访问主机。

为什么会发生这种情况? 有没有办法设置 virbr0 配置,/etc/network/interfaces以便即使主机崩溃也能保持持久性?

答案1

需要把网桥设备“virbr0”上的ip地址填入:

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

查看@stefaan-ghysels 的答案,了解启动时配置的详细信息。

答案2

您需要在主机上建立网桥。假设它现在有地址 xxxx。

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

这些是在启动时配置网络的设置。

如果你只有一个网卡,请使用这些设置重启主机以激活网桥。或者使用以下方法重启网络screen 或 tmux

如果你有双网卡设置,则无需重新启动,只需通过网卡 2(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 ...

相关内容