agowa338
Goto Top

OpenVPN Verbindungsprobleme

Hallo,

ich habe eine Client-to-Client Verbindung mit OpenVPN eingerichtet.
Anfangs funktionierte alles fehlerfrei, nur jetzt nach ca. 2 Tagen habe ich sehr hohe Paketverluste im Tunnel.
Neuaufbauen des Tunnels auf beiden Seiten bringt keine Besserung.
Das Komische ist, ist der Tunnel nicht ausgelastet, gehen alle Pings erfolgreich durch (teilweise mit hohen Latenzen 600ms). Ist jedoch eine RDP Verbindung zusätzlich aktiv, bricht die Verbindung sehr häufig ab (auch die Pings gehen nicht mehr durch). Der Tunnel bricht dabei nicht zusammen und wird laut logfile auch nicht neu aufgebaut (weil er ja immer noch steht).
Ein manueller neu aufbau behebt das Problem für ca. 10 - 20 Sekunden.

Die Konfiguration ist über UDP und TUN.
Der Server hat das Betriebssystem Windows 10 Pro genauso wie der Client.

Mein Client ist über WLAN mit dem Internet Verbunden (Hotel)
Mein Server ist über LAN <=> Router <=> DSL-Router mit dem Internet Verbunden und Port 1194 ist freigegeben.

Content-ID: 312158

Url: https://administrator.de/contentid/312158

Ausgedruckt am: 21.11.2024 um 17:11 Uhr

michi1983
michi1983 09.08.2016 um 18:05:00 Uhr
Goto Top
Hallo,

Client to Client? Sicher? face-wink

Was für Internetverbindungen hast du denn (Download/Upload)?
Gemessen und keine bis zu Werbewerte bitte.

Wenn der Tunnel an sich steht, fällt ein Konfigurationsfehler ja flach.

Gruß
aqui
aqui 09.08.2016 um 18:11:51 Uhr
Goto Top
Na ja wenn er einen Server dazwischen hat geht das schon. Ohne den natürlich technisch unmöglich. Vermutlich ist das so gemeint ?!
Wir raten mal.... Zu 98% eine falsche MTU im Tunnel ?!
orcape
orcape 09.08.2016 um 18:27:34 Uhr
Goto Top
Hi,
wie @aqui schon sagt, sicher MTU Problem. Wenn Du MTU 1500 fährst, ist das zu erwarten. Reduzier den MTU-Wert einmal auf 1340. Wenn es dann funktioniert kannst Du es in kleineren Schritten wieder erhöhen und testen bei welchem Wert der Packetverkehr instabil wird.
Gruß orcape
aqui
aqui 09.08.2016 um 18:34:14 Uhr
Goto Top
#OpenVPN Server conf
client
dev tun
proto udp
tun-mtu 1340
remote ovpn.agowa338.de 1194
comp-lzo
verb 3
agowa338
agowa338 09.08.2016 aktualisiert um 19:21:15 Uhr
Goto Top
Hat jetzt leider etwas länger gedauert die mtu zu ändern (die RDP Verbindung fliegt ja permanent weg...)
Hat aber nicht wirklich geholfen.
Das Problem ist leider nach wie vor da.

Die mtu ist es vermutlich nicht. Die Verbindung fliegt selbst bei: "ping 10.8.0.1 -t -l 50 -f" unregelmäßig weg...
aqui
aqui 09.08.2016 aktualisiert um 20:00:14 Uhr
Goto Top
50 Byte Length ist natürlich technischer Blödsinn. Sorry, aber als Netzwerker solltest du wissen das die minimale Ethernet Framesize 64 Byte ist !
Außerem solltest du nochmal definieren was genau du mit Client zu Client meinst ?!
Wir sehen das jetzt mal so mit einer Client OVPN Connection über einen Server in dessen Konfig eine Client zu Client Kommunikation erlaubt ist, richtig ?
Wenn du einen aktiven Tunnel hast was sagt denn ein ifconfig oder ipconfig wird dir dort die korrekte MTU angezeigt ?
Testweise kannst du mal tun-mtu 1380 durch das folgende Kommando ersetzen: link-mtu 1432 Das ist etwas sinnvoller, dann kümmert sich OVPN selber um die korrekte MTU.
Alternativ kannst du auch folgendes nehmen: mssfix 1420
Eins von beiden sollte greifen.
agowa338
agowa338 09.08.2016 aktualisiert um 21:04:22 Uhr
Goto Top
Zitat von @aqui:

