2012-04-24 110 views

回答

5

否,对于使端口映射现在你无法这样做,原因很简单,移动运营商不使用住宅级NAT--他们拥有的是“运营商级NAT”CGN,请参阅http://en.wikipedia.org/wiki/Carrier-grade_NAT,这些设备有非常不同的端口分配和管理机制。

看到运营商级NAT(CGN)在此集合相关文件:http://www.scribd.com/collections/3292450/P2P

PS 有目前是预期小脑颗粒神经元的UPnP般的协议,即“端口控制协议”(PCP) ,看到这里:http://tools.ietf.org/html/draft-ietf-pcp-base-29

2

Cling有Android特定的类来执行UPnP,从论坛消息和它们的文档看,它应该可以工作。我目前正在PC上测试它,但最终我选择它是因为他们支持Android。我会在一两天内发布我的测试结果。

检查保鲜核心,尤其是Support libraries。在最基本的层面上,你只需要4行代码来做端口映射。

[UPDATE]保鲜为Android文档指出只允许绑定到Wi-Fi接口从而对蜂窝数据连接不可能的(至少与保鲜版本1.0.5)

+0

真棒....我检查了这一点。 – Eliezer 2012-04-30 09:33:01

+0

你可能不想复习你接受我的答案是正确的。我现在正在阅读Cling Android文档,并且看到它说Cling只会绑定到WiFi接口。如此有效,这意味着3G没有端口映射)。 – Audrius 2012-04-30 14:57:55

+0

我阅读他们的文档,看到了。我假设他们知道他们在说什么,因此不能这样做......可能不是我希望找到的答案,但它是一个答案 – Eliezer 2012-04-30 15:21:44

0

而不是尝试使用uPnP(这是一个安全风险,因为它租用一个未映射的端口打开),您可能要使用STUN获得公共IP /端口,然后建立一个UDP连接您可以通过隧道传输psudo-TCP,或者使用TURN服务器。对于运营商级NAT,如果你不想支付中继,也有这种技术,可能有时工作:

https://drive.google.com/file/d/0B1IimJ20gG0SY2NvaE4wRVVMbG8/view?usp=sharing