如何广播DHCP请求消息?

DHCP请求消息的广播地址是255.255.255.255。 请求消息是否会通过路由器? 目标地址是255.255.255.255,这似乎是肯定的。 但是,这听起来不合逻辑,因为如果DHCP请求消息在整个互联网中传播,互联网上的任何DHCP服务器都可以为我分配IP,对吧?

当你的计算机发送一个数据包到255.255.255.255时,它实际上将它映射到MAC地址FF:FF:FF:FF:FF:FF 。 数据包然后被发送到您的计算机到目的地FF:FF:FF:FF:FF:FF的开关(或任何您的计算机被插入)。

交换机知道发往该MAC地址的数据包应该从所有端口发出,所以最终结果是数据包到达了连接到同一个交换机(或者更远一点的交换机)的每个设备。 它还将通过桥接器(包括桥接无线AP)连接到同一networking的任何人,因为桥接器将所有数据包(包括广播)转发(桥接的想法是它应该是透明的 – 一边的一切都是透明的)。 路由器通常不会在单独的networking之间转发广播消息。

覆盖通过交换机/集线器或桥接连接的所有设备的这个区域在networking中被称为“广播域”,这是为了确切的原因 – 广播域内的所有设备将接收由同一区域中的任何其他设备发送的广播。

不,它不会遍历路由器,除非你设置一个DHCP中继代理。 广播消息只在主机(子网)的广播域上广播。

DHCP请求是关于第2层(ff:ff:ff:ff:ff:ff)和第3层(255.255.255.255)的广播。 这是与思科设备相关的行为,当您在其中启用DHCP时。 但是,在Windows服务器方面有所不同。 DHCP请求和确认在那里是单播的。

255.255.255.255不只是另一个IP地址; 这是一个广播地址,所以路由器不知道转发它。

第一个数据包应该被广播,但从服务器获得IP后,当租约到期时,它将发送单播到该服务器。