2017-10-07 39 views
2

在Android设备上,我想在本地网络上使用仅知道mac地址(无ip)的设备创建tcp通信。有一种方法可以仅通过mac地址启动通信,或者直接查找相关ip而不扫描所有网络查找设备? 非常感谢在Android上使用mac地址创建tcp连接

回答

1

要将您的服务器的IP地址发送到客户端,您可以从服务器发送广播UDP数据包。流程如下所示:

  1. Server打开TCP端口并等待TCP clients
  2. Server发送与特定的数据广播的UDP数据包(一些东西,说这个包是从server
  3. 如果它接收到的数据包在同一个网络中clientclient读取数据,检查数据包来自您的server。这个数据包也有你的server的IP地址。
  4. 就是这样:现在client知道ip地址和端口,它通过TCP连接到你的server
  5. Server接受新的client。连接完成。

下面是如何UDP数据包可以被发送和接收的样本:https://stackoverflow.com/a/25520279/798165

+1

的最佳解决方案!我实现了,它完美地工作。它也帮助我添加更多有用的工具(自动发现新设备)。谢谢 –

相关问题