将路由器、交换机和接口配置为 DHCP 和 BOOTP 中继代理
您可以将路由器、交换机或接口配置为动态主机配置协议 (DHCP) 和 Bootstrap 协议 (BOOTP) 中继代理。这意味着本地连接的主机可以发出 DHCP 或 BOOTP 请求作为广播消息。如果路由器、交换机或接口看到此广播消息,则会将消息中继至指定的 DHCP 或 BOOTP 服务器。
如果您拥有本地连接的主机和遥远的 DHCP 或 BOOTP 服务器,则应将路由器、交换机或接口配置为 DHCP 和 BOOTP 中继代理。对于通过 IRB 连接的 MX 系列路由器,请参阅以下说明,以防止丢弃 BOOTP 回复数据包。
要将路由器或交换机配置为用作 DHCP 和 BOOTP 中继代理,请在层次结构级别中[edit forwarding-options helpers]
包含bootp
语句:
[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 标头 的 secs 字段中设置允许的最小秒数,请包括该 minimum-wait-time
语句。 在 secs 字段中具有较小编号的标头不会转发。最小等待时间的默认值为零 (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"; } } } }
要在通过 IRB 连接的 MX 系列路由器(MX80、MX240、MX480 和 MX960)上使用bootp helper
,可能需要采取步骤来确保 DHCP 发现数据包(启动回复)发送至客户端并按预期接收。否则,bootp回复可能会被丢弃,因为 DHCP 客户端正在清除发现数据包中的广播位,或者因为 DHCP 服务器正在从中offer剥离option-82标志。
当 IRB 接口是与具有多个第 2 层(物理)接口的桥接域相关联的第 3 层(逻辑)接口时,就会发生这种情况。在这种情况下,如果 offer DHCP 服务器中的接口是单播的,并且没有包含用于识别接收数据包的 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 用于标识路由器所用接口的字符串得以保留。