1 DHCP 作用
- 协议配置
- 为了把协议软件做成通用的和便于移植的,协议软件通常都是参数化的。一个协议软件在使用之前必须是已正确配置的。
- 连接到互联网的计算机的协议软件需要配置的项目包括:
- IP地址
- 子网掩码
- 默认路由器的 IP 地址
- 域名服务器的 IP 地址
动态主机配置协议 DHCP (Dynamic Host Configuration Protocol) 提供了即插即用的连网方式,用户不再需要手动配置 IP 地址、子网掩码、网关 IP 地址等信息。
2 工作过程
DHCP 使用客户服务器方式,工作过程如下:
- 需要IP地址的主机在启动时就向 DHCP 服务器 UDP 广播发送“发现报文”(DHCPDISCOVER)(目的地址 255.255.255.255:67,源地址 0.0.0.0:68)
- 在本地网络上的所有主机都能够收到这个广播报文,但只有 DHCP 服务器才对此广播报文进行回答。
- 如果客户端和 DHCP 服务器不在同一个子网,就需要使用中继代理(relay agent)(通常是一台路由器),它配置了 DHCP 服务器的 IP 地址信息。
- 当 DHCP 中继代理收到主机以广播形式发送的发现报文后,就以单播方式向 DHCP 服务器转发此报文,并等待其回答。
- DHCP 服务器回答“提供报文” (DHCPOFFER),表示“提供"了 IP 地址等配置信息。
- DHCP 服务器先在其数据库中查找该计算机的配置信息。若找到,则返回找到的信息。若找不到,则从服务器的 IP 地址池 (address pool)中取一个地址分配给该计算机。
- 因为客户端可能收到多个 DHCP 服务器提供的信息,因此客户端需要进行选择。
- 如果客户端选择了某个 DHCP 服务器提供的信息,那么就发送 Request 报文给该 DHCP 服务器。
- DHCP 服务器发送 DHCPACK 报文,表示客户端此时可以使用这个 IP 地址。这种状态叫做已绑定状态
3 租用期
DHCP 服务器分配给 DHCP 客户的 IP 地址是临时的,因此 DHCP 客户只能在一段有限的时间内使用这个分配到的 IP 地址。
DHCP 协议称这段时间为租用期(lease period),由 DHCP 服务器自己决定。
- 租用期过了一半,DHCP 发送请求报文 DHCPREQUEST 要求更新租用期。
- DHCP 服务器若同意,则发回确认报文 DHCPACK。DHCP 客户得到了新的租用期,重新设置计时器。
- DHCP 服务器若不同意,则发回否认报文 DHCPNACK。这时 DHCP 客户必须立即停止使用原来的 IP 地址,而必须重新申请 IP 地址。
- DHCP 客户可以随时提前终止服务器所提供的租用期,这时只需向 HCP 服务器发送释放报文 DHCPRELEASE 即可。