Failover IP Konfigurieren

  • Guten Morgen


    Ich versuche gerade auf einem Server die Fallback IP zu Konfigurieren, und habe einfach ein paar Stolperfallen. Ich hoffe ihr könnt mir da weiterhelfen.


    Allgemeine Fragen:

    • Muss auf dem Server die "Original IP" sowie die Failover IP konfiguriert sein?
    • Muss der rDNS meinserver.domain.tls im SCP ebenfalls für die "Original IP" sowie die Failover IP konfiguriert werden?


    Mein Problem ist die Konfiguration des Interface auf Debian 9 Stretch. Ohne die Failover IP sieht dies so aus:

    Code
    iface ens3 inet static
    address 194.59.123.45
    netmask 255.255.252.0
    broadcast 194.59.207.255
    gateway 194.59.204.1
    
    iface ens3 inet6 static
    address 2a03:4000:12:34::5
    netmask 64
    gateway fe80::1

    Den Gateway konnte ich im SCP finden, und die netmask sowie broadcast habe ich mir vorher per ifconfig -a anzeigen lassen.

    Soweit so gut. Nun habe ich in einem anderen Forum den Hinweis gefunden das ich die Failover IP mittels virtuellem Interface binden muss. Gesagt getan. Ich habe an das interface folgendes angehängt:

    Code
    auto ens3:1
    iface ens3:1 inet static
    address 91.204.123.45
    
    iface ens3:1 inet6 static
    address 2a03:4000:98:76::5
    netmask 64

    Nach einem neustart und einem ifconfig -a funktioniert es zwar, und ich kann mit über die Failover IP auch auf den Server verbinden, es sind mir jedoch einige dinge aufgefallen, und ich weiss nicht ob dies so nun richtig Konfiguriert wäre.

    • Die IPv6 2a03:4000:98:76::5 wird unter ens3 aufgelistet und nicht wie die IPv4 unter ens3:1
    • Die Netmask der IPv4 lautet auf 255.0.0.0. Gem. SCP ist die FailoverIP die 91.204.123.45/32. Wäre das dann nicht die Netmask 255.255.255.255
    • Als Broadcast wird mir die 91.255.255.255 angezeigt. Hier habe ich jedoch keine Ahnung ob das stimmen könnte.
    • Zum Schluss wäre noch die Frage zum Gateway. Im SCP wird mir als Gateway die "Original IP" 194.59.123.45 angezeigt. Gehe ich recht in der annahme, dass ich diese nicht unter ens3:1 eintragen muss, da ens3:1 nur ein Zusatz von ens3 ist und er dies "selber" so findet?

    Gruss und Danke für jede Hilfe


    Oliver

  • Hi, genau, du musst die Zusatz IP auf jedem Server konfigurieren, an den diese möglicherweise geroutet wird, der Rest ist nur noch Weichenstellung. Ob du die IP jetzt an ein virtuelles Interface bindest, oder wie ich bei meinen Debian Maschinen direkt an das Interface bleibt dir überlassen. Das Gateway ändert sich nicht. Wichtig ist eben nur, dass du die Zusatz IP mit der richtigen Maske konfigurierst, wie im SCP angegeben. Beispiel für die Interface Datei wäre

    Code
    post-up ip address add <ip>/<mask> dev ens3
    down ip address del <ip>/<mask> dev ens3
  • oliver.g wie sieht denn deine interface Datei aus? Was verstehst du unter "direkt an das interface"?


    Wenn es so richtig ist:

    • Weshalb wird denn die IPv4 unter ens3:1 angezeigt, die IPv6 ber nicht?
    • Ist die Netmask mit 255.0.0.0 nicjt falsch?
  • Ok da war grad der Wurm drin bei mir :)


    Ich habe den Server nun neu aufgesetzt da es eh erst ein Testsystem ist, und deinen Inhalt bei mir in die Interface eingetragen. Vor dem Test konnte ich über die Original IP zugreifen, über die Failover nicht (wie es auch sein soll). Nach dem Eintrag und Neustart konnte ich über beide IPs zugreifen.


    Mit der Interface kenne ich mich nicht sehr gut aus, daher verzeiht mir bitte die Frage wenn sie blöd erscheint. Weshalb kann ich dann trotz des Eintrags "down ip address..." der original IP noch auf den Server zugreifen, und weshalb sehe ich unter ifconfig -a nicht auch die Failover IPs? Mit meiner Variante sehe ich ja wenigstens beide IP's auch wenn die IPv6 unter ens3 anstelle ens3:1 zu sehen ist.

    Ich finde das Thema noch schwer, da ich mit beiden Varianten einen Zugriff auf den Server habe, aber nicht sehe ob wirklich alles korrekt Konfiguriert ist. Ich möchte ungerne z.B. einen E-Mailserver aufsetzen und dort stellt sich dann heraus das es mit der Failover IP nicht klappt da was falsch ist :|


    Die Allgemeinen Fragen bleiben eigentlich bestehen, jedoch ist mir noch etwas nicht ganz klar:

    • Muss auf dem Server die "Original IP" sowie die Failover IP konfiguriert sein?
    • Muss der rDNS meinserver.domain.tls im SCP ebenfalls für die "Original IP" sowie die Failover IP konfiguriert werden?
    • Wie sieht es eigentlich mit der /etc/hosts aus? Sehe ich das richtig, dass ich dort nur die Failover IP eintrage mit meinem rDNS Namen?

    Gruss


    Oliver

    • Da die Failover IP auf die Haupt IP des Servers gerouted wird, muss die Haupt IP eingerichtet sein.
    • Den reverse DNS konfigurierst Du für jede IP.
    • In die hosts Datei würde ich keine IPs außer der Haupt IP und localhost eintragen, da ich von einem funktionierendem DNS Setup ausgehe.

    Da die Haupt IP und Failover IP getrennt voneinander eingerichtet sind kannst Du noch jeweils ausprobieren ob Haupt IP oder Failover IP erreichbar sind und die Dienste dahinter funktionieren.

  • Code
    Da die Failover IP auf die Haupt IP des Servers gerouted wird, muss die Haupt IP eingerichtet sein.
    Den reverse DNS konfigurierst Du für jede IP.

    Ok danke. War nicht sicher ob der selbe rDNS Namen auf zwei IPs gelegt werden darf. Der A/AAAA Record zeigt natürlich nur auf die Failover IP

    Code
    In die hosts Datei würde ich keine IPs außer der Haupt IP und localhost eintragen, da ich von einem funktionierendem DNS Setup ausgehe

    Ok. Dachte mal gelesen zu haben das die hosts datei beim Mailserver unerlässlich ist das dort die Domain eingetragen ist. Daher dachte ich das es die Failover IP Einträge dort braucht.

    Code
    Da die Haupt IP und Failover IP getrennt voneinander eingerichtet sind kannst Du noch jeweils ausprobieren ob Haupt IP oder Failover IP erreichbar sind und die Dienste dahinter funktionieren.

    Ok dann richte ich mal den E-Mailserver ein und teste es mit meiner Variante aus dem ersten Beitrag. Nutze einfach nochnetmask 255.255.255.255 da es eine /32er ist.

    Weisst du denn weshalb die IPv6 nicht unter ens3:1 zu finden ist?

  • Weisst du denn weshalb die IPv6 nicht unter ens3:1 zu finden ist?

    Eine Anleitung, wie mit /etc/network/interfaces umzugehen ist, findest Du in der Debian-Dokumentation: https://wiki.debian.org/NetworkConfiguration

    Dort steht auch, dass Interface-Aliases mit „:“ nicht mehr üblich sind: „Legacy Method“. Stattdessen wird dort empfohlen, IP-Aliases zu nützen. Dafür sind zwei Methoden genannt. Eine davon nutzt mehrfache Interface-Definitionen für eth0 (ens3 in Deinem Fall). Die andere Variante trägt die IP-Aliases mit ip address add (Kurzform: ip a a) ein.


    Ifconfig zeigt darüber hinaus nicht alle Einträge immer an. Mit dem Befehl ip address show (Kurzform ip a s oder ip -6 a s) sollten auch die übrigen Adressen sichtbar sein.


    Beantwortet das Deine Frage, oder gibt es noch Unklarheiten?

  • Ok danke. War nicht sicher ob der selbe rDNS Namen auf zwei IPs gelegt werden darf. Der A/AAAA Record zeigt natürlich nur auf die Failover IP

    Wenn der Name vorwärts so auflöst spricht nichts dagegen. Das macht aber in einem Failover Szenario keinen Sinn.


    Wegen der hosts Datei: wenn Du Postfix verwendest, musst Du Postfix richtig konfigurieren. Dann nimmt er nicht die falsche IP ein oder ausgehend.


    Wegen ens3:1 und IPv6: ich nutze grundsätzlich ein Script um mehrere IPv6 Adressen auf einen Host zu legen, schon allein wegen der Präferenz.

  • Beantwortet das Deine Frage, oder gibt es noch Unklarheiten?

    Vielen Dank für deine und natürlich auch für alle anderen Antworten.


    Ich habe nun die interface um folgendes Erweitert:

    Code
    iface ens3 inet static
    address 91.204.123.45
    netmask 32
    
    iface ens3 inet6 static
    address 2a03:4000:98:76::5
    netmask 64

    Und so klappt alles.

  • eripek Nun muss ich das Thema nochmals hoch holen.


    Ich habe den Server auf dem ich aktuell teste neu Aufgesetzt und das Netzwerk wie beschrieben konfiguriert.


    Ein ip a gibt mir nun beide IPv4 sowie beide IPv6 Adressen aus.


    In der hosts Datei habe ich nur die Original IPs hinterlegt.


    Wie es nun scheint, hat er Probleme mit IPv6. Ich kann von diesem Server kein ping6 ausführen. Er verliert alle Pakete. Ein apt-get update klappt somit bei der IPv6 Auflösung ebenfalls nicht.


    Was ich bisher getestet/Bemerkt habe:

    • Entferne ich den IPv6 Block der Failover IP klappt es wieder.
    • ein ping4 auf die Original-IP sowie auf die Failover IP von einem anderen Server klappt.
    • ein ping6 auf die Original-IP von einem anderen Server klappt.
    • ein ping6 auf die Failover-IP von einem anderen Server schlägt fehl.

    Jetzt weiss ich nicht so recht ob das ein Konfigurationsfehler ist, dass ich bei IPv6 anders ran gehen müsste, oder wo ich den Fehler suchen könnte.


    Vielen Dank schon jetzt für jede Hilfe.

  • Such bitte einmal im Netz oder hier im Forum nach „deprecated address“ - für IPv6 ist das der einfachere Weg. Etwa in https://forum.netcup.de/admini…reicht-werden/#post107460


    Das Problem ist, dass die Absenderadresse Deines Hosts festgelegt werden muss, denn über Gateway A ist die Adresse aus Netzwerk B nicht erreichbar. Adresse aus A muss über Gateway A laufen. Das kann eben einerseits damit geschehen, eine Adresse zu bevorzugen, oder, Du verwendest ein komplexeres Policy Routing. Ich selbst habe hier keine Failover-IP, sondern schliesse dies aus anderen Projekten mit Multihoming.


    Lass mich bitte wissen, wenn es das die Lösung war.

  • Hallo


    Die Lösung war viel einfacher.


    Damit eine Failover IPv6 funktioniert, muss folgendes gemacht werden (Danke an den tollen Support von Netcup):

    • Die gewünschte IPv6 mit z.B. ::1 am ende wie gewohnt in die interface eintragen.
    • Dann die IPv6 Failover auf den Server Routen. Dort kann man nun ebenfalls seine gewünschten IPv6 Adressen wie gewohnt hinzufügen. In meinem Beispiel ::1.
    • Nun wird hinten bei der IPv6 im SCP noch "Routing auf" angezeigt. Und diese IPv6 muss nun ebenfalls in die Interface eingetragen werden.
    • Nun noch die gewünschte IPv6 aus dem Failover Netzwerk und alles läuft.

    Auch hier danke für jede Hilfe


    Gruss


    Oliver