在 Android 设备上,我想在本地网络上与我只知道 MAC 地址(不知道 IP)的设备创建 TCP 通信。有没有一种方法可以仅使用 mac 地址开始通信,或者直接查找关联的 ip,而无需扫描所有网络寻找设备? 非常感谢
最佳答案
要将服务器的 IP 地址传递给客户端,您可以从服务器发送广播 UDP 数据包。流程可能如下所示:
服务器
打开 TCP 端口并等待 TCP客户端
。服务器
发送带有特定数据的广播UDP数据包(表明该数据包来自您的服务器
)- 如果同一网络中有
客户端
,它就会收到数据包。客户端
读取数据,检查数据包是否来自您的服务器
。该数据包还包含您的服务器
的 IP 地址。 - 就是这样:现在
客户端
知道 IP 地址和端口,它通过 TCP 连接到您的服务器
。 服务器
接受新的客户端
。连接完成。
以下是如何发送和接收 UDP 数据包的示例:https://stackoverflow.com/a/25520279/798165
关于java - 在Android上使用mac地址创建tcp连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46625537/