我从Linux服务器telnet到Windows机器运行python脚本。由于Telnet已关闭,脚本将在运行约20分钟后始终保持运行约25分钟。它在Linux服务器上显示“由外部主机关闭的连接”。
在脚本运行期间有没有办法让会话保持打开状态?
Windows上的Telnet配置:
The following are the settings on localhost
Alt Key Mapped to 'CTRL+A' : YES
Idle session timeout : Not On
Max connections : 10
Telnet port : 23
Max failed login attempts : 3
End tasks on disconnect : YES
Mode of Operation : Console
Authentication Mechanism : NTLM, Password
Default Domain : NGAI_Veriwave
State : Running
答案 0 :(得分:0)
您需要在telnet会话上启用Keepalive。如果你是从Python那边做的,你通常会这样做:
x = sock.setsockopt( socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
我不确定当Python是主机时是否有效 - 你应该看看你的telnet程序(例如putty)是否也有这个选项。 Here是关于该主题的更多信息。
答案 1 :(得分:0)
Telnet服务很可能启用了IdleSessionTimeout
(timeoutactive=yes
)。
我怀疑它与TCP KeepAlives有什么关系。