V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
e5b9dad02b882816
V2EX  ›  问与答

关于通过 gost 结合打洞的最佳实践

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

    A1 、B1 主机均处于端口限制锥形 NAT 网络下,A2 、B2 为固定外网地址,NAT 映射端口有规律,会把本地的源端口直接映射为外部访问端口。但 A1 只能访问 tcp/udp 53 端口的出站地址。经过实验,A1 、B1 间通过 netcat 打洞成功,过程为:

    1 、A1:53 访问 B2:10086 ,发送 hello 敲门请求,此条信息被 B2 拦截,但在 A2 上打开了通向 A1 的 53 端口

    2 、A1 监听 53 端口

    3 、B1:10086 访问 A2:53 ,打洞成功

    打洞成功后在 A1:53 端口通过 gost 开启 socks 代理,需要发起 B1:10086 通往 A2:53 的访问。该部分在 netcat 上通过指定-p 参数实验成功,但不知道在 gost 中如何发起指定源端口的转发请求。 另外,想在 A1 上写个脚本,定期(如每 2 分钟)向 B2 发起敲门请求,然后转用 gost 监听 53 端口,等待 B1 的访问,关于这种情形下的打洞有没有更优雅的实现方法。

    1 条回复    2023-09-13 07:14:50 +08:00
    flynaj
        1
    flynaj  
       239 天前 via Android
    需要 nat1 才能成功打洞,其它的不用考虑,用这个 natmap .
    https://github.com/heiher/natmap/wiki/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3575 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 11:01 · PVG 19:01 · LAX 04:01 · JFK 07:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.