IP 地址与网络

DHCP (动态主机配置协议)

约 4 分钟阅读

什么是 DHCP

DHCP(动态主机配置协议)是一种自动为连接到网络的设备分配 IP 地址、子网掩码、默认网关、DNS 服务器地址等网络设置的协议。

如果没有 DHCP,连接到网络的每台设备都需要手动配置 IP 地址。你只需通过 Wi-Fi 连接到家庭路由器就能上网,是因为路由器的 DHCP 服务器功能在后台自动分配了 IP 地址。

DHCP 的工作流程 - DORA 过程

通过 DHCP 获取 IP 地址需要经过四步消息交换(DORA)。

  1. Discover(发现):设备连接到网络后,发送广播消息询问「有 DHCP 服务器吗?」此时设备还没有 IP 地址。
  2. Offer(提供):DHCP 服务器提供一个可用的 IP 地址。如果存在多个 DHCP 服务器,可能会收到多个 Offer。
  3. Request(请求):设备选择一个 Offer 并请求「请给我这个 IP 地址」。
  4. Acknowledge(确认):DHCP 服务器确认分配,并连同租约期限等详细信息一起响应。

整个交换过程通常在几百毫秒内完成。连接 Wi-Fi 后几秒钟就能上网,就是得益于这个快速的 DORA 过程。

租约期限与 IP 地址管理

DHCP 分配的 IP 地址设有「租约期限」。租约到期后,设备会向 DHCP 服务器请求续约。

  • 家用路由器:租约期限通常为 24 小时到数天。由于设备更替较少,设置较长。
  • 公共 Wi-Fi:租约期限约 1-2 小时。由于用户更替频繁,设置较短以高效回收地址。
  • 企业网络:通常为 8-24 小时。根据设备数量和地址池大小的平衡来决定。

对于需要固定 IP 地址的设备(打印机、NAS、服务器等),可以使用 DHCP 的「静态分配(预留)」功能。通过将设备的 MAC 地址与 IP 地址绑定,既保持了 DHCP 的便利性,又能始终分配相同的 IP 地址。

DHCP 故障排除

许多网络连接问题都与 DHCP 有关。以下是常见问题及解决方法。

  • 被分配了 169.254.x.x 地址:当 DHCP 服务器没有响应时,操作系统会使用 APIPA(自动专用 IP 寻址)进行自我分配。请尝试重启路由器、检查网线或重新连接 Wi-Fi。
  • IP 地址冲突:当手动配置的设备地址与 DHCP 分配范围重叠时,可能会将同一 IP 地址分配给两台设备。应将 DHCP 分配范围与手动配置范围分开。
  • 非法 DHCP 服务器(Rogue DHCP):如果网络上存在非预期的 DHCP 服务器,可能会分发错误的配置。企业网络使用 DHCP 侦听来应对。

在 Windows 上,可以使用 ipconfig /releaseipconfig /renew 释放和重新获取 DHCP 租约。在 macOS/Linux 上,等效命令为 sudo dhclient -rsudo dhclient

常见误解

使用 DHCP 意味着 IP 地址每次都会变
DHCP 服务器在租约期限内倾向于重新分配相同的 IP 地址。在家庭环境中,除非重启路由器,通常会保持相同的 IP 地址。如果需要确保固定,请使用静态分配(预留)。
DHCP 只分配 IP 地址
DHCP 除了 IP 地址外,还一次性分配子网掩码、默认网关、DNS 服务器、NTP 服务器、域名等众多网络配置信息。
分享

相关术语