首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Coding
V2EX  ›  程序员

docker 容器内部为啥用 ssh 无法建立基于 ssh 的 sockets5 代理?

  •  
  •   gouchaoer2 · 298 天前 · 1253 次点击
    这是一个创建于 298 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我在这个 docker 容器内部需要给自己挂个 sockets5 代理,而代理服务器是一个有 ssh 访问权限的云主机,可是当用我 plink 或者 ssh 自带的命令建立 ssh 隧道代理的时候:

    ssh -qTfnN -D 1080 [email protected]代理服务器 ip 地址
    

    输入 ssh 密码后,netstat 发现本地的 1080 端口没有进程去绑定。然后我不用 docker 到 host 上试了一下,发现又可以 ssh 隧道代理工作正常

    在 docker 容器内部,我随便开了一个 http 应用去绑定 80 端口,发现是正常工作的,奇怪了…

    搜了半天不知道啥原因

    3 回复  |  直到 2019-02-16 15:27:44 +08:00
        1
    gouchaoer2   298 天前
    netstat 运行是在 docker 内部的,在内部 ssh 或者 plink 就没有去绑定端口
        2
    gouchaoer2   298 天前
    关了吧,我傻逼,造成这个的原因是,plink 是不可用的,但是 ssh 是可用的
    我用 netstat 的时候原来一直是加了-anp 选项,发现 plink 不可用,然后检测 ssh 的时候没有加-anp 选项
    这就导致一部分绑定的连接没有出来
        3
    ferock   298 天前 via iPhone
    结帖
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2431 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 28ms · UTC 00:41 · PVG 08:41 · LAX 16:41 · JFK 19:41
    ♥ Do have faith in what you're doing.