Kein Zugriff auf LAN hinter OpenVPN-Server

stna1981

Commander
Registriert
März 2007
Beiträge
2.487
Hi zusammen,

ich habe unter Win10 einen VPN-Server eingerechter, auf den ich mich von unterwegs per Handy, Tablet etc. connecten möchte, um dann Zugriff auf Resourcen im LAN zu haben, z. B. Wechselrichter, Raspberry, KNX-Visualisierung etc. Der Zugriff mit dem OpenVPN Client klappt auch, der Tunnel steht.

Was habe ich bisher gemacht:
- OpenVPN-Server eingerichtet mit TUN (TAP geht nicht mit Android)
- Windows-Firewall für LAN-Adapter und virtuellen OpenVPN-Adapter deaktiviert
- DynDNS Adresse angelegt und in der FB eingetragen für externe Verbindung
- Port für OpenVPN in der Fritz!Box freigegeben, damit man sich von außen connecten kann
- IP-Forwarding auf dem OpenVPN Host eingerichtet (kontrolliert mit ipconfig)
- Lokale Geräte haben IP-Range 192.168.178.x, VPN hat 10.8.0.x
- Per <push "route-gateway 10.8.0.1"> setze ich den Gateway auf die IP meines OpenVPN-Severs

Per <push "route 192.168.178.0 255.255.255.0"> sollten die VPN-Clients doch dann Zugriff auf Rechner in meinem LAN bekommen. Zusätzlich habe ich in der FB eine statische Route für die andere Richtung definiert:

10.8.0.0 255.255.255.0 über 192.168.178.2 (das ist die interne LAN-IP des Rechner, auf dem der OpenVPN-Server läuft)

Trotzdem habe ich keinen Zugriff auf die Geräte im LAN, die hinter dem OpenVPN-Server hängen. Was mache ich falsch?

Viele Grüße

Stefan
 
wieso nimmst du nicht das VPN von der Fritzbox?
 
Mit OpenVPN bin ich etwas flexibler - vorausgesetzt, es würde funktionieren :D
 
Kannst auch mit OpenVPN zum FB-VPN connecten. Musst nur eventuell ein bisschen an der cfg-Datei rumfummeln.
 
Moin, du musst nur ein "push" im Server konfigurieren. Wenn dein lokales Netz das 192.168.175.0/24 ist, brauchst du in der "server.conf" von deinem Windows PC nur folgendes...
- push "route 192.168.175.0 255.255.255.0"

dann anschließend (wie erwähnt) auf deinem Windows 10 das Routing aktivieren. Damit solltest du dann schon mal die IP von deinem Win 10 PC pingen können. Damit du dann die anderen noch erreichst, wie erwähnt, die statische Route in der FritzBox hinterlegen und freuen. Mehr habe ich eigentlich auch nicht gemacht, nur das ich einen ganz anderen Adressraum bei mir verwende :)

- 10.12.0.0/24 (LAN)
- 10.12.0.1 (Server mit OpenVPN)
- 10.12.0.254 (FritzBox)

In meinem OpenVPN Server gibt es für push nur diesen Eintrag,
- push "route 10.12.0.0 255.255.255.0"

in der FritzBox ist dann eine statische Route hinterlegt die dafür soft, dass Anfragen von 10.8.0.0/24 über den Server 10.12.0.1 laufen sollen und gut. Was diese FritzBox VPN Geschichte angeht, die finde ich persönlich ziemlich doof... hatte mich damit einmal befasst und in den Einstellungen sah das so aus, als wenn mein VPN Cleint eine IP aus dem lokalen Netz bekommen muss. Das wollte ich aber nicht :)

Gruß, Domi
 
Hallo Domi,

genau so mache ich es eigentlich...in der server config hab ich ein

Code:
push "route 192.168.178.0 255.255.255.0"

und in der FB dann eine statische Route für 10.8.0.0 255.255.255.0 per IP des Rechners mit VPN-Server.
Aber ich krieg einfach keinen Zugriff auf die Rechner im LAN...

Sehe nicht, woran es liegen könnte :(
 
Hast du schon mal versucht via 'ping' den Windows 10 PC zu erreichen? Einmal mit der VPN IP (vermutlich 10.8.0.1) und einmal mit der LAN IP 192.168.178.x :)

Durch den 'ping' auf die VPN IP könntest du theoretisch schon mal in Erfahrung bringen, ob der Tunnel korrekt steht und mit dem 'ping' auf die LAN IP des Win 10 PCs kannst du schon mal in Erfahrung bringen, ob das Routing funktioniert... steht denn etwas im Server.log vom OpenVPN drin?

Gruß, Domi
 
Also ping geht nicht, auf keine der beiden Adressen, weder VPN-Server noch IP des Rechners, auf dem VPN läuft. Sehr seltsam. Im Client log steht u. a.:

