Proxmox + Zusätzliche IP’s im KVM Mode

Ich vergesse es immer wieder, daher schreib ich es mal nieder. Es ist schon manchmal ein Kampf mit Proxmox und den zusätzlichen IP’s der jeweiligen Hoster klar zu kommen. Jeder macht es anders, egal ob Hetzner, OVH, Xirra, Serverloft oder meine osteuropäischen Freunde 😉

Als erstes sollte man ganz klar wissen: Jeder gängige Provider sollte zufällig generierte MAC Adressen verwerfen und den Zugriff darüber sperren, deshalb ist eine Config nur im Routed Mode zuverlässig benutzbar, auf NAT und andere Modelle gehe ich hier nicht ein.

Setup für IP’s im selben Subnetz:

Wichtig ist beim eth0 dass Proxy ARP aktiviert wird damit die individuellen MAC Adressen der KVM Gäste maskiert werden.

auto eth0
iface eth0 inet static
        address 111.111.111.111
        netmask 255.255.255.0
        network 111.111.111.0
        broadcast 111.111.111.255
        gateway 111.111.111.1
        dns-nameservers 8.8.8.8 8.8.4.4
        dns-search domain.org
        up echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
        post-up brctl addbr vmbr0

Wir legen eine Bridge mit dem Namen vmbr0 an und vergeben die selben IP Informationen. Legen aber für jede zusätzliche IP eine Route an. Das können wir bei vielen Adressen auch mit der Anfags IP und deren Netzmaske abkürzen, der Befehl

up route add -net 111.111.111.0/24 dev vmbr0

würde z.B. eine Route für ein 24er Netz hinzufügen. Hier das vollständige Beispiel mit den Zusatzadressen 112 bis 114:

auto vmbr0
iface vmbr0 inet static
        address 111.111.111.111
        netmask 255.255.255.0
        broadcast 111.111.111.255
        bridge_ports none
        bridge_stp off
        bridge_fd 0
        up route add -host 111.111.111.112 dev vmbr0
        up route add -host 111.111.111.113 dev vmbr0
        up route add -host 111.111.111.114 dev vmbr0

Jetzt kann im Guest einfach eine Zusatz IP als IP Adresse vergeben werden, der Gateway ist die Haupt IP Adresse des Hosts, in diesem Fall wäre es die 111.111.111.111. Natürlich müssen auf dem Host u.a. noch IPv4 Forwarding in der /etc/sysctl.conf aktiviert werden. Die nötigen Optionen dafür kann man sich allerdings leicht ergooglen und würden diesen Tip hier sprengen.

  1. Servus,

    und wie wäre es wenn die Zusätzliche IP’s nicht in dem selben Netzwerk sind. Z.B. Dein main IP ist 111.111.111.111, und du bestellest eine zusätzliche IP, und kriegst 222.222.222.222, und die nächste zusaetzliche IP die du kriegen wirst ist wahrscheinlich 333.333.333.333. Stehe nähmlich auf einem solchen Provider und habe aktuell das Problem…

    Würde mich seher freuen, deine Gedanken oder Hinweise mitkriegen zu können.

    • Koennen die neuen IPs denn den alten GW nutzen? Falls nein, sind die neuen IPs mit einer MAC Adresse versehen oder kannst du die beantragen?

      • Als Information kriege ich nur die IP z.B. 222.222.222.222 und netmask 255.255.255.255 (NM ist kein Beispiel hier, so kriege ich es vom Provider), wenn ich es als zusaetzliche IP im /etc/network/interfaces als virtuelles network interface hinfuegen will, soll ich nur filgendes hinfuegen:

        auto eth0:0
        iface eth0:0 inet static
        address 222.222.222.222
        netmask 255.255.255.255

        und der Server ist auf die IP 222.222.222.222 dann erreichbar, also ich gehe davon aus, dass die den selben GW wie die main IP benutzt

        ich bin auch sicher, dass es auf dem switch MAC port securtity and ist, und es wird nur eine MAC zugelassen

        • Hi blocker,

          ich stehe gerade vor dem selben Problem – konntest Du das Rätsel lösen? Die üblichen Config-Vorschläge haben bei mir nicht funktioniert 🙁

  2. Hi,
    vielen Dank für die Informationen, die haben mir gut weiter geholfen.
    Einen Tipp habe ich noch, doppelte IP-Adressen würde ich nicht per Hand vergeben. OpenSwan (ipsec) startete bei deiner Konfiguration nicht. Habe der Bridge eine eigene IP gegeben (10.0.0.1) und das Problem war beseitigt.
    Die Option “post-up brctl addbr vmbr0” habe ich auch nicht gebraucht, Debian startet die Bridge automatisch.

  3. Auch wenn der Beitrag von Dir etwas älter ist: Weißt Du zufällig, wie man die echten IP beim raustelefonieren angezeigt bekommt?

    Pingt irgendeine VM selbstständig nach draußen, wird die IP vom Host angezeigt und nicht die IP, die zugeteilt ist.

    Ist nämlich bei allen VMs so, sodass ich davon ausgehe, dass ich irgendwo dezent blind bin und den Fehler meinerseits nicht finde…

  4. Moin,

    habe das problem, das ich zwei unterschiedliche IP -Netze habe. Beim vmbr0 ist eine netz da und meine vm´s nehmen sich dann aus dem netz eine verfügbare raus, also alles supi, aber wie kann ich nun das 2. ip netz mit vmbr1 erstellen, bzw. was wäre zu beachten?

    Vielen Dank für die Hilfe

  5. Hallo,

    Deine Eintrag ist GoldWert 🙂
    Eine Frage habe ich dazu, ich würde das gerne für einen HA Cluster einrichten, aber wenn ich die Routen auf beiden Server konfiguriere ist leider Polen offen, da meist der Falsche mit der MAC antwortet.
    Weißt du wie ich das hinbekomme?
    Danke.

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

This site uses Akismet to reduce spam. Learn how your comment data is processed.