50 Byte Length ist natürlich technischer Blödsinn. Sorry, aber als Netzwerker solltest du wissen das die minimale Ethernet Framesize 64 Byte ist !
Ja, ist Schwachsinn, sollte eigentlich 500 heißen...
Außerem solltest du nochmal definieren was genau du mit Client zu Client meinst ?!
Wir sehen das jetzt mal so mit einer Client OVPN Connection über einen Server in dessen Konfig eine Client zu Client Kommunikation erlaubt ist, richtig ?
Das sollte der Endzustand sein, aktuell gibt es aber die Probleme zwischen dem 1. Client und dem Server. Also noch keine Verbindung zu anderen Clients.
Wenn du einen aktiven Tunnel hast was sagt denn ein ifconfig oder ipconfig wird dir dort die korrekte MTU angezeigt ?
ipconfig zeigt keine mtu an, aber:
C:\Windows\system32>netsh interface ipv4 show interfaces

Idx     Met         MTU          State                Name
---  ----------  ----------  ------------  ---------------------------
  1          50  4294967295  connected     Loopback Pseudo-Interface 1
 10          20        1500  connected     Ethernet 2
 16          25        1500  connected     WLAN
Zeigt aber immer 1500 an...
Testweise kannst du mal tun-mtu 1380 durch das folgende Kommando ersetzen: link-mtu 1432 Das ist etwas sinnvoller, dann kümmert sich OVPN selber um die korrekte MTU.
Alternativ kannst du auch folgendes nehmen: mssfix 1420
Eins von beiden sollte greifen.
Leider keins von beiden.
aqui
aqui 10.08.2016 um 09:48:52 Uhr
Goto Top
ipconfig zeigt keine mtu an, aber:
Der Output ist sinnfrei, denn das sind die normalen Standardinterfaces face-sad
Du hast vermutlichen keinen Tunnel aufgebaut, denn sonst würdest du dort das tun Interface sehen mit der MTU. Sieht man auch mit ipconfig. Logischerweise nur wenn der Tunnel etabliert ist. Kein Tunnel kein Interface...logisch !
Zeigt aber immer 1500 an...
Klar, denn das tun Interface ist ja gar nicht dabei !!
Leider keins von beiden.
Dann hast du vermutlich ein Provider Problem. Manche Billigprovider filtern und/oder Rate limiten VPN Traffic bei einem billigen non Business Account !!
Ggf. hier mal einen anderen UDP Port ausprobieren.
agowa338
agowa338 10.08.2016 um 10:00:50 Uhr
Goto Top
Zitat von @aqui:
ipconfig zeigt keine mtu an, aber:
Der Output ist sinnfrei, denn das sind die normalen Standardinterfaces face-sad
Du hast vermutlichen keinen Tunnel aufgebaut, denn sonst würdest du dort das tun Interface sehen mit der MTU. Sieht man auch mit ipconfig. Logischerweise nur wenn der Tunnel etabliert ist. Kein Tunnel kein Interface...logisch !
Zeigt aber immer 1500 an...
Klar, denn das tun Interface ist ja gar nicht dabei !!
"Ethernet 2" ist das tun Interface, du bist Linux Admin oder? Unter Windows ist das Interface immer vorhanden, selbst wenn kein Tunnel aufgebaut ist und Windows denkt es wäre eine LAN Verbindung, anders als bei Linux.
Leider keins von beiden.
Dann hast du vermutlich ein Provider Problem. Manche Billigprovider filtern und/oder Rate limiten VPN Traffic bei einem billigen non Business Account !!
Ggf. hier mal einen anderen UDP Port ausprobieren.
Muss ich testen. Bei meinem Provider ist das nicht der Fall, aber eventuell hier im Hotel?
aqui
aqui 10.08.2016 aktualisiert um 12:47:10 Uhr
Goto Top
Unter Windows ist das Interface immer vorhanden, selbst wenn kein Tunnel aufgebaut ist
Igitt, ein Grund mehr gegen Winblows... face-wink
Bei meinem Provider ist das nicht der Fall
Sicher ?? Woher weisst du das ? Arbeitest du selber da ?
Geringe Chance besteht auch das deine Engeräte zu schwach sind was die Encryption angeht. Das wäre aber sehr sehr selten, denn auch ein uralter Linksys WRT54 Router schafft immer noch locker 3-5 Mbit und ein Tunnelabbruch oder Dropping von Frames im Tunnel passiert nie wenn sonst kein Linkabbruch passiert.
Ausnahme natürlich man macht so ein Unsinn wie Bridging über das VPN oder eine TCP Encapsulation aber das machst du ja nicht wenn man deine Schilderungen hier richtig interpretiert ?!
agowa338
agowa338 10.08.2016 aktualisiert um 17:02:53 Uhr
Goto Top
Ich denke wir drehen uns im kreis, hier einmal die vollständige Konfiguration:

Server:
port 1194
proto udp
dev tun
ca "C:\\Program Files\\OpenVPN\\config\\ca.crt"  
cert "C:\\Program Files\\OpenVPN\\config\\server.crt"  
key "C:\\Program Files\\OpenVPN\\config\\server.key"  
dh "C:\\Program Files\\OpenVPN\\config\\dh2048.pem"  
server 10.8.0.0 255.255.255.0
;ifconfig-pool-persist ipp.txt
;push "dhcp-option DNS 8.8.8.8"  
;push "dhcp-option DNS 8.8.4.4"  
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
mssfix 1420

