当我查看协议时,我看到DHCP请求和确认都是在链路层中广播的。然而在这一点上,双方实际上知道彼此的MAC地址。如果是这样,他们为什么不单播消息?
为什么 DHCP ACK 和 REQ 消息在链路层广播?
网络工程
dhcp
协议理论
播送
2021-07-23 08:29:43
1个回答
记住可以有多个 DHCP 服务器,DHCPREQUEST 是广播的,因为:
未被 DHCPREQUEST 消息选择的那些服务器使用该消息作为客户端拒绝该服务器提供的通知。[第16页]
那些其他服务器可能在它们的池中为这个客户端保留了一个地址,如果服务器知道客户端不想要它,它可以被标记为未使用。
的DHCPACK是广播,如果客户端请求它(因为它是在一个部分配置状态,或只是它的方便):
为了解决某些在配置 TCP/IP 软件之前无法接受 IP 单播数据报的客户端,[有] BROADCAST (B) 标志。[第11页]
如果广播位未设置且 [各种条件] 那么服务器单播 DHCPOFFER 和 DHCPACK [...] 如果[其他条件] 那么服务器广播 DHCPOFFER 和 DHCPACK 消息 [p23]
其它你可能感兴趣的问题