面试题答案
一键面试DHCP(Dynamic Host Configuration Protocol)动态主机配置协议的工作流程主要分为以下四个阶段:
1. 发现阶段(DHCP Discover)
- 具体交互过程:
- 当一个新的主机接入网络时,它并不知道任何DHCP服务器的地址。此时主机以广播的形式发送DHCP Discover报文,目的IP地址为255.255.255.255,源IP地址为0.0.0.0。该广播报文会被网络中所有的设备接收。
- 涉及的报文类型:DHCP Discover报文。
2. 提供阶段(DHCP Offer)
- 具体交互过程:
- 网络中的DHCP服务器接收到DHCP Discover报文后,检查自己的地址池是否有可用的IP地址。如果有,DHCP服务器会从地址池中选择一个未分配的IP地址,并以单播的方式向发送Discover报文的主机发送DHCP Offer报文。该报文中包含了服务器提供的IP地址、子网掩码、默认网关、DNS服务器地址等配置信息。
- 涉及的报文类型:DHCP Offer报文。
3. 请求阶段(DHCP Request)
- 具体交互过程:
- 主机可能会收到多个DHCP服务器发送的DHCP Offer报文(如果网络中有多个DHCP服务器)。主机一般会选择第一个收到的Offer报文,并以广播的形式发送DHCP Request报文,目的IP地址为255.255.255.255,源IP地址仍为0.0.0.0。该请求报文的作用一是向它选择的DHCP服务器请求分配IP地址及其他网络配置参数,二是告知其他未被选择的DHCP服务器,它已经选择了一个服务器,其他服务器可以收回它们提供的IP地址。
- 涉及的报文类型:DHCP Request报文。
4. 确认阶段(DHCP Ack)
- 具体交互过程:
- 被主机选择的DHCP服务器接收到DHCP Request报文后,确认该请求中的IP地址仍然可用。然后,DHCP服务器会以单播的方式向主机发送DHCP Ack(Acknowledge)报文,正式确认将IP地址及其他配置参数分配给该主机。主机收到DHCP Ack报文后,就完成了IP地址等网络参数的配置,可以正常使用网络了。
- 涉及的报文类型:DHCP Ack报文。
此外,如果在上述过程中出现错误,如IP地址已经被占用等情况,DHCP服务器可能会向主机发送DHCP Nak(Negative Acknowledge)报文,通知主机分配失败。