我正在开发使用jstun库的Java应用程序(hxxp://jstun.javawi.de/),我需要我的公网IP比较与一个由内核选择(通配符地址 - hxxp:// java.sun.com/j2se/1.5.0/docs/api/java/net/DatagramSocket.html#DatagramSocket())当我创建UDP套接字。

我不明白的是,如果我的我的NAT的网络上的本地IP是在为192.168.1.x,为什么我得到一个IP如10.x.x.x形式?

是否有特别的原因两者是完全不相关? 如果我的不是的NAT之后,将内核套接字绑定到我的公网地址?

非常感谢! 非对称

有帮助吗?

解决方案 2

我没有提到一个比较重要的事情:我开发了Android和运行我的Android模拟器的代码,这也解释了10.x.x.x地址的事情..

我应该深入挖掘的..感谢您的帮助!

对于那些有兴趣:hxxp://developer.android.com/guide/developing/tools/emulator.html#networkaddresses

其他提示

有关发送插座的源IP将被由主机路由表根据目的地IP确定;用于接收插座目标IP是你会得到什么。 “公共” IP您的同行看到的是从你的包,这是由NAT重新编写,是任何内部地址被转换为源地址。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top