Ich habe eine große Anzahl identischer lüfterloser PCs mit Debian 6 (ARM). Die meisten davon sind über Comcast verbunden und funktionieren einwandfrei. Einige sind mit WiMax-Modems verbunden und haben Kommunikationsprobleme.
Insbesondere: Wenn ich zu einem dieser Befehle ssh und einen Befehl wie 'ps -ax' versuche, erhalte ich ungefähr 3 Zeilen zurück und dann wird die Sitzung gesperrt. Wenn ich es sitzen lasse, endet es schließlich mit einer "Sitzung, die von Gleichaltrigen geschlossen wird".
Was ich versucht habe:
ssh -vvv
→ keine Fehlermeldungenssh <user@host> 'command'
→ Dies gibt manchmal die vollständige Ausgabe des Befehls zurück. Manchmal wird es überhaupt keine Verbindung herstellen.
Vorschläge für andere Dinge zu versuchen?
Ich habe festgestellt, dass ich einige Befehle erfolgreich ausführen kann: z. B. ein Dutzend Mal oder öfter die Eingabetaste zu drücken, ist in Ordnung. cd ~
und lf
funktioniert dann wie df -h
. Ich kann df
viele Male erfolgreich laufen, aber sobald ich etwas mit mehr Ausgabe versuche (z. B. ls /etc
), blockiert es.
Macht es einen Unterschied, dass ich versuche, über OpenVPN zwischen diesen beiden Hosts zu kommunizieren?
quelle
ping -c 1 -s $((5000-28)) -M do machine-ip
dem 1500 zurückgegeben - wie Maschinetracepath -n <ip>
bestätigt dies: 1500 ist den ganzen Weg erlaubt.-T
hilft das in diesem Fall?Antworten:
Sie haben die Symptome eines MTU- Problems: Einige TCP-Verbindungen frieren ein, mehr oder weniger reproduzierbar für einen bestimmten Befehl oder eine bestimmte URL, jedoch ohne leicht erkennbares Gesamtmuster. Ein verräterisches Symptom ist, dass interaktive SSH-Sitzungen gut funktionieren, solange Sie keine Befehle mit großer Ausgabe ausführen. Siehe können den Zugriff nicht wählen https - Sites auf Linux über PPPoE für eine Erklärung.
OpenVPN bietet mehrere MTU-bezogene Optionen - suchen Sie im Handbuch nach „mtu“. Ich habe nicht genug Erfahrung, um sicher zu sein, welche Option Sie ändern müssen. (Es ist sogar möglich, dass Sie etwas in der Wimax-Modemkonfiguration ändern können.) Die wahrscheinlichste Option zum Ändern ist
mssfix
: Versuchen Sie, den Wert zu verringern, bis das Problem behoben ist. Der Standardwert ist 1450; Etwa 1400 könnte Ihr Problem beheben. Versuchen Sie esopenvpn --fragment 1200 -mssfix
; Wenn es hilft, erhöhen Sie den Wert, bis es zu brechen beginnt.quelle
mssfix 1200
auf dem Server und dem Neustart. So weit, ist es gut. Wenn dies funktioniert, werde ich es auf 1300 oder 1400 erhöhen und sehen, was passiert. Zu viele Clients, um alle Remote-Konfigurationen zu ändern, sodass die Serverseite dies tun muss.Gilles 'Antwort ist völlig richtig, aber es gibt auch eine andere mögliche Ursache dafür.
In Version 2.3.0 von OpenVPN gab es einen Fehler, durch den Clients beim Senden großer Datenmengen getrennt wurden: https://community.openvpn.net/openvpn/ticket/263
Dieses Problem trat nur bei Verwendung von TCP auf. UDP war völlig unberührt.
quelle
Wir hatten das gleiche Problem und es war in der Tat ein MTU-Problem. Für uns lag das Problem jedoch nicht in der openVPN-Konfiguration, sondern auf der tun0-Schnittstelle.
Wie wir es gelöst haben: Finden Sie zuerst die maximale Paketgröße, die durchlaufen wurde, mit
und Reduzieren des 1500-Werts, bis ein Wert durchlaufen wurde (für uns 1350).
Sobald der richtige Wert gefunden wurde, ändern Sie die tun0-Schnittstelle mit
wie von Sebastian hier vorgeschlagen . Danach lief das VPN reibungslos.
quelle