我正在创建一个应该在LAN上工作的客户端/服务器应用程序。
首先使用RMI,用户注册他们的我不知道什么(IP?),这是一个问题:)
之后,我创建了一个ServerSocket并等待accept()。
现在客户端(或者更好的是,拥有注册用户的服务器)想要建立连接,但。。。如果IP地址被更改了怎么办?
有一种方法可以在服务器上"注册一些东西",如果IP更改全部继续工作?
我试着更好地解释:我不能注册一个IP地址,然后再连接它,因为如果IP更改,我就失去了引用。我想注册独立于知识产权的"东西"。
希望你能理解我的问题。。
答案是使用DNS。DNS是获取给定名称的一个或多个IP地址的适当的去引用机制。
您应该使用DNS将主机名转换为特定的IP地址。当然,我建议你用suo异常来验证主机是否还活着。您还有其他解决方案;您可以直接从服务器或路由器的页面控制(如果您使用局域网中的基础设施)在局域网中设置固定ip。如果你远程飞往你,你将不得不使用DDNS,在那里你可以使用动态IP的DNS。