ServerAliveInterval 和连接重置

ServerAliveInterval 和连接重置

如果我运行:

sftp -oServerAliveInterval=10 server-2

连接已建立。但将值从 10 增加(减少)到 1 后:

sftp -oServerAliveInterval=1 server-2

我无法连接:

Connecting to server-2...
Connection closed by 10.0.1.10
Couldn't read packet: Connection reset by peer

有什么想法吗?

添加-vvv:

debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: id_rsa (0xxxxxxxxxxx)
Connection to 10.0.1.10 timed out while waiting to read
Couldn't read packet: Connection reset by peer

答案1

但将值从 10 增加(减少)到 1 后:

sftp -oServerAliveInterval=1 server-2

设置ServerAliveInterval1秒后,每次读取后都会启动计时器,如果没有其他数据,则会查询服务器以获取响应。如果定义数量的答案不会返回(ServerAliveCountMax在这种情况下也很重要),则连接将关闭。

这也与 相关TCPKeepAlive,它的作用基本相同,没有太多负担。仅当TCPKeepAlive无效并且您看到大量连接中断时才应使用上述选项。

在你的问题中提到为什么你这样做也会有帮助。

答案2

解决了。由 Windows 计算机上运行的应用程序服务器的内部错误引起的问题

相关内容