一、题目
一台 windows 主机初次启动,如果采用 DHCP 的方式获取 IP 地址,那么此主机发送的第一个数据包的源 IP 地址是?
A.255.255.255.255
B.0.0.0.0
C.127.0.0.1
D.169.254.2.33
二、答案
B
三、解析
A. 255.255.255.255
错误,这是广播地址,用于将报文发送到同一网络中的所有设备。虽然 DHCP 请求报文的目的地址通常是广播地址,但源地址不会是广播地址。
B. 0.0.0.0
正确,这是未分配的 IP 地址,表示主机当前没有有效的 IP 地址。在发送 DHCP 请求报文时,主机的源 IP 地址通常设置为 0.0.0.0,表示主机正在请求一个 IP 地址。
C. 127.0.0.1
错误,这是回环地址,用于主机内部的测试和通信。它不会用于发送到外部网络的报文。
D. 169.254.2.33
错误,这是 APIPA(Automatic Private IP Addressing)地址,是 Windows 系统在无法获取 DHCP 服务器分配的 IP 地址时自动分配的本地链路地址。虽然主机可能会使用这种地址,但在发送 DHCP 请求报文时,源地址不会是 APIPA 地址。
四、扩展——DHCP 工作过程
- 发现阶段(DHCP Discover):
- 客户端广播 DHCP Discover 报文,寻找可用的 DHCP 服务器。
- 源 IP 地址:0.0.0.0
- 目的 IP 地址:255.255.255.255
- 提供阶段(DHCP Offer):
- DHCP 服务器收到 DHCP Discover 报文后,发送 DHCP Offer 报文,提供一个 IP 地址。
- 源 IP 地址:服务器的 IP 地址
- 目的 IP 地址:广播地址或客户端的 MAC 地址
- 请求阶段(DHCP Request):
- 客户端收到 DHCP Offer 报文后,发送 DHCP Request 报文,请求接受提供的 IP 地址。
- 源 IP 地址:0.0.0.0
- 目的 IP 地址:服务器的 IP 地址
- 确认阶段(DHCP Ack):
- DHCP 服务器收到 DHCP Request 报文后,发送 DHCP Ack 报文,确认 IP 地址分配。
- 源 IP 地址:服务器的 IP 地址
- 目的 IP 地址:分配给客户端的 IP 地址
