KVM 桥接器;客户无法到达网关

KVM 桥接器;客户无法到达网关

我有一台服务器。它配置了一个公共 IP,并且我通过网桥分配了 /29 子网。

KVM 已安装并按预期运行。我可以创建并启动虚拟机,但定义网络访问时,事情开始出错。

如果我手动输入访客的 IP(来自 /29)。我输入主机 IP 作为网关,然后收到网关不可达的消息。

以下是/etc/network/interfaces

auto lo
iface lo inet loopback
iface lo inet6 loopback

auto br0
iface br0 inet static
  address 144.76.15.98
  netmask 255.255.255.224
  gateway 144.76.15.97
  pointopoint 144.76.15.97
  bridge_ports eth0
  bridge_stp off
  bridge_maxwait 0
  bridge_fd 0
  up route add -host 136.243.185.120 dev br0
  up route add -host 136.243.185.121 dev br0
  up route add -host 136.243.185.122 dev br0
  up route add -host 136.243.185.123 dev br0
  up route add -host 136.243.185.124 dev br0
  up route add -host 136.243.185.125 dev br0
  up route add -host 136.243.185.126 dev br0
  up route add -host 136.243.185.127 dev br0

我究竟做错了什么?

答案1

这取决于您的接口背后是什么eth0,但是将您的外部网络与虚拟网络桥接起来看起来是错误的,因为它们使用不同的 IP 地址。

我认为,如果您将主机设置为 eth0 和 br0 之间的路由器,事情会变得更好。

如果您使用 136.243.185.120/29 作为子网而不是逐个 IP 进行路由,事情可能会更简单。

你可能会得到如下结果:

auto eth0
iface eth0 inet static
  address 144.76.15.98
  netmask 255.255.255.224
  gateway 144.76.15.97

auto br0
iface br0 inet static
  address 136.243.185.121
  netmask 255.255.255.248
  bridge_ports eth0
  bridge_stp off
  bridge_maxwait 0
  bridge_fd 0

您还必须启用数据包转发功能sysctl net.ipv4.ip_forward=1

如果您无法承受 136.243.185.120/29 网络中“丢失” 3 个地址,则可以像以前一样,br0使用地址144.76.15.98、网络掩码进行配置,然后手动将 8 个地址路由到该接口。255.255.255.255

相关内容