Putty friert zufällig ein, wenn Sie sich bei einem Remote-Computer auf einem anderen Kontinent anmelden

9

Ich muss für meine Arbeit jeden Tag von Asien zu einer entfernten Maschine in Europa ssh. Aber Putty friert manchmal zu völlig zufälligen Zeiten ein und ich habe keine andere Wahl, als eine neue SSH-Sitzung zu schließen und wieder zu öffnen. Es ist frustrierend, besonders wenn ich etwas bearbeite oder ein lang laufendes Programm ausführe.

Ich weiß, dass die Frage wirklich nicht viele Details enthält (weil mit dem Netzwerk überhaupt nichts falsch zu sein scheint). Hat jemand diese Art von Problem mit Putty erlebt und es gelöst?

Vielen Dank für Ihre Zeit!

Srikanth
quelle

Antworten:

3

Das Einfrieren kann ein Timeout-Problem sein. Leider scheint es keine einfache Möglichkeit zu geben, dies zu beheben. Dies ist alles, was ich darauf gefunden habe: Putty FAQ

Wenn das hilft, ist das gut und schön. Wenn Sie jedoch Probleme mit Verbindungsabbrüchen minimieren möchten, sollten Sie den Bildschirm wirklich verwenden. Die unten beschriebene Persistenzfunktion sollte besonders interessant sein.

Aus Wikipedia:

Funktionen Der
GNU-Bildschirm kann als Textversion von grafischen Fenstermanagern oder als Möglichkeit zum Einfügen virtueller Terminals in jede Anmeldesitzung betrachtet werden. Es ist ein Wrapper, mit dem mehrere Textprogramme gleichzeitig ausgeführt werden können, und bietet Funktionen, mit denen der Benutzer die Programme innerhalb einer einzigen Oberfläche produktiv verwenden kann.

Persistenz
Ähnlich wie bei VNC kann der Benutzer mit GNU Screen Anwendungen von einem Computer aus starten und dann von einem anderen Computer aus erneut eine Verbindung herstellen und dieselbe Anwendung weiterhin verwenden, ohne sie neu starten zu müssen. Dies erleichtert die Migration zwischen Standorten wie Arbeit und Zuhause. Der Bildschirm bietet terminalunabhängige Funktionen, sodass Benutzer die Verbindung mit verschiedenen Terminaltypen trennen und wieder herstellen können, sodass Anwendungen weiter ausgeführt werden können, ohne die Änderung der Terminals zu bemerken.

Mehrere Fenster
Es können mehrere Terminalsitzungen erstellt werden, von denen jede normalerweise eine einzelne Anwendung ausführt. Die Fenster sind nummeriert und der Benutzer kann über die Tastatur zwischen ihnen wechseln. Einige GUI-Terminalemulatoren bieten Registerkarten oder ähnliche Funktionen. Jedes Fenster verfügt über einen eigenen Bildlaufpuffer, sodass die Ausgabe auch dann erfasst wird, wenn das Fenster nicht aktiv angezeigt wird, und der Verlauf auch bei der Migration auf einen anderen Computer gespeichert werden kann. Windows kann geteilt geteilt werden. Während in einigen Textanwendungen diese Funktionalität integriert ist, kann mit Screen jede Anwendung neben einer beliebigen Anzahl anderer Anwendungen aufgeteilt werden.

Auf dem
Bildschirm für die Sitzungsfreigabe können mehrere Computer gleichzeitig eine Verbindung zu derselben Sitzung herstellen und so die Zusammenarbeit zwischen mehreren Benutzern ermöglichen. Derselbe Computer kann auch zum gleichzeitigen Herstellen mehrerer Verbindungen verwendet werden, wodurch alternative Funktionen zur Bildschirmaufteilung bereitgestellt werden, insbesondere für Computer mit mehreren Monitoren.

Nifle
quelle
3

Sie können Putty von Zeit zu Zeit Pakete vom Typ Keep-Alive senden lassen, indem Sie dem Tutorial unter http://breakablelinux.blogspot.com/2007/12/preventing-putty-timeouts.html folgen

Wenn das erste Poster korrekt ist, können Sie das Zeitlimit mit der folgenden Registrierungsbearbeitung erhöhen, was weniger Verbindungsabbrüche bedeuten sollte.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"TcpMaxDataRetransmissions"=dword:00000010

Wenn Sie glauben, dass das Problem Kitt ist, versuchen Sie es mit einem anderen SSH-Client wie Poderosa

Nick
quelle
Sie können die MTU auf dem Router ändern, wenn Sie NAT verwenden, oder die MTU auf dem Server ändern.
Vasin Yuriy
3

Die einfachste Lösung, die ich gefunden habe, besteht darin, Strg-Q zu drücken, um die Flusskontrolle fortzusetzen.

Normalerweise drückst du Strg-S zum Speichern, was ich bei Kitt sehr ärgerlich finde. Ich dachte, es friert zuerst ein, aber es schaltet tatsächlich die Flusskontrolle aus, Strg-Q schaltet es wieder ein.

Christopher Thomas
quelle
Vielen Dank. Dies löste mein Problem. Es hat mich verrückt gemacht!
Sam
0

Die einzige Problemumgehung, die ich gefunden habe und die wirklich funktioniert, ist die Verwendung einer Linux-VM auf meinem Windows-Computer. Ich starte das (es ist Linux Mint) und starte ein Terminal, und voila, meine SSH-Verbindung funktioniert perfekt, keine Probleme mehr beim Einfrieren! Ich habe auch festgestellt, dass dies der einzige Weg ist, sshfs zuverlässig zu machen.

user3413723
quelle
0

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:

sudo /sbin/ifconfig eth0 mtu 1036
sudo /etc/init.d/networking restart
Vasin Yuriy
quelle