我编写了一款简单的服务器-客户端软件,它在本地网络/24(255.255.255.0)上运行,但我不知道在 IP 地址更改后如何查找 IP 地址。
服务器的 IP 地址不是静态的。
我不能保存 MAC 地址,然后从 ARP 表中检索 IP 地址,因为它将运行在不同的机器上。
客户端找到正确的 IP 地址的唯一方法就是尝试整个范围,直到连接被接受?
我编写了一款简单的服务器-客户端软件,它在本地网络/24(255.255.255.0)上运行,但我不知道在 IP 地址更改后如何查找 IP 地址。
服务器的 IP 地址不是静态的。
我不能保存 MAC 地址,然后从 ARP 表中检索 IP 地址,因为它将运行在不同的机器上。
客户端找到正确的 IP 地址的唯一方法就是尝试整个范围,直到连接被接受?
String hostName = InetAddress.getLocalHost().getHostName();
或者使用操作系统命令或工具。
例如,在Windows上,可以使用以下命令:
ipconfig /all
hostname
或者
hostnamectl
一旦您知道主机名,您可以使用它来建立连接。或者,您也可以在本地网络中的任何客户端上以编程方式获取服务器的IP。在Java中,您可以使用以下代码:
InetAddress.getByName("serverHostName").getHostAddress()