PfSense HA mit öffentlichem Subnetz



  • Hallo an alle :)

    Für unsere Firma muss ich eine bestehende pfSense auf HA erweitern. Leider gibt es, soweit ich die Sache mit CARP verstanden habe ein kleines Problem, was ich glaube so nicht lösen zu können.

    Folgende Topologie ist derzeit im Einsatz:

    
    	INTERNET
    	   |
         .-----+-----.
         |     GW    |  (vom ISP, kein Zugriff)
         '-----+-----'
    	   |
    	   | public subnet (/29)
    	   | 5 IP-Adressen an 1x WAN IF der pfSense (virtuelle IPs)
    	   | je ip-adresse NAT auf eigenen Dienst
    	   |
         .-----+-----.
         |  pfSense  | (um dieses System geht es)
         '-----+-----'
    	   |
    	   |	DMZ
    	   |
         .-----+-----.
         |     FW    |  (other firewall)
         '-----+-----'
    	   |
    	   | LAN
    
    

    Insgesamt also nichts aufregendes.

    Vom Provider haben wir ein öffentliches /29 Subnetz, also 5 nutzbare IPs, welche auch auf verschiedene Dienste in der DMZ über NAT verteilt sind.
    Wenn ich nun eine zweite pfSense dazu nehme, so benötige ich auf der externen Seite drei IPs allein für ein funktionierendes CARP, richtig? Soweit jedenfalls glaube ich das verstanden zu haben.
    Ich habe zwar 5 IPs, diese müssen nun aber die VIPs sein, da sie im Fehlerfall ja schließlich von der anderen pfSense übernommen werden sollen.
    Daraus folgt, ich habe keine IPs im öffentlichen Subnetz für CARP.

    Mein Gedanke war nun, dass ich für das CARP zwei Adressen aus einem beliebigen Subnetz verwende und als VIPs die öffentlichen Adressen verwende.
    Ist das so möglich?

    Ich gehe davon aus, dass es nicht möglich ist, da ich nichts in den endlosen Weiten des Internets dazu gefunden habe.
    Was für Möglichkeiten habe ich sonst?

    Vielen Dank schon einmal!

    Grüße, Alex



  • Hallo,

    zwei IP Adressen fallen weg. Die kann man nicht nutzen bzw sollte man nicht da wenn die PfSense ausfällt eben die IP auch nicht mehr da ist.
    Hast du also 5 Nutzbare IP Adressen kannst du 3 davon benutzen und als VIP anlegen.



  • Ok, danke. Wie ich befürchtet habe…
    Leider sind die 5 IPs schon fest vergeben. Eventuell finde ich ja eine andere Lösung...

    Danke!



  • Hallo.

    @alex.f:

    Mein Gedanke war nun, dass ich für das CARP zwei Adressen aus einem beliebigen Subnetz verwende und als VIPs die öffentlichen Adressen verwende.
    Ist das so möglich?

    Ja, das ist möglich, mit kleinen Einschränkungen.

    Es ist nur wichtig, dass jedes CARP Interface mit seinem Partner kommunizieren kann. Auf welcher IP es das tut, ist dabei egal, jedenfalls bei aktuellen Versionen.

    Du kannst also den beiden WAN Interfaces eine IP im 10.0.85.8/30 Netz geben und erstellst auch eine CARP-VIP in diesem Netz, dann erstellst du all deine 5 öffentlichen IPs als IP Alias und wählst als Interface die WAN-CARP-VIP.
    Nun kannst du alle 5 nutzen, wie du möchtest.

    Einschränkung: Die Backup-Firewall erreicht das Internet nicht, weil als Outbound NAT-IP eine WAN-VIP verwendet werden muss, und diese gehört dem Master. Wird die 2. Master, kommt sie natürlich ins Internet.
    Weiß nicht, ob es für das Problem schon einen Workaround gibt, ich verwende das (noch) nicht.

    Grüße



  • Vielen Dank.
    ich werde das Testen, bin nur gerade im Urlaub ;)

    Grüße!


  • Moderator

    Was viragomann schreibt.

    Das Problem ist ebenfalls genau das beschriebene. Die Standby Firewall kommt nicht mehr direkt ins Netz, womit in aktuellen Versionen ein Update nicht möglich ist ohne dass das Gerät Master wird. DAS allerdings möchte man vllt. nicht unbedingt, denn dann müssten man die Master Firewall manuell demoten bis die Standby vom Netz geht und danach dann wieder manuell schwenken. Der Vorteil eines CARP Clusters - Updates gehen ohne Downtime - fällt damit flach, da man manuell eingreifen und basteln muss. Andere Möglichkeit ist, wenn man eine IP noch frei hat, dem Standby Gerät dann temporär diese zuzuweisen, damit wenigstens damit die Verbindung klappt.

    Ich würde aber in dem Zuge nachfragen:

    1. ob man vom Provider vielleicht eine Aufstockung auf /28 bekommen könnte oder
    2. ob wirklich ALLE IPs so gebraucht werden wie sie genutzt werden. Kommt oft genug vor, dass es heißt 5 IPs MUSS sein, um dann festzustellen, dass da völlig unterschiedliche Dienste auf unterschiedlichen Ports laufen, die man auch zusammenfassen oder mittels Proxy (haproxy & Co.) auflösen könnte.

    Grüße



  • Gewiefte Leute haben sich zu dem Thema "Backup erreicht das Internet nicht" mittlerweile schon einen Workaround einfallen lassen. Sieht in etwa so aus:

    Die WAN IP der jeweils anderen pfSense wird als Default Gateway mit niedriger Prio angelegt.
    Zuvor sollte am Master in System > High Availability Sync das Synchronisieren von "Static Route configuration" entfernt werden, ansonsten verwendet sich der Master selbst als Gateway, was wohl wenig Sinn macht. Und in System > Advanced > Firewall & NAT ist ein Haken bei "Bypass firewall rules for traffic on the same interface" setzen, möchte man nicht auch noch eigene Regeln für diesen Traffic anlegen.

    Dann sollte auch die Backup-FW das Internet über den Master erreichen können und alles ist fein. Getestet habe ich das aber selbst noch nicht, daher weiß ich auch nicht, wie reibungslos das tatsächlich funktioniert.

    Grüße



  • @JeGr:

    1. ob wirklich ALLE IPs so gebraucht werden wie sie genutzt werden. Kommt oft genug vor, dass es heißt 5 IPs MUSS sein, um dann festzustellen, dass da völlig unterschiedliche Dienste auf unterschiedlichen Ports laufen, die man auch zusammenfassen oder mittels Proxy (haproxy & Co.) auflösen könnte.

    Hi,

    genau in diese Richtung gehen jetzt auch unsere Überlegungen.

    Auf 4 IPs laufen verschiedene Dienste (80/443,25,20/21 usw. im 1:1 NAT), wie z.B. das ganze Exchange Gedöns, HTTP/S, mehrere FTPs, SMTP, ADFS, Lync, VPN-Tunnel, …
    Und die übrige IP für den ganzen ausgehenden Clienttraffic.

    Irgendwie können wir die bestimmt auf 3 IPs reduzieren :)

    Grüße


  • Moderator

    Und die übrige IP für den ganzen ausgehenden Clienttraffic.

    Da könntet ihr übrigens mogeln, wenn ihr das Subnetz geroutet bekommt :D