DHCP 概述
了解传统 DHCP 与扩展 DHCP 之间的区别
本主题涵盖以下部分:
扩展 DHCP 中的新功能和增强功能
扩展 DHCP 或 JDHCP 扩展并增强了传统 DHCP 操作。借助扩展的 DHCP 本地服务器,客户端配置信息驻留在集中式地址分配池中,该池支持高级池匹配和地址范围选择。a 仅向扩展 DHCP 中添加了一些新功能。扩展 DHCP 支持以下功能和增强功能:
在扩展 DHCP 中,地址分配池位于 DHCP 本地服务器外部。外部地址分配池由进程 authd 管理,独立于 DHCP 本地服务器,并且可由不同的客户端应用程序(如 DHCP 或 PPPoE 访问)共享。在传统 DHCP 中,客户端地址池和客户端配置信息位于 DHCP 服务器上。
扩展的 DHCP 服务器与本地 AAA 服务框架交互,以使用后端身份验证服务器(如 RADIUS)提供 DHCP 客户端身份验证。
您可以全局配置动态配置文件和身份验证支持,也可以为特定一组接口配置动态配置文件和身份验证支持。
扩展 DHCP 本地服务器支持 IPv6 客户端。
DHCP 本地服务器和 DHCPv6 本地服务器都支持特定地址请求功能,使您能够将特定地址分配给客户端。
如果客户端未配置 DHCP option 55,则扩展的 DHCP 本地服务器可为 DHCP 客户端提供最低配置。服务器提供为客户端选择的地址分配池的子网掩码。除了子网掩码,如果在所选地址分配池中配置了信息,则服务器会向客户端提供以下值:
router- 位于客户端子网上的路由器。此语句等同于 DHCP option 3。
domain name— 客户端搜索 DHCP 服务器主机的域名称。这是附加到未完全限定的主机名的默认域名。这等同于 DHCP option 15。
domain name server—客户端可用于解析主机名到客户端的映射的域名系统 (DNS) 名称服务器。这等同于 DHCP option 6。
您可以将本地服务器配置为在客户端 PDU 中使用 DHCP option 82 信息,以确定要用于特定客户端的指定地址范围。在地址分配池中配置的客户端配置信息包括用户定义的选项,如启动服务器、宽限期和租赁时间。
扩展的 DHCP 服务器支持以下功能:
平滑路由引擎切换 (GRES),可为客户端提供镜像支持。
虚拟路由和转发 (VRF)。扩展的 DHCP 也称为虚拟路由器 (VR) 感知 DHCP。请参阅 EX 系列交换机软件功能概述 ,查看支持扩展 DHCP(VR 感知 DHCP)的交换机列表。
表 1 比较了扩展的 DHCP 和传统的 DHCP 配置选项。
特征 |
传统 DHCP 本地服务器 |
扩展 DHCP 本地服务器 |
---|---|---|
本地地址池 |
X |
X |
外部集中管理的地址池 |
– |
X |
本地配置 |
X |
X |
使用来自地址分配池或 RADIUS 服务器的信息进行外部配置 |
– |
X |
动态配置文件附件 |
– |
X |
基于 RADIUS 的订阅者身份验证,以及使用 RADIUS 属性和瞻博网络 VSA 的配置 |
– |
X |
IPv6 客户端支持 |
– |
X |
默认最低客户端配置 |
X |
X |
扩展 DHCP 的优势
扩展的 DHCP 本地服务器通过在订阅者感知环境中提供额外的地址分配和客户端配置功能和灵活性,增强了传统的 DHCP 服务器操作。
扩展的 DHCP 本地服务器使服务提供商能够利用外部地址分配池和集成基于 RADIUS 的配置功能,并持续支持传统的本地地址池。
在扩展 DHCP 环境中配置 DHCP 本地服务器的更改
在扩展 DHCP 中,使用以下步骤配置 DHCP 服务器和地址分配池:
配置设备上的扩展 DHCP 本地服务器并指定 DHCP 本地服务器如何确定要使用哪个地址分配池。
配置 DHCP 本地服务器使用的地址分配池。地址分配池包含 DHCP 客户端的 IP 地址、命名地址范围和配置信息。
服务器使用的扩展 DHCP 本地服务器和地址分配池必须在同一逻辑系统和路由实例中配置。
传统 DHCP 和扩展 DHCP 服务器层次结构级别更改
可以在 表 2 所示的层级配置旧有 DHCP 和扩展的 DHCP 服务器:
DHCP 服务 |
层次 结构 |
---|---|
传统 DHCP 服务器 |
|
扩展 DHCP 服务器 |
|
传统 DHCP 中继 |
|
扩展 DHCP 中继 |
|
传统 DHCP 地址池 |
|
扩展 DHCP 地址池 |
|
由于旧式 DHCP 已弃用,也就是说,命令被“隐藏”。这些命令不会显示在帮助或自动完成中。使用选项 show configuration
显示配置时,系统将显示以下警告:
## ## Warning: configuration block ignored: unsupported platform (...) ##
未配置接口上的 DHCP 数据包被丢弃
在 MX 路由器、QFX 或 EX 交换机上启用 DHCP 中继后,将启用 DHCP 侦听功能,并分析通过设备任意接口(包括已配置接口和未配置接口)传入的所有 DHCP 数据包。未在 DHCP 配置下列出的接口被视为“未配置”。
根据配置,未配置接口上接收的 DHCP 数据包会被删除。
如果在“未配置”接口上丢弃 DHCP 数据包,DHCP 追踪选项将报告为:
May 25 18:26:31.796241 [MSTR][NOTE] [default:default][RLY][INET][irb.82] jdhcpd_packet_handle: BOOTPREQUEST irb.82 arrived on unconfigured interface DISCOVER, flags 23, config 0x0
某些平台特有的一些行为随着版本而改变。请参阅 发行说明。
扩展 DHCP 中继代理概述
您可以在路由器或交换机上配置扩展 DHCP 中继选项,并使路由器(或交换机)充当 DHCP 中继代理。DHCP 中继代理在 DHCP 客户端和 DHCP 服务器之间转发 DHCP 请求和回复数据包。
DHCP 中继支持动态配置文件的附件,还可以与本地 AAA 服务框架交互,以使用后端身份验证服务器(如 RADIUS)提供订阅者身份验证或 DHCP 客户端身份验证。您可以附加动态配置文件,并按全局或为特定接口组配置身份验证支持。
PTX 系列数据包传输路由器不支持 DHCP 中继代理的身份验证。
在路由器上,您可以在视频/IPTV 等运营商边缘应用程序中使用 DHCP 中继获取订阅者的配置参数,包括 IP 地址。
在交换机上,您可以使用 DHCP 中继获取配置参数,包括 DHCP 客户端的 IP 地址。
使用 dhcp-relay
语句配置的扩展 DHCP 中继代理选项与使用 bootp
语句配置的 DHCP/BOOTP 中继代理选项不兼容。因此,您无法在路由器上同时启用扩展 DHCP 中继代理和 DHCP/BOOTP 中继代理。
有关 DHCP/BOOTP 中继代理的信息,请参阅 将路由器、交换机和接口配置为 DHCP 和 BOOTP 中继代理。
您还可以将扩展 DHCP 中继代理配置为支持 IPv6 客户端。有关DHCPv6 中继代理 功能的信息,请参阅 DHCPv6 中继代理概述。
要配置路由器(或交换机)上的扩展 DHCP 中继代理,请在 dhcp-relay
层级添加语句 [edit forwarding-options]
。
您还可以将 dhcp-relay
语句包含在以下层级:
[edit logical-systems logical-system-name forwarding-options]
[edit logical-systems logical-system-name routing-instances routing-instance-name forwarding-options]
[edit routing-instances routing-instance-name forwarding-options]
DHCP 中继代理、DHCP 客户端和 DHCP 服务器之间的交互
无论软件安装在路由器上还是交换机上,DHCP 中继代理、DHCP 客户端和 DHCP 服务器之间的交互模式都是相同的。但是,使用细节存在一些差异。
路由器 — 在典型的运营商边缘网络配置中,DHCP 客户端位于订阅者计算机上,DHCP 中继代理配置在 DHCP 客户端与一个或多个 DHCP 服务器之间的路由器上。
在交换机上 — 在典型的网络配置中,DHCP 客户端位于访问设备上,如个人计算机,DHCP 中继代理配置在 DHCP 客户端与一个或多个 DHCP 服务器之间的交换机上。
以下步骤高层介绍了在包含两个 DHCP 服务器的配置中 DHCP 客户端、DHCP 中继代理和 DHCP 服务器如何交互。
DHCP 客户端发送一个 discover 数据包,以查找网络中要获取订阅者(或 DHCP 客户端)的配置参数(包括 IP 地址)的 DHCP 服务器。
DHCP 中继代理接收发现数据包,并将副本转发到两个 DHCP 服务器中的每个服务器。然后,DHCP 中继代理在其内部客户端表中创建一个条目,以跟踪客户端的状态。
为了响应接收发现数据包,每个 DHCP 服务器都会向客户端发送一个优惠数据包。DHCP 中继代理接收优惠数据包并将其转发至 DHCP 客户端。
收到优惠数据包后,DHCP 客户端将选择要从其获取配置信息的 DHCP 服务器。通常,客户端会选择在 IP 地址上提供最长租用时间的服务器。
DHCP 客户端发送一个请求数据包,用于指定从其获取配置信息的 DHCP 服务器。
DHCP 中继代理接收请求数据包,并将副本转发到两个 DHCP 服务器中的每个服务器。
客户端请求的 DHCP 服务器发送一个包含客户端配置参数的确认 (ACK) 数据包。
DHCP 中继代理接收 ACK 数据包并将其转发给客户端。
DHCP 客户端接收 ACK 数据包并存储配置信息。
如果配置为这样做,DHCP 中继代理将为此客户端安装主机路由和地址解析协议 (ARP) 条目。
在 IP 地址上建立初始租约后,DHCP 客户端和 DHCP 服务器使用单播传输协商租约续订或解除。DHCP 中继代理对客户端与通过路由器(或交换机)的服务器之间的所有单播数据包进行“侦听”,以确定此客户端的租约何时过期或何时释放。此过程称为 租约影子 或 被动侦听。
DHCP 实时检测
DHCP 订阅者或 DHCP 客户端 IP 会话的实时检测使用主动的实时检测协议对相关客户端进行实时检测检查。客户需要在特定时间内响应实时检测请求。如果在此期间未收到给定次数的连续尝试的响应,则活动检测检查将失败,并会实施失败操作。
全局或按 DHCP 组进行 DHCP 实时检测。
DHCP 中继代理概述
DHCP 中继代理模式是扩展 DHCP 中继的增强功能。DHCP 中继代理支持所有 DHCP 中继功能,同时提供附加功能和优势。
通常,扩展 DHCP 中继作为 DHCP 操作的助手应用程序运行。除了能够将 DHCP 中继代理选项和网关地址 (giaddr) 添加到 DHCP 数据包之外,DHCP 中继对 DHCP 客户端和 DHCP 服务器透明,并且只需在 DHCP 客户端和服务器之间转发消息。
将 DHCP 中继配置为在代理模式下操作时,中继不再透明。在代理模式下,DHCP 中继对 DHCP 客户端隐瞒 DHCP 服务器详细信息,这些客户端在代理模式下与 DHCP 中继进行交互,就像是 DHCP 服务器一样。对于 DHCP 服务器,没有变化,因为代理模式对 DHCP 服务器与 DHCP 中继的交互方式没有影响。
您不能在同一接口上同时配置 DHCP 中继代理和扩展 DHCP 本地服务器。
使用 DHCP 中继代理的优势
DHCP 中继代理提供以下优势:
DHCP 服务器隔离和 DoS 保护 —DHCP 客户端无法检测 DHCP 服务器,无法学习 DHCP 服务器地址,或确定提供 DHCP 支持的服务器数量。服务器隔离还为 DHCP 服务器提供拒绝服务 (DoS) 保护。
多租赁优惠选择 — DHCP 中继代理从多个 DHCP 服务器接收租赁优惠,并选择单个产品/服务发送给 DHCP 客户端,从而减少网络中的流量。目前,DHCP 中继代理会选择收到的第一个产品/服务。
同时支持带编号和未编号的以太网接口 — 对于通过以太网接口连接的 DHCP 客户端,当 DHCP 客户端获取地址时,DHCP 中继代理会添加一个接入内部主机路由,将该接口指定为出站接口。当租用时间到期或客户端发布地址时,路由会自动移除。
逻辑系统支持 — DHCP 中继代理可以在逻辑系统中配置,而非代理模式 DHCP 中继则不能。
DHCP 中继代理、DHCP 客户端和 DHCP 服务器之间的交互
DHCP 中继代理配置在路由器(或交换机)上,路由器(或交换机)在 DHCP 客户端和一个或多个 DHCP 服务器之间运行。
以下步骤对 DHCP 中继代理如何与 DHCP 客户端和 DHCP 服务器交互进行简要说明。
DHCP 客户端发送一个 discover 数据包,以查找网络中要从中获取订阅者的配置参数的 DHCP 服务器。
DHCP 中继代理从 DHCP 客户端接收发现数据包,并将数据包的副本转发至每个受支持的 DHCP 服务器。然后,DHCP 中继代理会创建一个客户端表条目,以跟踪客户端状态。
为了响应发现数据包,每个 DHCP 服务器都会向客户端发送一个优惠数据包,DHCP 中继代理会接收该数据包。DHCP 中继代理将请执行以下操作:
选择收到的第一个报价作为发送给客户的报价
将 DHCP 服务器地址替换为 DHCP 中继代理的地址
将产品/服务转发到 DHCP 客户端。
DHCP 客户端从 DHCP 中继代理接收产品/服务。
DHCP 客户端发送一个请求数据包,指示要从其获取配置信息的 DHCP 服务器— 请求数据包指定 DHCP 中继代理的地址。
DHCP 中继代理接收请求数据包,并将副本(包括选定服务器的地址)转发到所有支持的 DHCP 服务器。
客户端请求的 DHCP 服务器发送一个包含客户端配置参数的确认 (ACK) 数据包。
DHCP 中继代理接收 ACK 数据包,将 DHCP 服务器地址替换为自己的地址,并将数据包转发给客户端。
DHCP 客户端接收 ACK 数据包并存储配置信息。
如果配置为这样做,DHCP 中继代理会为 DHCP 客户端安装主机路由和地址解析协议 (ARP) 条目。
建立初始 DHCP 租约后,DHCP 中继代理将从 DHCP 客户端接收所有租约续订和租约版本,并将它们转发至 DHCP 服务器。
DHCP 中继代理最低配置
此示例显示了在路由器或交换机上使用扩展 DHCP 中继代理所需的最低配置:
[edit forwarding-options] dhcp-relay { server-group { test 203.0.113.21; } active-server-group test; group all { interface fe-0/0/2.0; } }
本主题中的接口类型只是一个示例。 fe-
EX 系列交换机不支持接口类型。
forward-only
DHCP 中继配置不需要安装 S-SA-FP 许可证。
此示例将创建一个 IP 地址为 test
203.0.113.21 的服务器组和一个活动服务器组。DHCP 中继代理配置将应用于名为的 all
组。在此组内,在接口 fe-0/0/2.0 上启用了 DHCP 中继代理。
在环路接口上配置 IPv4 和 IPv6 地址
在其他服务 VRF 中配置 DHCP 服务器时,必须在服务器 VRF 配置中的环路接口上配置 IPv4 和 IPv6 地址,以便 DCHP 中继功能在所有其他 VRF 中工作。
配置 dhcp 中继转发仅回复选项,以启用转发至其他 VRF 中 DHCP 客户端的 DHCP 响应数据包。
[edit routing-instances] Svr-1 { instance-type vrf; routing-options { auto-export; } protocols { evpn { ip-prefix-routes { advertise direct-nexthop; encapsulation vxlan; vni 11000; export type5-export; } } } forwarding-options { dhcp-relay { dhcpv6 { forward-only-replies; } forward-only-replies; } } interface lo0.2; route-distinguisher 103.0.0.1:5000; vrf-import import-tenant; vrf-target target:5000:1; vrf-table-label; } lo0 { unit 0 { family inet { address 103.0.0.1/32; } family inet6 { address 1003::1/128; } } unit 1 { family inet { address 103.0.0.1/32; } family inet6 { address 1003::1/128; } } unit 2 { family inet { address 103.0.0.2/32; } family inet6 { address 1003::2/128; } }
示例:使用多个客户端和服务器的 DHCP 中继代理配置
此示例显示了包含多个 DHCP 客户端和 DHCP 服务器的网络的扩展 DHCP 中继代理配置。有关其他详细信息,请参阅示例。
[edit forwarding-options] dhcp-relay { server-group { sp-1 { 203.0.113.21; 203.0.113.22; } sp-2 { 203.0.113.31; 203.0.113.32; 203.0.113.33; } } active-server-group sp-1; overrides layer2-unicast-replies; group clients_a { relay-option-82 circuit-id; interface fe-1/0/1.1; interface fe-1/0/1.2; interface fe-1/0/1.3; } group clients_b { relay-option-82 { circuit-id { prefix routing-instance-name; } } interface fe-1/0/1.4; interface fe-1/0/1.5; interface fe-1/0/1.6; } group eth_dslam_relay { active-server-group sp-2; overrides { trust-option-82; layer2-unicast-replies; } interface fe-1/0/1.7; interface fe-1/0/1.8; interface fe-1/0/1.9; } }
此示例将创建两个服务器组: sp-1
(包括 DHCP 服务器地址 203.0.113.21 和 203.0.113.22),以及 sp-2
DHCP 服务器地址 203.0.113.31、203.0.113.32 和 203.0.113.33。DHCP 中继代理配置应用于的活动服务器组是 sp-1
。设置全局覆盖,使 DHCP 中继代理在发现过程中使用第 2 层单播传输从 DHCP 服务器向 DHCP 客户端发送 DHCP 回复数据包。
该示例还创建三组订阅者及其关联的快速以太网接口: clients_a
、 clients_b
和 eth_dslam_relay
。这些组的配置可满足不同需求,如下所示:
和
clients_a
clients_b
组由基本订阅者组成。这些组的服务提供商在发往 DHCP 服务器的 DHCP 数据包中插入 option 82 信息。中的
eth_dslam_relay
订阅者连接到以太网数字订阅者线路接入复用器 (DSLAM),该多路复用器 (DSLAM) 用作第 2 层 DHCP 中继代理。的活动服务器组eth_dslam_relay
是sp-2
。为eth_dslam_relay
使 DHCP 中继代理能够信任 option 82 信息并使用第 2 层单播传输在发现期间向 DHCP 客户端发送 DHCP 回复数据包的组设置覆盖。