OpenVPN routing Probleme im VLAN
Hallo zusammen,
ich bin gerade etwas am verzweifeln beim Aufsetzen eines OpenVPN Clients. Der Client läuft auf einem Ubuntu 20.04 als VM in einer ESXI Umgebung. Ohne VPN hat die VM Internetzugriff und kann auch auf die anderen Hosts im Netzwerk zugreifen.
Die VM befindet sich in VLAN12 und sobald ich den Client starte ist die VM nur noch sehr schwer erreichbar. Ich kann zum Beispiel keine weitere ssh Session zur VM aufbauen. Habe ich vorher bereits eine weitere Session offen und starte dort htop, friert htop in dem Moment ein, in dem der VPN Client die Routing Einträge anlegt:
Sat Oct 31 10:52:35 2020 /sbin/ip link set dev tun0 up mtu 1500
Sat Oct 31 10:52:35 2020 /sbin/ip addr add dev tun0 local 10.32.0.238 peer 10.32.0.237
Sat Oct 31 10:52:37 2020 /sbin/ip route add 89.187.165.53/32 via 192.168.12.1
Sat Oct 31 10:52:37 2020 /sbin/ip route add 0.0.0.0/1 via 10.32.0.237
Sat Oct 31 10:52:37 2020 /sbin/ip route add 128.0.0.0/1 via 10.32.0.237
Füge ich der openvpn config "route-nopull" hinzu, startet der VPN Client und das routing der VM funktioniert normal. Dann werden allerdings, logischerweise, keine Verbindungen durch den VPN getunnelt.
Es läuft also irgendwas mit den automatisch erzeugten Routen falsch ... .
Wenn ich mich im VLAN 1 befinde, funktioniert der VPN Aufbau und das Routing einwandfrei ... . An meinem Server habe ich einfach mal die NIC für die spezielle VM getauscht um das zu überprüfen.
Woran kann es liegen, dass das routing für einen Client in einem VLAN nicht funktioniert?
Setup:
VM-IP: 192.168.12.2
VLAN12: 192.168.12.0/24
config:
dev tun
fast-io
persist-key
persist-tun
nobind
remote <URL>
remote-random
comp-lzo no
pull
tls-client
verify-x509-name Server name-prefix
ns-cert-type server
key-direction 1
route-method exe
route-delay 2
tun-mtu 1500
fragment 1300
mssfix 1200
verb 3
cipher AES-256-CBC
keysize 256
auth SHA512
sndbuf 524288
rcvbuf 524288
auth-user-pass password.txt
<cert>
</cert>
<key>
</key>
<tls-auth>
</tls-auth>
<ca>
</ca>
ich bin gerade etwas am verzweifeln beim Aufsetzen eines OpenVPN Clients. Der Client läuft auf einem Ubuntu 20.04 als VM in einer ESXI Umgebung. Ohne VPN hat die VM Internetzugriff und kann auch auf die anderen Hosts im Netzwerk zugreifen.
Die VM befindet sich in VLAN12 und sobald ich den Client starte ist die VM nur noch sehr schwer erreichbar. Ich kann zum Beispiel keine weitere ssh Session zur VM aufbauen. Habe ich vorher bereits eine weitere Session offen und starte dort htop, friert htop in dem Moment ein, in dem der VPN Client die Routing Einträge anlegt:
Sat Oct 31 10:52:35 2020 /sbin/ip link set dev tun0 up mtu 1500
Sat Oct 31 10:52:35 2020 /sbin/ip addr add dev tun0 local 10.32.0.238 peer 10.32.0.237
Sat Oct 31 10:52:37 2020 /sbin/ip route add 89.187.165.53/32 via 192.168.12.1
Sat Oct 31 10:52:37 2020 /sbin/ip route add 0.0.0.0/1 via 10.32.0.237
Sat Oct 31 10:52:37 2020 /sbin/ip route add 128.0.0.0/1 via 10.32.0.237
Füge ich der openvpn config "route-nopull" hinzu, startet der VPN Client und das routing der VM funktioniert normal. Dann werden allerdings, logischerweise, keine Verbindungen durch den VPN getunnelt.
Es läuft also irgendwas mit den automatisch erzeugten Routen falsch ... .
Wenn ich mich im VLAN 1 befinde, funktioniert der VPN Aufbau und das Routing einwandfrei ... . An meinem Server habe ich einfach mal die NIC für die spezielle VM getauscht um das zu überprüfen.
Woran kann es liegen, dass das routing für einen Client in einem VLAN nicht funktioniert?
Setup:
VM-IP: 192.168.12.2
VLAN12: 192.168.12.0/24
config:
dev tun
fast-io
persist-key
persist-tun
nobind
remote <URL>
remote-random
comp-lzo no
pull
tls-client
verify-x509-name Server name-prefix
ns-cert-type server
key-direction 1
route-method exe
route-delay 2
tun-mtu 1500
fragment 1300
mssfix 1200
verb 3
cipher AES-256-CBC
keysize 256
auth SHA512
sndbuf 524288
rcvbuf 524288
auth-user-pass password.txt
<cert>
</cert>
<key>
</key>
<tls-auth>
</tls-auth>
<ca>
</ca>
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 620151
Url: https://administrator.de/forum/openvpn-routing-probleme-im-vlan-620151.html
Ausgedruckt am: 13.04.2025 um 22:04 Uhr
9 Kommentare
Neuester Kommentar
Hilfreich wäre hier die Konfiguration des OpenVPN Servers gewesen ! Dieser beeinflusst das Routing des Clients maßgeblich.
Da diese Info leider fehlt kann man nur vermuten und raten das im OVPN Server ein Client Redirect konfiguriert ist (push "redirect-gateway def1 bypass-dhcp")
Bei einem Redirect wird im Gegensatz zum VPN Split Tunneling der gesamte Traffic des Clients in den VPN Tunnel geroutet, was dann vermutlich diese Probleme verursacht, da ein lokales Routing über VLANs so nicht mehr möglich ist. Aber eben wegen dieser fehlenden Info nur geraten...
Nebenbei: Eine Menge deiner Konfig Parameter sind überflüssig und eher kontraproduktiv (z.B. die fehlerhafte Tunnel MTU die ja wegen des VPN Overheads nie 1500 sein kann). Hier gilt oft weniger ist mehr !
Alle wichtigen Tips und ToDos zu diesem Thema findest du, wie immer, im hiesigen OpenVPN "Merkzettel" !
Merkzettel: VPN Installation mit OpenVPN
Da diese Info leider fehlt kann man nur vermuten und raten das im OVPN Server ein Client Redirect konfiguriert ist (push "redirect-gateway def1 bypass-dhcp")
Bei einem Redirect wird im Gegensatz zum VPN Split Tunneling der gesamte Traffic des Clients in den VPN Tunnel geroutet, was dann vermutlich diese Probleme verursacht, da ein lokales Routing über VLANs so nicht mehr möglich ist. Aber eben wegen dieser fehlenden Info nur geraten...
Nebenbei: Eine Menge deiner Konfig Parameter sind überflüssig und eher kontraproduktiv (z.B. die fehlerhafte Tunnel MTU die ja wegen des VPN Overheads nie 1500 sein kann). Hier gilt oft weniger ist mehr !
Alle wichtigen Tips und ToDos zu diesem Thema findest du, wie immer, im hiesigen OpenVPN "Merkzettel" !
Merkzettel: VPN Installation mit OpenVPN
Moin,
jetzt überleg doch bitte einfach mal logisch:
Du hast einen VPN-Client eingerichtet, welcher vom Server anscheinend die redirect-gateway-Anweisung bekommt (sieht im Routing so aus). Das bedeutet, dass das Standard-Gateway auf die VPN-Verbindung gelegt wird.
Ergo wird JEDER Traffic ins VPN geschickt. Damit kannst du logischerweise nicht mehr lokal auf die VM zugreifen, da alle Antworten des Servers ins VPN wandern und mangels Gegenstelle dort verworfen werden.
Das hat mit VLANs erstmal nix zu tun.
Wenn du also deinen Server noch lokal erreichen willst, kannst du entweder dein VPN auf Split-Tunneling umstellen, so wie @aqui es beschrieben hat oder nach dem Verbindungsaufbau noch zusätzlich die Routen für deine lokalen Netze setzen.
VG
jetzt überleg doch bitte einfach mal logisch:
Du hast einen VPN-Client eingerichtet, welcher vom Server anscheinend die redirect-gateway-Anweisung bekommt (sieht im Routing so aus). Das bedeutet, dass das Standard-Gateway auf die VPN-Verbindung gelegt wird.
Ergo wird JEDER Traffic ins VPN geschickt. Damit kannst du logischerweise nicht mehr lokal auf die VM zugreifen, da alle Antworten des Servers ins VPN wandern und mangels Gegenstelle dort verworfen werden.
Das hat mit VLANs erstmal nix zu tun.
Wenn du also deinen Server noch lokal erreichen willst, kannst du entweder dein VPN auf Split-Tunneling umstellen, so wie @aqui es beschrieben hat oder nach dem Verbindungsaufbau noch zusätzlich die Routen für deine lokalen Netze setzen.
VG
Zitat von @renpen:
Danke für die Klarstellung!! @aqui hatte es ja bereits erwähnt, aber ich war einfach zu versteift auf die Tatsache, dass es im VLAN 1 ja funktioniert ...
Gern geschehen... Warum es in deinem VLAN1 klappt, kann ich mir zwar auch nicht erklären aber gut...Danke für die Klarstellung!! @aqui hatte es ja bereits erwähnt, aber ich war einfach zu versteift auf die Tatsache, dass es im VLAN 1 ja funktioniert ...
Nach hinzufügen von "route 192.168.0.0 255.255.0.0 net_gateway" zu meiner VPN config funktioniert es wie gewollt! Danke das ihr nicht direkt die Lösung verraten habt ;)