如果我几分钟(约 20 到 30 分钟)没有在终端上工作,ssh 会话就会冻结。有什么命令可以解决这个问题吗?事实上,就我而言,我在两台服务器上工作。首先,我需要先转到访问服务器,然后再转到工作服务器。一段时间后,这个工作服务器就会冻结。
谢谢
答案1
每 15 秒发送一次活动数据包以保持连接:
ssh user@server -o ServerAliveInterval=15
答案2
就我而言,问题出在 MTU 过大。如果您使用 NAT,您可以在路由器上更改 MTU,但我在服务器上更改 MTU:
sudo /sbin/ifconfig eth0 mtu 1036
sudo /etc/init.d/networking restart
在 Windows 上,您还可以增加此项:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"TcpMaxDataRetransmissions"=dword:00000010