LAN mit zwei Gateways
-
Mag jemand einem Anfänger helfen?
Ich habe ein LAN mit zwei WAN-Gateways, beide über eine eigene pfsense appliance angeschlossen:
Pfsense1 (192.168.1.1)
Pfsense2 (192.168.1.2)Beide sind aus den Internet erreichbar und die Einwahl per OpenVPN klappt bei beiden.
Außerdem gibt es zwei interne Webserver
webserver1 (192.168.1.100) hat als Gateway Pfsense1 (192.168.1.1)
webserver2 (192.168.1.200) hat als Gateway Pfsense2 (192.168.1.2)Wenn ich aus dem Internet mit OpenVPN über Pfsense1 (192.168.1.1) einwähle komme ich eine http Verbindung zu webserver1 (192.168.1.100) und auch auf das Webinterface von Pfsense2 (192.168.1.2) kann ich aufrufen.
Ich bekomme aber keine http Verbindung zu webserver2 (192.168.1.200). Per ping ist der Server erreichbar.
Umgekehrt ist es vergleichbar. Also Einwahl über Pfsense2 erreichbar per http sind webserver2 und Pfsense1 aber nicht webserver1.
Was fehlt hier?
Danke und viele Grüße
Richard -
@nanu Warum sind deine WAN-Gateways auf dem LAN? Die gehören auf separate WANs.
-
@nanu
Hallo,grundsätzlich sendet jeder Host sein Antwortpakete auf Anfragen von außerhalb des eigenen Subnetzes auf sein Standardgateway.
Dieses Verhalten lässt sich nur mit statischen Routen ändern.
Also angenommen Host 1 hat pfSense 1 als Standardgateway, so müsstest du für das VPN Subnetz von pfSense 2 eine statische Route hinzufügen (am Host 1) und dieses auf pfSense 2 routen.Diese Lösung ist eben sehr statisch, für VPN Subnetze wäre es allerdings machbar. Für weitergeleitete Verbindungen aus dem Internet wäre das schwieriger.
Eine Lösung, die alle fälle abdeckt, wäre die Quell-IP auf die LAN-IP zu natten. Das geht mit eine Outbound NAT Regel und könnte über einen Alias nur auf die Ziel beschränkt werden, die die jeweilige pfSense nicht als Default Gateway haben.
Damit kommen die Pakete vom lokalen Subnetz und der Host sendet seine Antwort eben an diese IP zurück. -
@viragomann Danke für die schnelle Antwort.
So hatte ich das auch gedacht und auf Pfsense2 (192.168.1.2) habe ich folgende statische Route eingetragen:
Network 192.168.101.0/24 Gateway 192.168.1.1 (also pfsense1)
Trotzdem kann ich von meinem Rechner, der über Pfsense1 (192.168.1.1) eingewählt ist und dort 192.168.101.7 zugewiesen bekommen hat, webserver2 (192.168.1.200) zwar per ping, aber nicht per http erreichen.
Danke und viele Grüße
RichardP.S.: @Bob.Dig das WAN hängt natürlich am WAN Port, da habe ich mir nicht klar genug ausgedrückt. Ich sehe das Problem beim Routing im LAN und habe ich WAN Seite mal ausgeblendet und nur die LAN-IPs erwähnt, denn die Einwahl per VPN klappt ja über beide WAN Anschlüsse.
-
@nanu said in LAN mit zwei Gateways:
So hatte ich das auch gedacht und auf Pfsense2 (192.168.1.2) habe ich folgende statische Route eingetragen:
Ich hatte geschrieben, die Route muss am Zielhost hinzugefügt werden.
Am Gateway hilft sie nicht. Das führt zu asymmetrischem Routing. pfSense 2 erwartet kein Antwort-Paket für das sie keine Anfrage gesehen hat und verwirft es.
Edit;
Ich bin aufgrund von Empfehlungen hier dazu übergegangen, auch Server-IPs per DHCP zuzuweisen. Damit lassen sich dann auch Routen verteilen. -
klappt, vielen Dank für Deine Geduld.
Richard -
@viragomann said in LAN mit zwei Gateways:
Damit lassen sich dann auch Routen verteilen.
Worauf bezieht sich das?
-
@Bob-Dig
Auf DHCP Server.
Der weist den Clients ja die Netzwerk-Einstellungen zu. Typischerweise sind das IP, Subnetzmaske, DNS. Der kann aber auch weitere Netzwerkparameter zuweisen, so bspw. statische Routen.Mit den auf pfSense verfügbaren DHCP Servern habe ich das allerdings noch nicht gemacht, aber meines Wissens kann ISC das auch.
-
@nanu said in LAN mit zwei Gateways:
Wenn ich aus dem Internet mit OpenVPN über Pfsense1 (192.168.1.1) einwähle komme ich eine http Verbindung zu webserver1 (192.168.1.100) und auch auf das Webinterface von Pfsense2 (192.168.1.2) kann ich aufrufen.
Ich bekomme aber keine http Verbindung zu webserver2 (192.168.1.200). Per ping ist der Server erreichbar.
Umgekehrt ist es vergleichbar. Also Einwahl über Pfsense2 erreichbar per http sind webserver2 und Pfsense1 aber nicht webserver1.
Was fehlt hier?
Das ist asymmetrisches Routing² und wird dir gern und immer dann wenn du nicht damit rechnest tolle Probleme bescheren. Das Setup ist ziemlich "kaputt". Zwei Gateways mit jeweils eigenem Internet und VPN die dahinter ins gleiche Netz verbunden sind, ist kein Setup was man empfehlen würde. Wenn man das so hart trennen mag, dann sollte man das LAN von pfSense1/2 trennen und dort wirklich nur deren Webserver anhängen. Die Sensen aber untereinander und mit den Webservern ins gleiche Netz zu packen schreit nach Problemen.
Wenn man ein sinnvolles MultiWAN Konzept bauen möchte, dann sollten beide WANs auf der gleichen Sense - oder besser auf einem Cluster aus 2 Geräten - aufliegen. Dann kann auch gern eine ausfallen, es kann ein WAN ausfallen, etc. etc. - alles wäre sinnvoll redundant. Aber so ist das eine Art "poor-mans-choice-of-redundancy" was einem dann wegen der Routen über Kreuz und der gleichen IP Ranges gern jederzeit um die Ohren fliegen kann. Gerade dann wenn auf den beiden pfSensen1/2 auch vielleicht noch das gleiche VPN Einwahlnetz verwendet wird :) Denn dann ist für die Geräte das Chaos komplett ;)
Und es ist super, dass es jetzt erstmal geht, aber wie gesagt die Asymmetrie des Netzes ist dadurch nicht behoben und das kann zu jeder Menge Fehlersituationen führen, die man eigentlich vermeiden möchte. Im Support bekommen wir solche Sachen leider ständig und nur weil es jetzt vielleicht (noch) funktioniert, würde ich trotzdem dazu raten, das Setup grundlegend zu überdenken :)
Cheers! :)