动态主机配置协议(DHCP)是网络中使用的网络管理协议,用于动态分配IP地址和其他网络配置信息,例如默认网关,掩码,DNS服务器地址等。
DHCP服务器会自动为网络中的各种设备分配IP地址。反过来,这减少了网络管理员手动将IP地址分配给各种设备的工作。
IP地址自动分配过程经历了四个消息交换。这些消息缩写为发现,提供,请求和确认(DORA)。下表提供了这四个消息的详细信息。
Message | Detail |
---|---|
Discover | This is message sent by DHCP client to discover a DHCP server. |
Offer | Sent by DHCP server to lease unique IP address and other parameters needed to client. |
Request | Sent by DHCP client asking server to lease parameters listed in Offer message. |
Acknowledgement | Sent by DHCP server to assign IP address, mask, default router & DNS server address to client. |
但是存在冲突,DHCP IP地址租用使用第3层协议,即Internet协议。这意味着DHCP使用IP数据包。但是我们知道主机最初没有IP地址,那么它们如何形成IP数据包?实际上,他们为此使用了两个保留的IP地址。
- 0.0.0.0 –
保留为尚未分配IP地址的主机的发送方地址的IP地址。 - 255.255.255.255 –
这是本地广播IP地址。发送到该地址的数据包通过本地数据链路广播。路由器不转发包含此地址作为目标地址的数据包。
但是,仍然存在问题。如果DHCP服务器在本地LAN上不可用并且在本地LAN之外存在,该怎么办? DORA消息需要交换。为此,在路由器中配置了“ IP帮助程序地址”,它实际上是DHCP服务器的IP地址。
现在,包含255.255.255.255的数据包将更新为IP帮助程序地址作为目标地址。这有助于DORA消息在本地LAN外部进行交换。
- PC1发送发现消息,但未在本地LAN中找到DHCP服务器。
- R1现在接收IP数据包,并将目标地址更改为DHCP服务器地址(即14.0.10.1),并将发送者地址更改为其自己的出站接口地址(即Gi0 / 2接口地址)。 R1这样做是因为配置了IP帮助程序地址。
- R1转发的IP数据包被DHCP服务器接收并响应此Discover消息。
- 服务器现在发送报价消息,其中源地址作为其自己的IP地址,目标地址作为R1的Gi0 / 2接口地址。实际上,它反转了接收到的IP数据包的地址。
- R1收到要约消息并将其转发到PC1。
- 如以上步骤中所述,请求和确认消息也被交换。