file - 如何区分同一ip地址(wifi)中的两个或多个设备?

标签 file mobile wifi p2p

我目前正在从事使用 p2p 技术在移动设备之间共享文件的网络项目。使用 wifi 或移动网络。主要问题是当使用 wifi 时,所有连接到该 wifi 连接的设备的一般 IP 地址变得相同,这就是如果所有连接的设备都具有相同的 IP 地址,如何将文件发送到特定设备的问题?

最佳答案

同一网络上的每个设备都有唯一的私有(private) IP 地址。他们都共享一个公共(public) IP 地址。现在服务器如何通过只看到他们的公共(public) IP 并向他们发送数据来区分他们?

嗯,答案是服务器不仅仅看到 IP 地址。它看到IP:端口。连接到服务器的每个私有(private) IP 都具有相同的公共(public) IP 但端口不同。公网IP属于你的NAT .您的 NAT 为每个私有(private) IP 地址分配唯一端口并映射它们。映射是这样的[私有(private)IP,私有(private)端口,公共(public)IP,公共(public)端口,传输协议(protocol)]。

因此,当您的服务器将数据包发送到公共(public) IP:port 时,数据包将转发到映射的私有(private) IP:port。并且您具有该私有(private) IP:Port 的设备会收到它。

关于file - 如何区分同一ip地址(wifi)中的两个或多个设备?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31895486/

相关文章:

html - MobileMedia 查询宽度问题

android - 如何在android模拟器中运行wifi点对点应用程序..?

iphone - 从Wifi到3G —停止播放并且无法在iPhone开发中恢复

ios - 是否可以在没有 Apple 的 "Wireless Accessory Configuration"功能的情况下配置 WiFi 设备?

python - 将列表从 iPython 单元移动到数据文件中

spring - 从类路径加载文件

删除一行的 C 代码

java - 从Java中的压缩PDF文件中读取字节

database - 在流行的 BaaS 中使用自己的数据存储的方法

Jquery Mobile - pagebeforehide - 无法触发事件