我已经在我的电脑上安装并配置了 DHCP 服务器中央操作系统6.5.它工作正常,并将 IP 地址分配给网络上的客户端计算机,并且正如我所注意到的,当客户端重新连接时,DHCP 服务器会重新分配已分配给该客户端的 IP 地址。我的问题是:
- DHCP 是否可以为同一台机器分配不同的 IP 地址?
- 如果这样做,它会记住将这个 IP 地址分配给该客户端(MAC 地址)多久?
- 如果没有,当范围被完全使用时,DHCP 是否可以将 IP 地址(它记得分配给 MAC 地址)分配给另一台计算机?例如,如果 client1 将 192.168.1.20 作为 IP 地址,然后断开连接,另一个客户端(client2)连接,并且剩下的唯一 IP 地址是 192.168.1.20,则 DHCP 服务器是否将此 IP 地址分配给新客户端(client2)还是将其保留给旧客户端(client1)?如果保留,保留多长时间?
答案1
你已经把它倒过来了,除非配置了静态租约,否则 DHCP 服务器只保留持久状态目前分配的服务器已提交的 IP 地址,以及已提供但客户端尚未请求的可能 IP 地址。服务器在租用期限(在服务器上配置)内提交 IP 地址,但客户端可以根据需要续订租用,或者直到客户端自愿释放 IP 地址。这是客户端它会记住之前分配给它的地址,并向 DHCP 服务器重新请求该地址。
通常,当客户端首次加入网络时,它会在本地物理子网上广播 DHCPDISCOVER 消息。子网上的 DHCP 服务器使用 DHCPOFFER 消息进行响应,其中包含许多配置选项,包括提供的 IP 地址。客户端向特定服务器响应 DHCPREQUEST 消息,请求保留所提供的 IP 地址。服务器要么使用 DHCPACK 消息确认租约,要么在无法满足先前接收到的 DHCPREQUEST 中指定的租约的情况下使用 DHCPNAK(否定确认)确认租约(例如,该地址同时已租给另一个客户端)。
如果客户端记得之前分配给它的 IP 地址,它可以跳过 DHCPDISCOVER 步骤并广播 DHCPREQUEST 消息,请求本地子网上的先前地址。了解客户端配置参数的服务器会使用 DHCPACK 进行响应。如果客户端的请求无效(例如客户端已移动到新的子网),服务器将以 DHCPNACK 进行响应。
请注意,虽然服务器维护它们已分配的 IP 地址的状态,但它们不负责确定客户端请求的 IP 地址实际上是否未使用。如果客户端检测到(例如,通过使用ARP)它请求的地址(并收到了确认)已被使用,则必须通过向服务器发送 DHCPDECLINE 消息来拒绝该地址。