静态和动态IP地址问题

时间:2016-04-05 15:23:29

标签: java networking server ip static-ip-address

我们假设我们正在托管个人计算机和服务器程序是用Java编写的。

1.如果我们使用静态IP地址托管服务器,那么这意味着我们可以更换机器并将其替换为其他机器,重新启动机器我们想要多次,我们的客户端仍然可以在系统之后与我们通信背部? 2.如果我们使用动态IP地址托管服务器,那么只需重新启动机器,我们必须告诉每个客户端那个新的IP地址是这个吗? 3.即使我们没有重启机器,动态IP地址也会发生变化吗?

2 个答案:

答案 0 :(得分:0)

1:是的,如果服务器具有静态IP客户端将始终能够依赖该IP地址的服务器。

2:很有可能,是的。在许多网络中,DHCP服务器会将相同的IP提供给已重新启动的计算机,但您当然不应该依赖它。

3:是 - 动态分配的IP地址有一个" TTL" - 生活的时间。这可能需要很长时间(数周或更长时间),但它们仍然可能会过期并发生变化。大多数情况下,机器会获得相同的IP,但同样,你不应该依赖它。

答案 1 :(得分:0)

  1. 是的,静态IP地址意味着它是固定的。当然,整个系统还有更多,因为IP解析为MAC地址。尽管如此,静态IP(假设它仅在网络上一次)意味着具有该IP的任何机器都将响应。因此,客户端始终可以连接到IP地址。
  2. 注意:不是一种非常友好的方式。

    1. 只是因为某些东西有一个动态的" IP地址并不一定意味着它每次都会改变。使用DHCP可以每次为同一MAC地址分配相同的IP地址。这是一种比将硬件编码到机器上更好的方法。

      此外,您确实不应该让您的客户使用IP地址进行连接。他们应该在DNS中通过名称查找计算机。您可以将DNS查找协调到DHCP,因此计算机除了解析主机名外无需执行任何操作。

      但是,正如您的问题所示,如果一台机器使用DHCP并且每次都没有收到相同的IP地址,并且您的客户端通过IP地址连接,那么在每个新的分配中,客户端都需要新的IP地址。

    2. 即使没有重新启动,机器的IP地址是否更新是由DHCP服务器控制的策略。通常,IP地址有续订时间。在没有大量讨论的情况下,DHCP会话期间的客户端可能会请求相同的IP地址,但服务器是否要分发相同的IP地址。相反,只要DHCP缓存是最新的,大多数服务器配置为将相同的IP地址分配给给定的MAC地址。这完全是一项政策决定。

    3. 然而,在一天结束时,您似乎正在尝试将客户端绑定到服务器的IP地址,这不是一个好策略。使用DNS并让客户端解析主机名是一种更好的策略。如果我错误地推断你的意图,我道歉。

      注意:我使用DHCP作为发布动态IP地址的方式。你可能会使用其他策略,但我认为这个概念是一样的。