OVH 服务器上的 Proxmox VE 4.2 问题,LXC 无法访问互联网

OVH 服务器上的 Proxmox VE 4.2 问题,LXC 无法访问互联网

我已将 IP 替换为虚拟 IP。

1.2.3.4 是主 IP 5.6.7.194 是 LXC 专用 IP

主服务器的详细信息:

主IP网络接口1.2.3.4

auto lo
iface lo inet loopback

iface eth0 inet manual

auto eth1
iface eth1 inet manual

auto vmbr1
iface vmbr1 inet manual
        bridge_ports dummy0
        bridge_stp off
        bridge_fd 0
        post-up /etc/pve/kvm-networking.sh

auto vmbr0
iface vmbr0 inet static
        address  1.2.3.4
        netmask  255.255.255.0
        gateway  1.2.3.254
        broadcast  1.2.3.255
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
        network 1.2.3.0

iface vmbr0 inet6 static
        address  2607:5300:120:00cc::
        netmask  64
        gateway  2607:5300:120:00FF:FF:FF:FF:FF
        post-up /sbin/ip -f inet6 route add 2607:5300:120:00ff:ff:ff:ff:ff dev vmbr0
        post-up /sbin/ip -f inet6 route add default via 2607:5300:120:00ff:ff:ff:ff:ff
        pre-down /sbin/ip -f inet6 route del default via 2607:5300:120:00ff:ff:ff:ff:ff
        pre-down /sbin/ip -f inet6 route del 2607:5300:120:00ff:ff:ff:ff:ff dev vmbr0

auto vmbr2
iface vmbr2 inet static
        address  192.168.100.1
        netmask  255.255.255.0
        bridge_ports eth1
        bridge_stp off
        bridge_fd 0

        post-up echo 1 > /proc/sys/net/ipv4/ip_forward
        post-up   iptables -t nat -A POSTROUTING -s '192.168.100.0/24' -o vmbr1 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '192.168.100.0/24' -o vmbr1 -j MASQUERADE

LXC容器网络接口文件:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 5.6.7.194
        netmask 255.255.255.255
        broadcast 5.6.7.194
        gateway 1.2.3.254
        post-up ip  route add 1.2.3.254 dev eth0
        post-up ip route add default via 1.2.3.254
        pre-down ip  route del 1.2.3.254 dev eth0
        pre-down ip  route del default via 1.2.3.254

dns-nameservers 213.186.33.99 # OVH DNS Server
dns-search ovh.net # For faster hosts resolution on the OVH network

主 IP 路由表

Main IP Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         1.2.3.254  0.0.0.0         UG    0      0        0 br0
default         1.2.3.254  0.0.0.0         UG    0      0        0 vmbr0
1.2.3.0    *               255.255.255.0   U     0      0        0 vmbr0
1.2.3.0    *               255.255.255.0   U     0      0        0 br0
192.168.100.0   *               255.255.255.0   U     0      0        0 vmbr2

LXC container Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         1.2.3.254  0.0.0.0         UG    0      0        0 eth0
1.2.3.254  *               255.255.255.255 UH    0      0        0 eth0

我无法解决网络问题。这是 OVH 服务器上的问题。有人知道吗?

答案1

这里的问题是您的虚拟机位于与您尝试使用的5.6.7.0/24默认网关不同的 IP 网络上。当然,这可能只是您的问题中的一个错误。1.2.3.4

但是,如果它们位于不同的 IP 网络中,则有两种方法可以修复此问题:

1) 将面向公共网络的接口与虚拟机的虚拟接口桥接起来,并从主 IP 子网为虚拟机分配一个公共 IP,例如1.2.3.5。然后,您可以将指定1.2.3.254为虚拟机中的默认网关。此选项要求您有可用的公共 IP。

2) 在主机和虚拟机之间建立单独的 IP 网络。在这种情况下,您不会将面向公共网络的接口与虚拟机的虚拟接口桥接,而是为主机虚拟机接口分配一个私有网络 IP,例如192.168.121.1

然后在 VM 中指定192.168.121.2该 IP 地址,并用作192.168.121.1默认网关。

最后,您需要为来自私有网络的流量添加 SNAT,以便将来自私有网络的流量更改为来自 IP 1.2.3.4。对于从外部到 VM 的任何流量,您需要在主机中为这些端口添加 DNAT。

答案2

我自己找到了解决方案。网络配置方面一切都正确。只有虚拟 Mac 地址缺失,因此添加该地址后,虚拟机现在开始响应。

相关内容