DHCP 客户端属性和地址分配
DHCP 属性概述
您可以配置特定于 DHCP 应用程序的功能,这些功能仅应用于某些 DHCP 客户端或所有具有 DHCP 属性的 DHCP 客户端。DHCP 使用属性来确定客户端操作的作用域。例如,您可以配置一些属性来设置最长租期或租期的首选生存期、要在其中搜索 DHCP 服务器的域、匹配要从地址池中使用的地址范围的标准等。可以指定与某些先决条件信息匹配的客户端动态分配特定命名地址范围内的地址。根据使用的命名范围,DHCP 会指定其他 DHCP 属性。
您可以通过以下方式配置 DHCP 属性:
在 RADIUS 服务器上,以便在对订阅者进行身份验证时,它们在相应的 DHCP 选项中传达。有关详细信息,请参阅 RADIUS 服务器文档。
对于从本地地址分配池
dhcp-attributes
接收地址的特定 DHCPv4 或 DHCPv6 客户端,请在[edit access address-assignment pool pool-name]
层次结构级别使用语句。作为一组属性,可应用于特定地址池之外的 DHCP 客户端。在
[edit access]
层次结构级别上protocol-attributes
定义使用语句定义属性集。然后将带有不同protocol-attributes
语句的集合应用于以下任一项:适用于层次结构级别的所有 DHCPv4 客户端
[edit system services dhcp-local-server overrides]
。用于层次
[edit system services dhcp-local-server group group-name overrides]
结构级别的一组 DHCPv4 客户端。适用于层次结构级别的所有 DHCPv6 客户端
[edit system services dhcp-local-server dhcpv6 overrides]
。对于层次
[edit system services dhcp-local-server dhcpv6 group group-name overrides]
结构级别的一组 DHCPv6 客户端。
DHCP 本地服务器处理由以下层次结构中的不同方法提供的属性:
RADIUS > 地址池>全局>其他
在 RADIUS 中配置属性时,将使用 DHCP 本地服务器接收的相应选项中的值。
为地址池配置属性时,该值将用于从该池中分配地址的客户端。
当使用
protocol-attributes
语句全局配置属性时,该值将用于所有客户端。如果不满足其他条件,但在层次结构级别配置
[edit access]
了属性,则该值将用于所有客户端。如果属性是在[edit access profile]
层次结构级别配置的,则该值将用于使用配置文件的客户端。
配置 DHCP 属性的好处
您可以根据匹配条件将所需的属性与特定客户端进行匹配。从池中分配地址时,您可以灵活地分配属性和值,对于不使用地址池的客户端,您可以全局分配属性和值,或者在身份验证时使用 RADIUS 属性。
可应用于 DHCP 客户端的属性
本主题提供 DHCPv4 和 DHCPv6 选项的说明。
表 1 介绍了可配置的 DHCPv4 客户端属性。
属性 |
描述 |
DHCP 选项 |
---|---|---|
|
启动文件名播发给客户端,并由客户端用于完成配置。 |
67 |
|
包含启动文件的启动服务器。 |
66 |
|
客户端在其中搜索 DHCP 服务器主机的域。 |
15 |
|
租约提供的宽限期。 |
– |
|
DHCP 服务器允许的最长租用时间。 |
51 |
|
客户端可以向其发送 DNS 查询的 DNS 服务器的 IP 地址。 |
6 |
|
NetBIOS 节点类型。 |
46 |
|
用户定义的选项。 |
– |
|
Option 82 值映射到命名地址范围。 |
– |
|
子网上路由器的 IP 地址。 |
3 |
|
用作 DHCP 源地址的 IP 地址 |
54 |
|
|
|
|
客户端(路由器)在向授予原始租约以延长客户端租约的 DHCPv4 服务器发送续订消息之前等待的 |
58 |
|
客户端(路由器)在发送续订消息以延长客户端租约之前等待的时间。续订消息将发送到授予原始租约的 DHCPv4 服务器。 此属性是 的替代 |
58 |
|
客户端(路由器)在向任何可用的 DHCPv4 服务器发送重新绑定消息以延长客户端租期之前等待的 |
59 |
|
客户端(路由器)在发送重新绑定消息以延长客户端租期之前等待的时间。重新绑定消息将发送到任何可用的 DHCPv4 服务器。 此属性是 的替代 |
59 |
|
客户端用于获取客户端配置文件的简单文件传输协议 (TFTP) 服务器。 |
150 |
|
Windows NetBIOS 名称服务器的 IP 地址。 |
44 |
表 2 介绍了可以配置的 DHCPv6 客户端属性。
属性 |
描述 |
DHCPv6 选项 |
---|---|---|
|
客户端可以向其发送 DNS 查询的 DNS 服务器的 IPv6 地址。 |
23 |
|
租约提供的宽限期。 |
– |
|
DHCP 服务器允许的最长租用时间。 |
– |
|
用户定义的选项。 |
– |
|
有效地址处于首选状态的时间长度。当首选生存期到期时,该地址将被弃用。 |
– |
|
SIP 出站代理服务器的 IPv6 地址。 |
22 |
|
SIP 出站代理服务器的域名。 |
21 |
|
客户端(路由器)在向授予原始租约以延长客户端租约的 DHCPv6 服务器发送续订消息之前等待的 |
– |
|
客户端(路由器)在发送续订消息以延长客户端租约之前等待的时间。续订消息将发送到授予原始租约的 DHCPv6 服务器。 此属性是 的替代 |
– |
|
客户端(路由器)在向任何可用的 DHCPv6 服务器发送重新绑定消息以延长客户端租期之前等待的百分比 |
– |
|
客户端(路由器)在发送重新绑定消息以延长客户端租期之前等待的时间。重新绑定消息将发送到任何可用的 DHCPv6 服务器。 此属性是 的替代 |
– |
|
地址保持有效状态的时间长度。生存期到期时,地址将失效。 |
– |
为所有客户端或一组客户端配置 DHCP 属性
您可以配置 DHCP 客户端属性以确定客户端操作的范围。例如,您可以配置一些属性来设置最长租期或租期的首选生存期、要在其中搜索 DHCP 服务器的域、确定要从地址池中使用的地址范围的匹配条件等。
您可以通过以下方式配置要应用于客户端的 DHCP 属性:
全局覆盖所有客户端,或仅覆盖特定组中的客户端。
通过地址分配池;这些属性仅适用于从特定地址分配池接收地址的客户端。有关此方法的详细信息,请参阅配置 客户端获取地址时应用的 DHCP 客户端特定属性 。
要全局分配属性或为组分配属性,请执行以下操作:
例如,以下配置创建一个名为 attr-v4-1 的属性集,并将该属性集应用于所有 DHCPv4 客户端。
[edit] user@host# set access protocol-attributes attr-v4-1 maximum-lease-time seconds user@host# set access protocol-attributes attr-v4-1 t1-renewal-time 120000 user@host# set system services dhcp-local-server overrides protocol-attributes attr-v4-1
配置客户端获取地址时应用的 DHCP 客户端特定属性
当客户端获取地址时,可以使用地址分配池功能来包含特定于客户端的 DHCP 属性。DHCP 客户端应用程序使用属性来确定如何分配地址,并向客户端提供可选特征。例如,DHCP 应用程序可以指定动态分配与某些先决条件信息匹配的客户端,以动态分配特定命名范围内的地址。根据使用的命名范围,DHCP 会指定其他 DHCP 属性,如客户端使用的启动文件、租期宽限期和最长租期。
您可以使用语 dhcp-attributes
句为地址分配池配置特定于 DHCP 客户端的属性。 可应用于 DHCP 客户端的属性 介绍了可以为 IPv4 和 IPv6 地址分配池(或选择性地分配给组中的所有客户端或客户端)配置的受支持属性。
要为 DHCP 客户端配置地址分配池属性,请执行以下操作:
例如,以下配置指定 DHCPv4 的 isp1 池的启动服务器、宽限期和最长租用时间的值:
[edit access] user@host# edit address-assignment pool isp_1 family inet [edit access address-assignment pool isp_1 family inet] user@host# set dhcp-attributes boot-server 192.168.200.100 grace-period 3600 maximum-lease-time 18000
可配置为 DHCP 属性的 DNS 名称服务器地址也可以在路由实例级别和访问配置文件中全局配置。有关详细信息,请参阅 DNS 名称服务器地址概述。
配置扩展 DHCP 本地服务器如何确定要使用的地址分配池
您可以指定扩展的 DHCP 本地服务器使用客户端数据来确定为 DHCP 客户端提供 IP 地址和配置的地址分配池的匹配顺序。如果未指定任何池匹配顺序,设备将使用 IP 地址优先匹配选项中配置的默认 IP 地址选择地址池。
例:
[edit system services dhcp-local-server] user@host# set pool-match-order
您可以指定池匹配方法的顺序。您可以按任意顺序指定方法。所有方法都是可选的。IP 地址优先方法是默认方法。
IP 地址优先 - 默认选项。服务器通过将客户端 DHCP 请求中的 IP 地址与地址分配池的网络地址进行匹配来选择要使用的地址分配池。
如果客户端请求包含网关 IP 地址 (giaddr),则本地服务器会将 giaddr 与地址分配池的地址进行匹配。
如果客户端请求不包含 giaddr,则 DHCP 本地服务器会将接收接口的 IP 地址与地址分配池的地址进行匹配。
例:
[edit system services dhcp-local-server pool-match-order] user@host# set ip-address-first
外部授权机构 — DHCP 本地服务器接收来自外部授权机构(如 RADIUS 或 Diameter)的地址分配。
如果 RADIUS 是外部授权机构,则 DHCP 本地服务器使用 Framed-IPv6-Pool 属性(RADIUS 属性 100)来选择池。
如果 Diameter 是外部授权机构,则服务器使用 Framed-IPv6-Pool 属性的 Diameter 对应项来确定池。
例:
[edit system services dhcp-local-server pool-match-order] user@host# set external-authority
Option 82 — 对于 IPv4 地址扩展 DHCP 本地服务器将客户端 DHCP 数据包中的 DHCP 中继代理信息选项(选项 82)匹配到地址分配池中的指定范围。命名范围是整个地址分配池地址范围中的子集,您可以在创建地址分配池时配置该范围。
例:
[edit system services dhcp-local-server pool-match-order] user@host# set option-82
要对 IPv4 地址分配池使用 DHCP 本地服务器 option 82 匹配功能,必须确保地址分配池的语句中包含
dhcp-attributes
该option-82
语句。
此示例显示了扩展的 DHCP 本地服务器配置,其中包括可选的 IPv4 地址分配池匹配和接口组。对于池匹配,此配置指定 DHCP 本地服务器首先检查来自外部身份验证颁发机构(例如 RADIUS)的响应,然后使用 Framed-IPv6-Pool 属性确定要用于客户端地址的地址分配池。如果未找到匹配的外部授权机构,则 DHCP 本地服务器将使用 IP 地址优先匹配和 option 82 信息来匹配客户端 IPv4 地址分配的指定地址范围。option 82 匹配也必须包含在地址分配池配置中。
[edit system services] dhcp-local-server { group group_one { interface fe-0/0/2.0; interface fe-0/0/2.1; } group group_two { interface fe-0/0/3.0; interface fe-0/0/3.1; } pool-match-order { external-authority ip-address-first; option-82; } }
使用 DHCP Option 50 和 DHCPv6 IA_NA Option 为客户端分配特定 IP 地址
通过订阅者管理或 DHCP 管理,可以指定 DHCP 本地服务器为客户端分配特定地址。例如,如果客户端断开连接,则可以使用此功能分配客户端在断开连接之前使用的相同地址。如果请求的地址可用,DHCP 会将其分配给客户端。如果地址不可用,DHCP 本地服务器将根据地址分配过程提供另一个地址。
DHCP 本地服务器和 DHCPv6 本地服务器都支持特定地址请求功能。DHCP 本地服务器在 DHCP 发现消息中使用 DHCP 选项 50 请求特定地址,而 DHCPv6 本地服务器在 DHCPv6 请求消息中使用IA_NA选项(非临时地址的身份关联)。
订阅者管理(DHCP 管理)每种 DHCPv6 IA_NA或IA_PD地址类型仅支持一个地址。如果 DHCPv6 客户端为给定类型请求多个地址,则 DHCPv6 本地服务器仅使用第一个地址,而忽略其他地址。
指定 DHCP 客户端地址分配的子网
通过订阅者管理,您可以显式指定 DHCP 本地服务器与所请求的 IP 地址匹配的子网。仅当请求的地址与 DHCP 服务器接口的 IP 地址在同一子网中时,服务器才会接受并使用活动客户端请求的 IP 地址进行地址分配。仅当请求的地址与中继接口的 IP 地址位于同一子网中时,服务器才会接受并使用被动客户端请求的 IP 地址。DHCPv6 本地服务器支持对 DHCPv6 客户端和地址使用相同的进程。
要指定用于客户端地址分配的子网:
对于 DHCP 本地服务器:
[edit system services dhcp-local-server] user@host# set requested-ip-network-match 10
对于 DHCPv6 本地服务器:
[edit forwarding-options dhcp-local-server dhcpv6] user@host# set requested-ip-network-match 30
DHCP 本地服务器处理客户端信息请求消息
已具有外部提供地址的 DHCP 客户端可以通过发送 DHCP 通知或 DHCPv6 信息请求消息来指示所需的信息,从而从 DHCP 服务器请求进一步的配置信息。这些消息类型可以统称为信息请求消息。默认情况下,DHCP 本地服务器和 DHCPv6 本地服务器会忽略它们接收到的任何 DHCP 信息请求。您可以覆盖此默认行为以启用对这些消息的处理。
如果启用信息请求处理,则 DHCP 本地服务器将使用包含所请求信息(如果可用)的 DHCP 确认消息来响应客户端。DHCPv6 本地服务器以相同的方式进行响应,但使用 DHCP 回复消息。不会因 DHCP 信息请求消息而应用订阅者管理或 DHCP 管理。
默认情况下,如果在为 DHCP 服务器组配置的接口上接收 DHCP 信息请求消息,则 DHCP 中继和 DHCP 中继代理会自动转发这些消息,而无需修改这些消息。DHCP 中继和中继代理丢弃信息 请求在任何其他接口上接收的消息。您无法禁用此默认的 DHCP 中继和中继代理行为。
这些客户端请求的信息通常使用dhcp-attributes
语句在[edit access]
层次结构级别上address-assignment pool pool-name
定义的地址池的语句进行配置。
启用 DHCP 信息请求处理时,可以选择指定本地服务器从中检索客户端请求的配置信息的池的名称。如果未指定本地池,则本地服务器会请求 AAA 选择并仅返回相关池的名称。
EX 系列交换机不支持 PPP 接口。
通过 PPP 接口配置 DHCPv6 时,PPP RADIUS 身份验证数据可用于选择从中获取响应信息的池。此外,还可以将其他 RADIUS 属性插入到 DHCPv6 回复消息中。如果 RADIUS 属性和本地池属性之间存在重叠,则使用 RADIUS 值而不是本地配置数据。如果未从底层 PPP 接口接收到 RADIUS 信息,则行为与之前针对非 PPP 接口的行为相同。
启用客户端信息请求的处理
如果要使用本地池而不是 AAA 提供的本地池,请配置一个或多个本地地址池。 请参阅 DHCPv6 地址分配池。对于处理信息请求消息,不需要地址配置。对于 DHCP 本地服务器,必须指定 IPv4 家族;对于 DHCPv6 本地服务器,必须指定 IPv6 家族。
有关如何配置发送信息请求消息的客户端所寻求的信息的详细信息,请参阅 配置客户端获取地址时应用的特定于 DHCP 客户端的属性 。
默认情况下,DHCP 本地服务器和 DHCPv6 本地服务器不会响应来自客户端的信息请求(DHCP 通知和 DHCPv6 信息请求)消息。您可以启用 DHCP 本地服务器和 DHCPv6 本地服务器来处理这些消息,并通过确认(分别是确认或回复消息)和请求的信息来响应它们。
DHCP 中继代理通过为相应服务器组配置的接口,自动将信息请求消息转发到配置的服务器组,而无需修改。如果在未配置的接口上收到消息,则消息将被丢弃。DHCP 中继代理也支持转发这些消息。您不能禁用信息请求消息的转发。
要启用 DHCP 客户端信息请求消息的处理,请执行以下操作:
DNS 地址分配优先级
订阅者管理支持四种向 DHCP 客户端分配地址的方法。配置多种方法后,路由器将使用以下优先顺序来确定要分配给客户端的地址。
互联网编号分配机构 (IANA) 在 RADIUS 服务器上定义的地址:供应商 ID 4874,属性 26-4(主 DNS)和 26-5(辅助 DNS)。
由 IANA 供应商 ID 2636 属性 26-31(主 DNS)和 26-33(辅助 DNS)属性在 RADIUS 服务器上定义的地址。
由 IANA 供应商 ID 311 属性 26-28 (MS-Primary-DNS-Server) 和 26-29 (MS-SECONDARY-DNS-SERVER) 在 RADIUS 服务器上定义的地址。
在路由器上的本地地址池中定义的地址。
示例:使用可选池匹配扩展 DHCP 本地服务器配置
此示例显示了扩展的 DHCP 本地服务器配置,其中包括可选的 IPv4 地址分配池匹配和接口组。对于池匹配,此配置指定 DHCP 本地服务器首先检查来自外部身份验证颁发机构(例如 RADIUS)的响应,然后使用 Framed-IPv6-Pool 属性确定要用于客户端地址的地址分配池。如果未找到匹配的外部授权机构,则 DHCP 本地服务器将使用 IP 地址优先匹配和 option 82 信息来匹配客户端 IPv4 地址分配的指定地址范围。option 82 匹配也必须包含在地址分配池配置中。
[edit system services] dhcp-local-server { group group_one { interface fe-0/0/2.0; interface fe-0/0/2.1; } group group_two { interface fe-0/0/3.0; interface fe-0/0/3.1; } pool-match-order { external-authority ip-address-first; option-82; } }
本主题中的接口类型只是一个示例。 fe-
EX 系列交换机不支持接口类型。