Entschuldigung, wenn dies nicht der richtige Ort ist, um diese Frage zu stellen.
Ich muss regelmäßig auf verschiedene Server ssh. Wenn ich von meinem Heimcomputer (Linux Mint) nach einiger Zeit der Inaktivität eine Verbindung über SSH herstelle, friert meine SSH-Shell ein und es gibt keine Möglichkeit, sie zurückzubekommen. Das einzige, was ich tun kann, ist '~. ", Das gibt mir zumindest meine einleitende Hülle zurück.
Wenn ich mich von anderen Standorten auf denselben Servern anmelde, gibt es kein Problem. Könnte das ein Problem mit meinem ISP sein? Wie kann ich dies weiter untersuchen?
Es ist wirklich ärgerlich, da ich nach dem Einfrieren die SSH-Verbindungen wiederherstellen, zurück zu meinem Standort navigieren und die Arbeit wieder aufnehmen muss. Vielen Dank
Antworten:
Ihr NAT löscht Ihren TCP-Socket nach einer gewissen Zeit der Inaktivität.
Ihr SSH-Client kann optional regelmäßig Noops an den Server senden, wodurch dieses Problem behoben wird. Fügen Sie dazu Folgendes hinzu
~/.ssh/config
:Alternativ können Sie Ihr NAT so konfigurieren, dass Elemente nicht so schnell wie jetzt aus der Statustabelle verfallen.
Darüber hinaus sollten Sie für Ihre Sitzungen einen Terminal-Multiplexer verwenden - beispielsweise GNU Screen oder tmux. Mit beiden können Sie Ihre Sitzung wiederherstellen, falls die Verbindung getrennt wird.
quelle
In meinem Fall war das Problem in der großen MTU-Größe. Sie können die MTU auf dem Router ändern, wenn Sie NAT verwenden, aber ich ändere die MTU auf dem Server:
Unter Windows können Sie diesen Schlüssel auch erhöhen:
quelle