Java - 如何使用局域网上的已知端口检索服务器IP

时间:2013-08-30 17:01:32

标签: java client datagram

我似乎无法找到使用已知端口号检索服务器IP的方法。我试图通过测试每一个IP来进行,但这太慢了。我在网上读到了一些关于用于广播信息的数据报,但我似乎无法理解如何使用它们。总而言之,我试图让聊天客户端连接到具有动态IP的服务器。但问题是当IP更改时客户端无法连接,所以我试图找出一种方法来获得端口上的广播,并且使用该端口的任何客户端都可以从广播中获取IP? ......有什么想法???

更新:提前...我已经知道如何检索服务器的IP。我只需要能够在没有客户端连接的套接字上广播该IP,客户端就可以从广播中检索IP然后连接到服务器

1 个答案:

答案 0 :(得分:1)

以下是步骤:创建UDP套接字,在该套接字上设置SO_BROADCAST选项,将服务器的IP地址放入消息中,然后通过调用带有255.255.255.255作为目标的sendto()来广播该消息。当然,您还需要一个公共端口号,所有客户端都需要绑定该端口号才能接收广播消息。