Client:
client
dev tun
proto udp
remote vpn.contoso.com 1194
resolv-retry infinite
keepalive 10 120
nobind
persist-key
persist-tun
ca "C:\\Program Files\\OpenVPN\\config\\ca.crt"  
cert "C:\\Program Files\\OpenVPN\\config\\notebook.crt"  
key "C:\\Program Files\\OpenVPN\\config\\notebook.key"  
remote-cert-tls server
comp-lzo
verb 3
mssfix 1420

Sollte doch so funktionieren oder?

Anderen Port kann ich leider nicht testen, weil das Forwarding von hier aus wegen der permanenten abbrüche nicht konfiguriert bekomme.

Geringe Chance besteht auch das deine Engeräte zu schwach sind was die Encryption angeht
Denk ich nicht, auf beiden Seiten leistungsstarke Intel Prozessoren (i7 und i5) und mehrere GB Ram...
aqui
Lösung aqui 10.08.2016 aktualisiert um 17:09:19 Uhr
Goto Top
Sollte doch so funktionieren oder?
Jein ! face-wink
Ein gravierender Fehler am Server, denn dort fehlt das Push Kommando was das lokale LAN des Servers an die Clients pusht.
OK, das brauchst du nicht wenn du nur eine reine Client zu Client Kommunikation haben willst OHNE einen Zugriff auf ein lokales LAN.
mssfix brauchst du nur am Server !
Der Rest ist fehlerlos und richtig !
leistungsstarke Intel Prozessoren (i7 und i5)
OK...keine Frage das reicht für Gigabit in Wirespeed.
agowa338
agowa338 10.08.2016 um 17:40:01 Uhr
Goto Top
@script-kiddie: Youporn kannst du bis auf weiteres auch knicken, unter 02-FF-FF-FF-FF-FF gibt es kein Gateway, dein arp kann ich auch vergiften face-wink

@aqui: immer diese Kinder... Aber interessant, dass der Tunnel nicht zusammen gebrochen ist. Wireshark hätte ich schon früher verwenden sollen. Für nächstes mal richte ich mir einen Zweiten Tunnel mit TCP und Port 443 ein...
temuco
temuco 10.08.2016 um 17:43:19 Uhr
Goto Top
Ich habe auch seit wenigen Tagen ein ähnliches Problem. Ich vermute sehr stark, dass es mit dem anniversary Update von Windows 10 zu tun hat, denn davor lief alles stabil und performant. Du verwendest auch Windows 10?
aqui
aqui 10.08.2016 um 17:43:20 Uhr
Goto Top
Besser nicht... !!!
TCP Encapsulation ist tödlich für die Performance. OpenVPN selber rät dringenst davon ab !
agowa338
agowa338 10.08.2016 um 17:45:51 Uhr
Goto Top
Das mit TCP Encapsulation hab ich gelesen, aber ich möchte ja nur UDP Traffic (RDP) durch den Tunnel jagen, von dem her sollte das als Backup Tunnel gut genug sein, oder?

@temuco, das hab ich noch gar nicht installiert, aber danke für die Warnung
temuco
temuco 11.08.2016 um 09:09:23 Uhr
Goto Top
Zitat von @agowa338:
@temuco, das hab ich noch gar nicht installiert, aber danke für die Warnung

Ich habe das von mir kurz beschriebene Verhalten mit einem weiteren Notebook getestet, welches das "alte" Windows 10 hatte und keine Probleme mit OpenVPN verursachte. Windows 10 anniversary Update drauf und schon traten dieselben Probleme auf: RD bricht immer wieder ab, verbundene Netzwerke verlieren den Kontakt zum Server usw. Nach wenigen Minuten alles wieder OK, ohne dass OpenVPN irgend etwas protokolliert.
michi1983
michi1983 11.08.2016 um 09:37:16 Uhr
Goto Top
Zitat von @temuco:
Ich habe das von mir kurz beschriebene Verhalten mit einem weiteren Notebook getestet, welches das "alte" Windows 10 hatte und keine Probleme mit OpenVPN verursachte. Windows 10 anniversary Update drauf und schon traten dieselben Probleme auf: RD bricht immer wieder ab, verbundene Netzwerke verlieren den Kontakt zum Server usw. Nach wenigen Minuten alles wieder OK, ohne dass OpenVPN irgend etwas protokolliert.
Mir hat das letzte Win10 Update den Intel NIC Treiber zerschossen face-wink
Jetzt darf ich momentan mit dem Windows Treiber herumhantieren weil die irgendwas an der Signatur geändert haben wie es scheint.