首页
注册
登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请
登录
广告
V2EX
›
问与答
P2P 软件用什么命令知道 upnp 端口映射失败的?
zzlettle
·
2018-02-05 17:21:55 +08:00
· 2127 次点击
这是一个创建于 2590 天前的主题,其中的信息可能已经有所发展或是发生改变。
现在的路由器都默认打开了 upnp 功能,实现不同内网里面的 p2p 能够互联互通。我的路由器 upnp 是打开的,所以我用 p2p 软件下载的时候,都很快,当然我主要就是用迅雷,我还以为是这个原因。
直到最近用了另外一款 p2p 软件,打开后显示我是被动模式,相当于以前电驴的 lowid,也就是说我依然在内网里面,无法主动跟外面也同样在内网的人上传,只能跟那些在公网里面的服务器才能上传。
我觉得很奇怪,打开路由器设置,发现相应的端口已经在 upnp 里面打开了啊,还是不起作用。这个时候我才想起来,我家是光纤到楼,也就是一栋楼是一个路由器,一个公网地址,分到各家各户的已经是内网了,我家里面的路由器实际是 2 级路由了,在这个路由器上开 upnp,肯本没用。
问题来了:在本机上面,可以用什么命令知道我的端口实际没有打开的了?因为我在那款 p2p 软件里面点击打开端口按钮,一直显示失败,说明这个按钮,实现了起码两个功能
1:打开最近一级的路由器的 upnp 对应的端口,映射上去
2:查看是否实现内网上传到另外一个内网的客户端软件
应该有函数,命令,让软件知道端口没有映射成功,就算你在家里面的 upnp 打开了,但实际在公网里面还是没用。
是哪条命令,我主要用 python 开发
我最近也在学习开发网络 p2p,对洞穿 nat 什么的想多了解点知识。
知道的大哥大姐,提点下吧!!
UPnP
P2P
路由器
打开
4 条回复
•
2018-02-05 22:54:35 +08:00
1
ysc3839
2018-02-05 19:17:02 +08:00 via Android
用远程服务器连接一下你的 IP 就知道开没开了。
2
zzlettle
OP
2018-02-05 20:12:07 +08:00
但是这个就需要有个远程服务器参与其中了。但是很明显,这些 p2p 软件,自己就能单独判断出来当前它自己所处的网络环境。
3
alcarl
2018-02-05 20:36:15 +08:00 via Android
纯 p2p 是没有主动去检测是否有外网端口的,一般就是上来都是 lowid,有人连上你的时候就变成 highid 了
4
zzlettle
OP
2018-02-05 22:54:35 +08:00
@
alcarl
等于是先让系统去连接,系统分配随机端口。p2p 监听那个 upnp 端口,如果这个端口有数据连接进来了,就说明是 highid。
关于
·
帮助文档
·
博客
·
API
·
FAQ
·
实用小工具
·
5490 人在线
最高记录 6679
·
Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 26ms ·
UTC 06:39
·
PVG 14:39
·
LAX 23:39
·
JFK 02:39
Developed with
CodeLauncher
♥ Do have faith in what you're doing.