DHCP服务器或DHCP中继代理如何单播DHCP回复?

时间:2015-05-14 12:25:49

标签: dhcp arp

虽然在DHCP客户端初始化阶段,DHCP请求消息始终通过广播发送,但DHCP回复可以作为广播和单播发送。将使用哪种发送方法取决于DHCP服务器或DHCP中继代理以及DHCP客户端的要求。

DHCP客户端可以请求广播DHCP回复,以防它自己的IP协议实施软件无法接收单播IP数据包,直到它配置了有效的IP地址,并且在初始化阶段就是这种情况。在这种情况下,它将特别请求DHCP服务器或中继代理通过将DHCP请求消息中的Flags fleld的广播位设置为1来通过广播发送DHCP回复。 在DHCP客户端可以接收单播IP数据包的情况下,即使它没有配置IP地址,广播位也未设置(0),由DHCP服务器或中继代理决定它将通过单播或广播发送DHCP回复。 Unicast是一种偏向于内容的方法,因为它可以减少网络流量并为客户提供强大的功能。

为了发送数据包/帧,发送方需要知道IP地址和MAC地址。 DHCP服务器或中继代理知道IP和MAC地址,提供IP地址,以及DHCP请求消息中包含的MAC地址。但是,标准的发送数据包程序要求使用ARP协议获取MAC地址,这显然不能正常工作,因为DHCP客户端无法响应ARP数据包,因为它尚未配置IP地址。 那么问题是,DHCP服务器或中继代理如何通过单播发送DHCP回复?是否有访问ARP表并直接添加ARP表项的机制?

1 个答案:

答案 0 :(得分:0)

DHCP服务器可以生成原始数据包并将MAC和IP地址放入其中。发送原始数据包时,操作系统不会对ARP条目或任何内容进行任何检查。因此,即使客户端无法应答ARP并且服务器在ARP表中没有任何内容,该数据包也将是一个有效的单播UDP数据包。