Fri Oct 28 15:32:43 2016 PUSH: Received control message: 'PUSH_REPLY,route-gateway 10.8.0.0,route 192.168.178.0 255.255.255.0,route-gateway 10.8.0.1,topology subnet,ping 10,ping-restart 120,ifconfig 10.8.0.2 255.255.255.0'

Die Routen kommen also an. Ist da was falsch dran? Was könnte sonst noch die Ursache sein, dass nix durch den Tunnel geht? Server.log kann ich erst heute abend schauen, wenn ich zuhause bin...
 
Du kannst nicht mal die VPN-IP des Servers anpingen? Dann ist da aber grundsätzlich etwas nicht in Ordnung, weil du ja die Firewall ausgeschaltet hast. Ein Ping durch das VPN sollte funktionieren.

Einen wirklichen Fehler kann ich auf den ersten Blick nicht sehen. Ich würde an dieser Stelle nun mit WireShark gucken wie der Ping durchs VPN bzw. durch den Server geht.

Poste der Vollständigkeit halber bitte mal deine server.conf und client.conf (als Spoiler)
 
PUSH_REPLY,route-gateway 10.8.0.0,route 192.168.178.0 255.255.255.0,route-gateway 10.8.0.1,topology subnet,ping 10,ping-restart 120,ifconfig 10.8.0.2 255.255.255.0
Das sieht komisch aus.
Nimm mal die "push route-gateway"-Einstellung raus. Ich hab die noch gebraucht, weil hier i. d. R. der VPN-Server genommen wird und das nicht extra angegeben werden muss.
 
Hier schonmal die Client Config:

Code:
remote irgendwas.no-ip.biz 1194
client
dev tun
proto udp
tls-client
ns-cert-type server
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 3 
pull


ca "ca.crt"
cert "tablet.crt"
key "tablet.key"


tun-mtu 1500
tun-mtu-extra 32
Ergänzung ()

Ich ich hab den Fehler gefunden!

Ich hatte in der Server config die Verschlüsselung per cipher AES-128-CBC auf AES gesetzt, in der Client config wurde aber der default verwendet. Aber komisch, dass er den Tunnel aufbaut, obwohl da Server und Client nicht zusammenpassen, sonst wär mir das schon früher aufgefallen.

Danke an alle für die Hilfe!
 
Da kann man mal sehen wie hilfreich die Bitte nach der Config sein kann..

Manchmal muss man einfach nur dazu gezwungen werden, genau hinzugucken :D
 
:)

Hab noch zwei Verständnisfragen:

1. Im Log steht:
- Notified TAP-Windows driver to set a DHCP IP/netmask of 10.8.0.1/255.255.255.252 on interface {922B8D7D-DCCB-4FDF-8B7B-B3949E71E8A0} [DHCP-serv: 10.8.0.2, lease-time: 31536000]
- route.exe ADD 10.8.0.0 MASK 255.255.255.0 10.8.0.2

Wieso genau wird diese Route gesetzt? Mein TAP-Device hat doch die IP 10.8.0.1 bekommen, sollte die Route dann nicht über 10.8.0.1 statt 10.8.0.2 laufen?

2.
Ich bräuchte nur noch eine elegante Lösung wie ich den TAP-Adapter unter Windows 10 als Heimnetz eingestellt bekomme, damit auch Pings durchgehen. Einen manuellen Gateway eintragen löst das Problem irgendwie nicht so recht, der Adapter ist dann teilweise immer noch nicht identifiziert:
Unbenannt.png
Zu funktionieren scheints aber trotzdem irgendwie. Aber warum kann ich da nur 10.8.0.2 eintragen? Wenn ich 10.8.0.1 setze, löscht er mir das immer wieder raus... Die 10.8.0.2 gibts doch überhaupt nicht, anpingen kann man die auch nicht. Ich setze also nen Gateway, dens gar nicht gibt?!
 
Zuletzt bearbeitet:
Hast du in der server.conf "topology subnet" eingestellt? Wenn micht, bekommt jeder Client sein eigenes /30 Subnetz.

zB.

Subnetzadresse 10.8.0.4
Client-IP 10.8.0.5
Gateway 10.8.0.6
Broadcast 10.8.0.7

Es deutet darauf hin, dass bei dir der Eintrag fehlt, was auch die Subnetzmaske 255.255.255.252 (=/30) erklärt


topology subnet
 
Ja stimmt, das war in der aktuellen Config nicht drin. Hatte ich zwischendurch mal rausgeschmissen. Die seltsame Route ist damit weg, aber 10.8.0.1 kann ich immer noch nicht als Gateway für das TAP-Device eintragen, z. B. sondern nur 10.8.0.2 - Woran liegt das?
 
Zurück
Oben