![](/img/trans.png)
[英]How to find the IP address of a specific device from a multicast LAN address?
[英]How to find specific desktop's ip address on network?
我正在編寫一個由兩部分組成的應用程序。 桌面和Android。 有一個台式機和幾個android設備。 (不知道計數。)我想在台式機和TCP之間通信android設備。 但是,Android設備不知道桌面的lan ip地址。
我有兩種方法:
1-桌面應用程序在啟動時會更改本地IP地址。 因此,Android設備知道IP地址。 (我用該IP地址編碼)
2-Desktop應用程序始終嘗試將IP地址(192.168.0.1-192.168.0.255)連接到發送的台式機的IP地址。 當一個android設備連接到網絡時,接受連接,然后知道桌面的ip。
但是兩種方式都存在一些問題。
首先,您必須是更改局域網的管理員。 因此,使用java以admin身份運行命令是一個問題。 因為如果我這樣做,那么當用戶啟動程序時,uac總是會要求它。
第二,由於應用程序始終嘗試連接,因此我認為會有性能問題。 舉例來說,當android設備連接並dhcp給它192.168.0.5,但循環在192.168.0.150上時。 因此android設備必須等待連接。
有沒有比這些更好的方法?
看看這篇文章,使用多播在Java中進行網絡發現,我認為這將是最好的方法。
您可以使用主機名。 如果網絡配置正確,即使更改主機名也將指向正確的IP。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.