Proxmox - один публичный ip с несколькими vms, контейнеры openvz работают, у kvm нет маршрута

В настоящее время у меня есть только блок /30 (1 используемый IP) (я только что заказал /28 для 13 доступных пользователей, ожидающих)

Я только что установил Proxmox, настроил несколько виртуальных контейнеров. Порт перенаправил необходимые услуги / порты. Все работает. Но когда я загружаю KVM, я не могу понять, что я делаю неправильно, чтобы получить только исходящие соединения или даже без соединений.

У всех контейнеров есть набор LAN ip и устройство veth0, подключенное к vmbr1. KVM также имеет сетевое устройство с мостовым подключением к набору vmbr1 (нет, где диктовать свой LAN ip в Proxmox, как контейнеры, вот где я думаю, что моя проблема)

вот /etc/network/interfaces для квм

auto lo
iface lo inet loopback

allow-hotplug eth0
iface eth0 inet static
    address 192.168.0.102
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.25
    gateway 192.168.0.254
    dns-nameserver 8.8.8.8
    dns-search 8.8.8.8

вот /etc/network/interfaces для хозяина

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

iface eth1 inet manual

iface eth2 inet manual

iface eth3 inet manual

auto vmbr0
iface vmbr0 inet static
        address  X.X.X.X
        netmask  255.255.255.0
        gateway  X.X.X.Z
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0

auto vmbr1
iface vmbr1 inet static
        address 192.168.0.254
        netmask 255.255.255.0
        bridge_ports none
        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.0.0/24' -o vmbr0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '192.168.0.0/24' -o vmbr0 -j MASQUERADE
        # VM 100
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 10022 -j DNAT --to 192.168.0.100:22
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 10022 -j DNAT --to 192.168.0.100:22
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 192.168.0.100:80
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 192.168.0.100:80
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 192.168.0.100:443
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 192.168.0.100:443
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 192.168.0.100:443
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 192.168.0.100:443
        # VM101
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 10122 -j DNAT --to 192.168.0.101:22
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 10122 -j DNAT --to 192.168.0.101:22
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p udp --dport 9987 -j DNAT --to 192.168.0.101:9987
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p udp --dport 9987 -j DNAT --to 192.168.0.101:9987
        **# VM102 (KVM)**
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 10222 -j DNAT --to 192.168.0.102:22
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 10222 -j DNAT --to 192.168.0.102:22
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 25565 -j DNAT --to 192.168.0.102:25565
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 25565 -j DNAT --to 192.168.0.102:25565
        # VM103
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 10322 -j DNAT --to 192.168.0.103:22
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 10322 -j DNAT --to 192.168.0.103:22
        post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 3306 -j DNAT --to 192.168.0.103:3306
        post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 3306 -j DNAT --to 192.168.0.103:3306

1 ответ

Решение

У меня был неправильный IP-адрес для vmbr1 и, в свою очередь, неправильный шлюз для конфигурации интерфейса kvm eth0

исправленный квм /etc/network/interface

iface eth0 inet static
    address 192.168.0.102
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.25
    gateway 192.168.0.1

исправленный хост /etc/network/interface

iface vmbr1 inet static
        address 192.168.0.1
        netmask 255.255.255.0
Другие вопросы по тегам