我有一个关于python和socket的问题。据我所知,如果你有路由器,你必须打开一个端口才能在你的程序中使用它。但是如果用户不能做到这一点...我听说了一些关于UPnP的事。我不知道这对我的问题有帮助,所以我问你。诚挚的问候。
发布于 2014-12-01 19:24:28
在通常的设置中,如果您的计算机没有公共IP地址的家庭路由器,则只有该路由器有NAT供其他计算机访问Internet。
为了打开一个“监听”套接字,以便互联网机器可以到达你的私人机器,你必须将一个公共端口重定向到你的本地机器。例如,公共1.2.3.4端口2222将被重定向到专用192.168.1.42端口22,这样您就可以从任何地方ssh您的机器
此类重定向可以在路由器上手动配置,也可以通过诸如PCP、NAT-PMP和UPnP等协议进行配置
UPNP IGD是应用最广泛的一种。请参阅路由器UPNP功能的Miniupnp http://miniupnp.free.fr/。它有python绑定。
https://stackoverflow.com/questions/717687
复制相似问题