让网络上的客户端发现服务器

时间:2013-01-26 22:28:37

标签: java tcp client ip

我目前正在编写一个使用TCP / IP进行通信的Java应用程序。我想要完成的是让客户端轻松找到服务器并通过发送一些消息进行连接。

现在的问题是: 如何让客户端发现服务器?

有没有办法可以向路由器发送消息(可能是DHCP服务器)告诉它我正在使用这项服务?然后客户端可以检查路由器(DHCP服务器)上是否有类似的东西,并连接到相应的IP。

希望有人可以提供帮助。

2 个答案:

答案 0 :(得分:2)

您可以使用UDP广播。这里some details关于实施。

答案 1 :(得分:0)

结帐zeroconf。它是用于服务广告和发现的multicast-dns解决方案。该协议最初由Apple作为bonjour协议。还有一个流行的开源实现的protocal称为Avahi

有一个java库avahi4j可能会有所帮助。我个人没有avahi4j的第一手经验,但已将avahi用于其他非Java项目。

请注意,此方法仅适用于本地子网的广播域。