将路由器、交换机和接口配置为 DHCP 和 BOOTP 中继代理
您可以将路由器、交换机或接口配置为充当动态主机配置协议 (DHCP) 和引导协议 (BOOTP) 中继代理。这意味着本地连接的主机可以发出 DHCP 或 BOOTP 请求作为广播消息。如果路由器、交换机或接口看到此广播消息,则会将该消息中继到指定的 DHCP 或 BOOTP 服务器。
如果您有本地连接的主机和远程 DHCP 或 BOOTP 服务器,则应将路由器、交换机或接口配置为 DHCP 和 BOOTP 中继代理。对于通过 IRB 连接的 MX 系列路由器,请参阅以下注释以防止丢弃 BOOTP 回复数据包。
要将路由器或交换机配置为充当 DHCP 和 BOOTP 中继代理,请在层次结构级别包含 bootp
以下语句 [edit forwarding-options helpers]
:
[edit forwarding-options helpers] bootp { client-response-ttl number; description text-description; interface (interface-name | interface-group) { client-response-ttl number; description text-description; maximum-hop-count number; minimum-wait-time seconds; no-listen; server address { logical-system logical-system-name <routing-instance [ <default> routing-instance-names ]>; routing-instance [ <default> routing-instance-names ]; } } maximum-hop-count number; minimum-wait-time seconds; relay-agent-option; server server-identifier { <logical-system logical-system-name> <routing-instance [ routing-instance-names ]>; } }
要设置 BOOTP 服务、DHCP 服务或接口的说明,请包含该 description
语句。
要使用特定 DHCP 中继或 BOOTP 配置设置一个逻辑接口或一组逻辑接口,请包含该 interface
语句。
要将服务器的路由实例设置为转发,请包含 routing-instance
该语句。您可以在同一语句中包含任意数量的路由实例。
要阻止在逻辑接口、一组逻辑接口或者路由器或交换机上转发数据包,请包含该 no-listen
语句。
要在 BOOTP 标头的跃点字段中设置允许的最大数量,请包含 maximum-hop-count
该语句。不会转发跃点字段中编号较大的标头。如果省略该 maximum-hop-count
语句,则默认值为四跃点。
要在 BOOTP 标头的 秒 字段中设置允许的最小秒数,请包含 minimum-wait-time
该语句。不会转发 秒字段中编号 较小的标头。最短等待时间的默认值为零 (0)。
要设置为路由器、交换机或接口指定 DHCP 或 BOOTP 服务器的 IP 地址,请包含该 server
语句。您可以包含多个 server
语句。
要为发送到 DHCP 客户端的 DHCP 响应数据包设置 IP 生存时间 (TTL) 值,请包含该 client-response-ttl
语句。
要在中继的 BOOTP/DHCP 消息中使用 DHCP 中继代理选项,请包含该 relay-agent-option
语句。此选项主要用于在不同 VRF 路由实例之间启用 DHCP 转发。此选项记录在 RFC 3046 DHCP 中继代理信息选项中。
如果您有本地连接的主机和远程 DHCP 或 BOOTP 服务器连接到路由器或交换机的接口之一,则还可以将单个逻辑接口配置为 DHCP 和 BOOTP 中继代理。有关详细信息,请参阅 Junos OS 路由设备管理库。
以下示例演示了 BOOTP 中继代理配置。
user@host# show forwarding-options helpers { bootp { description "dhcp relay agent global parameters"; server 192.168.55.44; server 172.16.0.3 routing-instance c3; maximum-hop-count 10; minimum-wait-time 8; interface { fe-1/3/0 { description "use this info for this interface"; server 10.10.10.10; server 192.168.14.14; maximum-hop-count 11; minimum-wait-time 3; } fe-1/3/1 { no-listen; ###ignore DHCPDISCOVER messages on this interface } all { description "globals apply to all other interfaces"; } } } }
bootp helper
要在通过 IRB 连接的 MX 系列路由器(MX80、MX240、MX480 和 MX960)上使用,您可能需要采取措施确保将 DHCP 发现数据包(引导回复)发送到客户端并按预期接收。否则,bootp回复可能会被丢弃,因为 DHCP 客户端正在清除发现数据包中的广播位,或者因为 DHCP 服务器正在从 中offer剥离option-82标志。
当 IRB 接口是与具有多个第 2 层(物理)接口关联的桥接域关联的第 3 层(逻辑)接口时,会发生这种情况。在这种情况下,如果来自 DHCP 服务器的 是 offer 单播的,并且不包含标识接收数据包的 discovery 物理接口的入口接口,则 MX 路由器将无法确定用于发送的 offers接口。
在 IRB 接口上启用
broadcast
以从桥接域中的所有物理接口泛洪 discovery 帧。例如,user@host# edit forwarding-options helpers bootp interface irb.o broadcast; server 202.67.4.1; }
或
在引导帮助程序上启用
relay-agent-option
。例如,user@host# edit forwarding-options helpers bootp relay-agent-option; server 202.67.4.1; }
配置连接到 DHCP 服务器的 IRB 接口,使其将标志回显 option-82 到路由器。这将确保 option-82 保留标识路由器使用的接口的字符串。