V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
wenerme
V2EX  ›  程序员

为什么阿里云 ECS 链接一段时间后会中断?

  •  
  •   wenerme ·
    wenerme · Mar 16, 2023 · 2267 views
    This topic created in 1142 days ago, the information mentioned may be changed or developed.

    最有体感的是 SSH ,一段时间无操作就会 hang ,链接中断。 但并不只有 SSH ,所有链接都是,比如 redis 、mysql ,除非自己主动保活,否则都会这样,是为什么呢?有地方可以配置么?

    14 replies    2023-03-16 22:50:53 +08:00
    opengps
        1
    opengps  
       Mar 16, 2023
    socket 默认都是这样,一定的时间不通信会断掉
    wsseo
        2
    wsseo  
       Mar 16, 2023
    设置心跳
    BeforeTooLate
        3
    BeforeTooLate  
       Mar 16, 2023   ❤️ 1
    .ssh/config 添加
    Host *
    ServerAliveInterval 20
    TCPKeepAlive no
    wenerme
        4
    wenerme  
    OP
       Mar 16, 2023
    @opengps 但是如果我在域网,那 ssh 就不会中断,电脑放几个小时过后过来还是 OK 的。
    opengps
        5
    opengps  
       Mar 16, 2023
    @wenerme 默认好像是 2 小时,放倒公网估计是半路上的网络设备给你当作不活动连接掐断的
    wenerme
        6
    wenerme  
    OP
       Mar 16, 2023
    @opengps 我理解 idle 会被掐断,但是不确定时间,也没找到相关文档说明,就很困惑
    abelyao
        7
    abelyao  
       Mar 16, 2023
    楼上瞎扯,腾讯云香港的 ssh 设置好了放一个晚上都没断

    阿里云的配置好了放一段时间也会断,不止 ssh 断,还有 io 过高导致 ssh 卡死的
    zzlyzq
        8
    zzlyzq  
       Mar 16, 2023
    可能是中间的路由设备导致。具体说来,对于经过 NAT 上网的用户来说,每次出网通过路由器的时候,会产生一条 NAT Session 条目。该条目是有时间限制的,一段时间没有流量刷新定时器,会导致掉线。
    解决办法:可以通过 shell 软件,例如 SecureCRT 、XShell 、FinalShell 等在登录中的发送 NOP 信息,例如每 30 秒一次,避免中断。
    abelyao
        9
    abelyao  
       Mar 16, 2023
    @wenerme 服务器上改 /etc/ssh/sshd_config

    ClientAliveInterval 300
    ClientAliveCountMax 10

    能有改善
    wenerme
        10
    wenerme  
    OP
       Mar 16, 2023
    找到了 GCP 的相关文档,但是没找到阿里云的相关文档 https://cloud.google.com/compute/docs/troubleshooting/general-tips?hl=zh-cn#idle-connections

    打算尝试下 tcp keepalive ,因为每个用到的都维护会有点麻烦。
    wenerme
        11
    wenerme  
    OP
       Mar 16, 2023
    eryajf
        12
    eryajf  
       Mar 16, 2023
    如果你用的 iterm ,可以尝试下这个配置: https://wiki.eryajf.net/pages/de6b13/
    rekulas
        13
    rekulas  
       Mar 16, 2023
    可能跟你网络有关(包括整个链路上的),我连阿里运气好的时候可以维持几天
    wwbfred
        14
    wwbfred  
       Mar 16, 2023
    TCP 都有中断的问题,这个没办法,使用 TCP 就应该把它当成沉默一段时间后会自然中断。
    SSH 的话不知道你用啥客户端,有些客户端可以设置定时发空 SSH 包或哑命令,这样可以挂几天都不断。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2752 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 14:04 · PVG 22:04 · LAX 07:04 · JFK 10:04
    ♥ Do have faith in what you're doing.