如何使用位于不同NAT上的套接字在2个Python程序之间进行通信?

时间:2012-08-17 23:03:06

标签: python sockets nat

我想使用套接字在两个Python程序之间发送和接收消息。当计算机连接到同一个路由器时,我可以使用私有IP来执行此操作,但是如果有2个NAT将它们分开,我该怎么办?

谢谢(我的第一个问题)

3 个答案:

答案 0 :(得分:2)

如果没有可公开寻址的IP地址上的中继服务器,则通常无法执行此操作。在某些情况下,有一种所谓的“穿透”技术可以让你在使用公共服务器找出端口映射后切换到直接连接 - this article描述了RakNet游戏网络库是如何做到的 - 但是即使这些往往是挑剔和不可靠的。

答案 1 :(得分:0)

Zeromq,是要走的路。它非常快速且非常容易。 http://www.zeromq.org/

答案 2 :(得分:0)

Redis,可以工作,但不是完全相同的功能。