Problem mit Split-VPN, DNS und Routing (Beispiel: Moodle)
Problem mit Split-VPN, DNS und Routing (Beispiel: Moodle)
sdfsdfBei Nutzung des Split-VPN kann es zu Verbindungsproblemen kommen, wenn interne Clients einen externen DNS-Server verwenden und dadurch eine externe IP-Adresse für einen eigentlich internen Dienst erhalten.
Hintergrund
Beim Split-VPN wird nur bestimmter Netzwerkverkehr über das VPN geroutet (z. B. interne Netze).
Der restliche Verkehr wird direkt über das lokale Netzwerk bzw. das Internet gesendet.
Wenn ein Client jedoch externen DNS verwendet, kann Folgendes passieren:
Beispiel: Moodle
Die Adresse moodle.bszn-da.de kann auf zwei verschiedene IP-Adressen zeigen:
172.31.200.11
Extern: 130.83.90.135
Wird ein interner DNS-Server verwendet, erhält der Client die interne Adresse und kann den Dienst direkt erreichen.
Wird jedoch ein externer DNS-Server genutzt, erhält der Client die externe Adresse.
Da diese aus dem internen Netz nicht erreichbar ist, schlägt die Verbindung fehl.
Ping-Tests
Auflösung über internen DNS
[09:52] moodle.bszn-da.de → 172.31.200.11 (intern) 6 Pakete, 0% loss | min/avg/max = 2.5 / 6.7 / 18.3 ms
Auflösung über externen DNS
[10:27] moodle.bszn-da.de → 130.83.90.135 (docker2.da.schule.hessen.de, extern) 8 Pakete, 0% loss | min/avg/max = 31.4 / 40.7 / 58.0 ms
Direkte Tests
[10:28] Direkt → 172.31.200.11 (intern) 7 Pakete, 0% loss | min/avg/max = 2.8 / 4.0 / 5.0 ms
[10:28] Direkt → 130.83.90.135 (extern) — kein Ergebnis
Ursache
Der Fehler entsteht durch die Kombination aus:
Der Client versucht den Dienst über eine Adresse zu erreichen, die aus dem aktuellen Netzwerkpfad nicht geroutet werden kann.
Lösungsmöglichkeiten
Folgende Maßnahmen verhindern das Problem:
172.31.200.11 moodle.bszn-da.de
Damit wird verhindert, dass interne Systeme versuchen, einen intern gehosteten Dienst über eine nicht erreichbare externe Adresse aufzurufen.