2017-10-07 38 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

的最佳解決方案!我實現了,它完美地工作。它也幫助我添加更多有用的工具(自動發現新設備)。謝謝 –

相關問題