V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
billytv
V2EX  ›  Linux

ssh 重连时出现映射的端口被堵塞, 如何解决?

  •  
  •   billytv · 2016-05-17 15:27:52 +08:00 · 3875 次点击
    这是一个创建于 3110 天前的主题,其中的信息可能已经有所发展或是发生改变。
    使用 ssh 自带的端口映射工具用于内网穿透, 当连接被打断, 重连时相同的端口依然被上一个进程所占据.

    11:27:01.556 Authentication completed.
    11:27:01.774 Failed to add server-to-client port forwarding rule on 0.0.0.0:30050: Operation was rejected.
    11:27:02.008 Failed to add server-to-client port forwarding rule on 0.0.0.0:30051: Operation was rejected.
    11:27:02.242 Failed to add server-to-client port forwarding rule on 0.0.0.0:30052: Operation was rejected.

    用终端查看上一个已断开的 sshd 进程依然占用端口

    root@vps:~/videos# lsof -i:30052
    COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    sshd 2461 root 11u IPv4 1075515793 0t0 TCP *:30052 (LISTEN)
    sshd 2461 root 12u IPv6 1075515794 0t0 TCP *:30052 (LISTEN)
    sshd 2461 root 13u IPv4 1079298219 0t0 TCP vps:10052-> xxxxxx:44943 (CLOSE_WAIT)

    只有手动把 sshd 这条进程 kill 后, 才能重新进行端口映射, 请问该如何解决? 谢谢
    3 条回复    2016-05-17 18:01:16 +08:00
    MangozZ
        1
    MangozZ  
       2016-05-17 17:06:59 +08:00
    重连的时候 kill 呗。。
    我翻了下文档。没找到相关配置和参数。。

    PS :估计你可以修改修改源码。 setsocket 加个参数 SO_REUSEADDR
    hxndg
        2
    hxndg  
       2016-05-17 17:30:05 +08:00
    估计是端口是加了一个 time_wait ,原先写 socket 的源码的时候也遇到过。。。。 ssh 应该有配置文件,允许服用。
    DesignerSkyline
        3
    DesignerSkyline  
       2016-05-17 18:01:16 +08:00 via iPad
    这个问题我也遇到过。。。当时还觉得很奇怪,为啥连上一断开就连不上了 Orz
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4015 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 05:30 · PVG 13:30 · LAX 21:30 · JFK 00:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.