DHCP请求消息的广播地址是255.255.255.255。这个请求消息会经过路由器吗?似乎是会的,因为目的地址是255.255.255.255。但是这听起来不太合理,因为如果DHCP请求消息传遍整个互联网,互联网上任何一台DHCP服务器都可以给我分配IP,对吧?
答案1
当您的计算机向 255.255.255.255 发送数据包时,它实际上会将其映射到 MAC 地址FF:FF:FF:FF:FF:FF
。然后,数据包从您的计算机发送到交换机(或您的计算机所插入的任何设备),目的地为FF:FF:FF:FF:FF:FF
。
交换机知道发往该 MAC 地址的数据包应从所有端口发出,因此最终结果是数据包到达连接到同一交换机(或链下更远的交换机)的每个设备。它还将到达通过网桥(包括桥接无线 AP)连接到同一网络的任何人,因为网桥转发所有数据包,包括广播(网桥的理念是它应该是透明的 - 一端的所有内容都从另一端发出)。路由器通常不会在不同网络之间转发广播消息。
这个覆盖通过交换机/集线器或桥接连接的所有设备的区域在网络术语中被称为“广播域”,原因正是如此 - 广播域内的所有设备都将接收同一区域内任何其他设备发送的广播。
答案2
不会,除非您设置 dhcp 中继代理,否则它不会穿越路由器。广播消息仅在主机(子网)的广播域上广播。
答案3
DHCP 请求是针对第 2 层 (ff:ff:ff:ff:ff:ff) 和第 3 层 (255.255.255.255) 的广播。这是在 Cisco 设备中启用 DHCP 时的行为。但是,对于 Windows 服务器,情况有所不同。DHCP 请求和确认是单播的。
答案4
第一个数据包应该被广播,但是在从服务器获取 IP 后,当租约到期时,它将向该服务器发送单播。