java - 有没有办法根据电话号码从电话中获取 WAN IP 地址?

标签 java android p2p file-transfer

我想将两部手机连接在一起以实现某种 P2P 风格的连接,当然要这样做,我需要手机能够相互传达其 IP 地址。我一直在想很多关于如何做到这一点的想法,我意识到的一件事是电话号码是电话的唯一标识符,因此我想知道它是否可以用来获取 IP 地址。

我想我可以通过 SMS 传输某些消息,这些消息会被加密,看起来很糟糕,然后被删除,但这会有点骇人听闻,而且是一种非常困惑的做事方式。我仍然主要计划我项目的这个领域,并且愿意接受建议。

如有任何帮助,我们将不胜感激,提前致谢! :0)

最佳答案

您可以使用动态 DNS 服务,将电话号码用作主机名。换句话说,您只需执行 DNS 查找,例如4255551212.dyndns.com,您将获得给定电话号码的最后一个已知 IP 地址。

动态 DNS 服务的发明是为了让拨号上网的人(或经常更改 IP 地址的人)在其计算机上运行主机名不变的服务器。它的工作方式是,计算机上有一个客户端定期向服务器报告其 IP 地址,服务器将其放入 DNS 服务器上指定主机名下的区域文件中。 DNS 记录的生存时间很短(例如一分钟),因此不会缓存过时的地址信息。

Android 有一个动态DNS 客户端,在市场上寻找DynDNS 并尝试一下。

您可以运行自己的动态 DNS 服务器或使用现有的(有很多,有些是免费的)。如果你这样做,我建议你自己经营;那么您可以包括某种身份验证以防止我在评论中提到的隐私问题。

关于java - 有没有办法根据电话号码从电话中获取 WAN IP 地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6311257/

相关文章:

java - 将curl请求转换为HttpURLConnection

android - logcat 过滤器应用在哪里?

android - 在状态栏中仅显示小图标而不显示通知

android - 谷歌登录中的 requestIdToken 和请求 ServerAuthCode 有什么区别

javascript - 浏览器可以直接与同一网络上的另一个浏览器通信吗?

javascript - 对来自网络摄像头的 h264 流进行编码

javascript - 从 React Native(android) 中的 .jar 文件访问方法

java - Mockito 验证交互与验证结果

ios - GameKit 点对点连接问题。向另一台设备发送邀请需要很长时间

java - 我可以在 Android 上隐藏短信吗?