如何连接路由器后面的两个设备

时间:2014-02-25 12:32:57

标签: sockets networking

Device A -> Router -- Internet -- Router <- Device B

我知道VoIP通常直接连接两个设备。但我不知道他们是如何联系起来的。我假设互联网上有一台服务器。

对于其他人有类似我的问题: http://en.wikipedia.org/wiki/NAT_traversal

2 个答案:

答案 0 :(得分:0)

我假设你提到VOIP,你想知道两部IP电话是如何连接的?

电话配置了PBX的IP地址。电话1拨打电话。数字被发送到PBX。集团电话检查拨打的电话号码,并在拨号计划中查找电话号码。该拨号计划告诉PBX获取拨打的电话号码的路径。它可能会打开与电话公司的连接,或者它可能告诉PBX其他PBX的IP地址。

如果它获得另一个PBX的IP地址,它会向远程PBX发送一条SIP消息,通知它有一个来电。远程PBX接受SIP消息并设置呼叫并告知远程电话振铃。当电话应答时,两个IP PBX同意建立呼叫,并告诉每个电话另一部电话的IP地址,并允许他们直接通信。

答案 1 :(得分:0)

如果两个路由器正在做NAT,那么是的,可能中间有一台服务器。因此,每个设备只需通过路由器建立连接OUT,这没有问题。然后服务器可以在它们之间来回传递数据。

但即使两个路由器都在进行NAT,也可以直接建立连接。为了使其工作,至少有一个路由器需要设置端口转发配置,以允许来自另一个的入站TCP连接转发到某个特定端口上的正确设备。此端口转发可以在路由器上手动配置,也可以由设备自动设置(取决于路由器),使用UPnP协议(如果路由器支持)。

即便如此,通常中间还有一台服务器,两台设备之间可能会通信,以找出其他设备使用的IP和端口号。但是如果你有其他方法可以了解这些信息,那就没有必要了。

希望这有帮助。