DHCP Relay Agents的工作原理
对于DHCP服务器的使用,相信大家已经有了一个初步的了解了。那么对于这部分内容,我们还需要进行深入地学习。这次,我们就来讲解一下BOOTP/DHCP Relay Agents的有关内容。下面我们就来看看具体的介绍吧。
如果用户需要建立多台 DHCP 服务器,但 DHCP 服务器与客户机分别位于不同的网段上,则用户的 IP Router 必须符合 RFC1542 的规定,即必须具备 DHCP/ BOOTP Relay Agent 的功能。
relay agent 是一个把某种类型的信息从一个网段转播到另一个网段的小程序。DHCP relay agent 是一个硬件或程序,它能够把 DHCP/BOOTP 广播信息从一个网段转播到另一个网段上。
Relay Agents 是如何工作的?
用户用一个实例来说明 BOOTP/DHCP Relay Agents是如何工作的:
如图(BOOTP/DHCP Relay Agents)在子网 2 中的客户机 C 从子网 1 中的 DHCP Server1 上获得 IP 地址租约。
DHCP 客户机 C 在子网 2 上广播 DHCP/BOOTP discover 消息 (DHCPDISCOVER),广播是将消息以 UDP (User Datagram Protocol)数据包的形式通过 67 端口发出的。
当 relay agent(在本例中是一个具有 DHCP/BOOTP relayAgent 功能的路由器)接收到这个消息后,它检查包含在这个消息报头中的网关 IP 地址,如果 IP 地址为 0.0.0.0 ,则用 relay agent 或路由器的 IP 地址替换它,然后将其转发到 DHCP 服务器所在的子网 1 上。
当在子网 1 中的 DHCPServer1 收到这个消息后,它开始检查消息中的网关IP地址是否包含在 DHCP 范围内,从而决定它是否可以提供 IP 地址租约。
如果 DHCP Server1 含义多个 DHCP 范围,消息中的网关 IP 地址 (GIADDR) 是用来确定从那个 DHCP 范围中挑选 IP 地址并提供给客户。
DHCP Server1 将它所提供的 IP 地址租约 (DHCPOFFER) 直接发送到 relay agent