docker 跑的 qb 内部监听端口没有映射别人是怎么连接的?

15 小时 30 分钟前
 FaiChou

这个 qb 运行在 docker 容器内,网络模式是 bridge ,映射的端口是 68818085,但后来在 webui 中将监听端口改为随机的 56181,开启了 UPnP/NAT-PMP 。

但经过我的测试,做种和上传是正常的。而且这个上传不是在下载的时候上传的,下载完成后,第二天也有上传。

所以我不明白,56181 端口没有映射出去,外面是怎么连接进来的?即使是 UPnP ,也只是开了个端口,没有 docker 的映射,也进不来。

有没有大佬指点下。

425 次点击
所在节点    程序员
4 条回复
loveqianool
15 小时 24 分钟前
容器开 ipv6 了吗?默认是不拦 ipv6 。
FaiChou
15 小时 5 分钟前
@loveqianool 不清楚,我是在极空间的 docker 里装的 qb ,默认没改过别的配置。我看 qb webui 用户栏都是 v4 的地址,没有 v6 。
xixka
2 小时 11 分钟前
udp NAT1 可以穿透出去
普及帖子 https://github.com/XTLS/Xray-core/discussions/237
FaiChou
11 分钟前
@xixka 这就是我不理解的地方,xray-core 实现 fullcone 是在 VPS 上将 udp 端口进行映射。也就是说,我本地端口映射到外部的机器上,这台机器是跑在外面的。

但是 docker 容器( bridge 模式下)内被 docker0 网络桥接,属于封闭的网络。里面开 UPnP/NAT-PMP 这种也起不到任何作用,因为外面连接容器内部,必须要经过 veth paire -> docker0 。

也就是说,要想实现 xray 这种穿透,需要有一台外面的机器跑一个映射服务,容器内的程序主动连接这个服务然后进行映射打通。

所以会不会是 qb 这种 p2p 程序搭配 tracker url 给做了这种打洞映射服务?但感觉也不太可能。有点疑惑。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1085464

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX