Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

DHCP 网络中的双栈访问模型

DHCP 接入网络中的 IPv4 和 IPv6 双堆栈

图 1 显示了 DHCP 接入网络中的双堆栈接口堆栈。IPv4 家族 (inet) 和 IPv6 家族 (inet6) 可以驻留在同一个 VLAN 接口上。

图 1:通过 DHCP 访问网络 Diagram showing Ethernet interface connecting to VLAN interface, linked to IPv4 Family inet and IPv6 Family inet6, illustrating network interface structure.的双堆栈接口堆栈
注意:

在同一 DHCP 接口上使用 IPv4 和 IPv6 双协议栈时,必须为 IPv4 和 IPv6 用户配置一个动态配置文件。如果为 IPv4 和 IPv6 配置单独的动态配置文件,则无法通过同一接口运行 IPv4 和 IPv6 用户会话。

支持多路分离接口

VLAN 多路分离 (demux) 接口支持 IPv4 和 IPv6 双协议栈。IP 多路分离接口不支持双堆栈。

通过 DHCP 访问网络在双堆栈中的 AAA 服务框架

您可以将 AAA 服务框架用于 BNG 用于网络访问的所有身份验证、授权、核算、地址分配和动态请求服务。该框架支持通过外部 RADIUS 服务器进行身份验证和授权。它还支持通过外部服务器执行的计费和动态授权更改请求 (CoA) 和断开连接作,并通过本地地址分配池和 RADIUS 服务器的组合进行地址分配。

BNG 与外部服务器交互,以确定各个用户访问宽带网络的方式。BNG 还可以从外部服务器获取以下信息:

  • 如何对订阅者进行身份验证。

  • 如何收集和使用会计统计信息。

  • 如何处理动态请求(如 CoA)。

图 2 所示,通过 DHCP 访问网络实现双堆栈,IPv4 和 IPv6 身份验证和计费存在单独的 AAA 会话。

图 2:通过 DHCP 访问网络的双堆栈中的 AAA 服务框架 Flowchart showing AAA sessions structure for IPv4 and IPv6 with connections to authentication and accounting, VLAN, Ethernet, and IP families.

在 DHCP 访问网络中收集计费统计信息

AAA 在单独的计费会话中支持 IPv4 和 IPv6 统计信息。

默认情况下,Acct-Start、Interim 和 Acct-Stop 消息中包含以下 RADIUS 属性(如果可用):

  • Framed-IPv6 前缀

  • 帧 IPv6 池

  • delegated-ipv6-prefix

  • Framed-IPv4-Route

  • Framed-IPv6-路由

您可以将 BNG 配置为在计费 Acct-Start 和 Acct-Stop 消息中排除这些属性。

授权变更 (CoA)

RADIUS 服务器可以向 BNG 发起动态请求。动态请求包括 CoA 请求,用于指定 VSA 修改和服务更改。

在访问配置文件配置中,您可以指定可以向路由器发起动态请求的 RADIUS 身份验证服务器的 IP 地址。身份验证服务器列表还提供订阅者登录期间基于 RADIUS 的动态服务激活和停用。

DHCP 批发网络中的双堆栈接口堆栈

图 3 显示了 DHCP 批发网络中的双堆栈接口堆栈。在此场景中,IPv4 和 IPv6 多路分离接口配置在同一 VLAN 接口上。多路分离接口配置在单独的逻辑系统:路由实例中。

图 3:DHCP 批发网络 Diagram of network configuration showing IPv4 and IPv6 Demux routing instances connected to a VLAN and Ethernet interface.中的双堆栈接口堆栈

单会话 DHCP 双堆栈概述

Junos OS 支持单会话 DHCP 双堆栈,与传统的双堆栈支持相比,这简化了双堆栈订阅者的管理,并提高了性能和会话要求。

在 DHCP 双堆栈环境中,DHCP 服务器同时支持 DHCPv4 和 DHCPv6 订阅者。DHCP 服务器为双堆栈的 DHCPv4 和 DHCPv6 分支提供身份验证和核算等服务。在传统实施中,双堆栈腿的两条腿被视为独立的。DHCPv4 和 DHCPv6 存在单独的分支会造成效率低下,因为可能需要单独的多个会话才能为双堆栈的每个分支提供类似的支持。例如,要通过动态 VLAN 为传统双堆栈提供身份验证,需要三个单独的会话,一个用于 DHCPv4,一个用于 DHCPv6,一个用于经过身份验证的动态 VLAN。同样,双堆栈计费作可能也需要多个会话。

在通过动态 VLAN 的双堆栈中,单会话双堆栈只需要一个会话进行身份验证,而传统的双堆栈配置需要三个会话。对双堆栈的计费支持也使用单个会话。除了减少所需的会话数量外,单会话功能还简化了路由器配置,减少了 RADIUS 消息负载,并提高了双堆栈环境家庭的计费会话性能。

在单会话双堆栈环境中,协商的第一个 DHCP 会话将触发动态 VLAN 创建(如果需要),并在 DHCP 应用程序中进行授权。双堆栈的第二段将被搁置,直到授权点完成。建立双堆栈的第二支时,DHCP 客户端将继承第一支中所有常用用户数据库值,例如电路 ID、远程 ID、用户名和接口名称。

图 4 中,为双堆栈用户建立了单用户会话。

图 4:DHCP 双堆栈单会话用户部署模型 Network diagram showing interaction: CPE connects to dynamic VLAN and local DHCP server. BNG links to VLAN. RADIUS interacts with DHCP. Diagram illustrates DHCP request flow and roles of VLANs and RADIUS.

您可以为 DHCP 中继代理和 DHCP 本地服务器配置单会话双堆栈用户设置。您可以使用该 dual-stack-group 语句创建一个命名组,用于指定双堆栈订阅者的值。然后,使用 dual-stack 该语句指定双堆栈组的名称,并将该组分配给全局、组或接口级别的用户。

  • 对于 DHCP 中继代理,请分别在层次结构级别和[edit forwarding-options dhcp-relay ... overrides]层次结构级别配置[edit forwarding-options dhcp-relay]以下语句:

  • 对于 DHCP 本地服务器,请分别在层次结构级别和[edit system services dhcp-local-server ... overrides]层次结构级别配置[edit system services dhcp-local-server]以下语句:

您可以为单会话双堆栈模型配置以下常用 DHCP 设置。大多数情况下,这些设置类似于传统双堆栈配置中用于单独 DHCPv4 和 DHCPv6 分支的设置。配置和引用时,双堆栈配置优先于相应家族下配置的相同项目。

  • access-profile— 为双堆栈组提供身份验证和计费参数的访问配置文件,这些参数优先于全局访问配置文件或为 DHCP 中继代理或 DHCP 本地服务器配置的配置文件中配置的参数。

  • authentication— 路由器发送到外部 AAA 服务器的身份验证相关参数(例如密码和用户名)。

    dual-stack authentication 节类似于 v4 和 v6 地址族单独提供的节。当配置语法用于双堆栈的 DHCPv4 分支时 username-include ,该 relay-agent-interface-id 选项等同于 DHCPv4 relay-option-82 circuit-id 语句,该 relay-agent-remote-id 选项等同于 DHCPv4 relay-option-82 remote-id 语句。您不必单独配置这两个 DHCPv4 选项。

  • classification-key— 分类密钥定义用于识别双堆栈家庭的机制。

  • dual-stack-interface-client-limit— 限制每个接口登录的双堆栈用户数。

    注意:

    对于双堆栈用户,请始终使用此语句而不是 interface-client-limit 语句。

  • dynamic-profile— 连接到所有接口、指定的接口组或特定接口的动态配置文件。

  • liveness-detection— 配置活动活跃度检测协议,如果用户未能响应配置的连续活跃度检测请求数量,则该协议将删除绑定并释放资源,即订阅者。

  • on-demand-address-allocation—(DHCP 本地服务器)指定是否为双堆栈订阅者强制采用按需地址分配模式。

    如果此配置不存在,则在双堆栈用户的第一支初始登录时,将预分配双堆栈用户的 IPv4 和 IPv6 家族的所有 IP 地址和前缀。

    如果在双堆栈用户的第一支初始登录时存在此配置,则将执行 RADIUS 身份验证(如果已配置),并且将仅分配此第一个家族的 IP 地址和前缀。除非另一个家族分支随后首次登录,否则不会分配另一个家族的 IP 地址和前缀。

    注意:

    第二个家族的 IP 地址分配由之前在第一次家族登录时执行的 RADIUS 身份验证告知。

    从 Junos OS 18.4R1 版开始,当 authd 通知 DHCP 进程地址池已被删除或被清空时,将检查地址分配方法以确定后续行为。 表 1 描述了行为。

    表 1:地址池被删除或清空时的行为

    地址分配方法

    地址池已清空

    地址池已删除

    按需

    收到 DHCP 续订或重新绑定消息时,池中地址的家族将正常注销。

    地址在池中的家庭将立即注销。

    预分配

    收到 DHCP 续订或重新绑定消息时,两个家族的地址都会正常删除。

    两个家族的地址都会立即删除。

  • protocol-master— 此术语将 IPv4 或 IPv6 家族指定为双堆栈用户的主要家族。在主系列建立有效的客户端绑定之前,辅助系列客户端绑定登录将被拒绝。

    注意:

    如果辅助家族绑定因任何原因注销,则只有辅助家族绑定将被拆除。

    如果主家族绑定因任何原因注销,则主家族和次家族的相应绑定都将被拆除。

  • reauthenticate—(DHCP 本地服务器)配置用户的重新身份验证以启动服务激活/停用和属性修改等更改特征。

  • relay-agent-interface-id—(DHCP 中继代理)在发往 DHCPv6 服务器的 DHCPv6 数据包中包括中继代理接口 ID(选项 18)。您可以配置多个选项来指定电路 ID 值中包含的内容。

    对于双堆栈的 DHCPv4 分支,此语句将 DHCPv4 relay-option-82 circuit-id 包含在发往 DHCPv4 服务器的数据包中。

  • relay-agent-remote-id—(DHCP 中继代理)在发往 DHCPv6 服务器的 DHCPv6 数据包中包括中继代理远程 ID(选项 37)。您可以配置多个选项来指定远程 ID 值中包含的内容。

    对于双堆栈的 DHCPv4 分支,此语句将 DHCPv4 relay-option-82 remote-id 包含在发往 DHCPv4 服务器的数据包中。

  • service-profile— 默认用户服务(或默认 DHCP 客户端管理服务)的动态配置文件,在用户(或客户端)登录时激活。

  • short-cycle protection— 检测并锁定持续时间短的客户端会话以及会话协商反复失败的客户端,以减少在大规模网络中与连接和身份验证处理相关的资源使用量。

配置单会话 DHCP 双堆栈支持

配置单会话双堆栈支持只需两步即可完成。首先创建双堆栈组,用于指定在 DHCP 双堆栈的 DHCPv4 和 DHCPv6 分支之间共享的配置参数。然后,通过覆盖 DHCPv4 和 DHCPv6 用户的默认 DHCP 配置,将双堆栈组连接到 DHCP 用户接口。您必须为双堆栈的两个分支引用双堆栈组。如果仅将组连接到一条腿,则路由器会拒绝另一条腿。您可以为指定的 DHCP 接口组或特定接口全局附加双堆栈组。

要配置单会话双堆栈组支持。

  1. 指定要配置 DHCP 中继代理的位置。
  2. 创建并命名双堆栈组。
  3. 访问配置文件连接到双堆栈组,以覆盖在全局访问配置文件或 DHCP 中继代理访问配置文件中配置的相应身份验证和计费属性。
  4. 为双堆栈组配置身份验证用户名值和密码。

    请参阅 指定认证支持

  5. 指定与双堆栈组关联的动态配置文件。
  6. 指定与双堆栈组关联的服务配置文件。
  7. 为双堆栈组指定 relay-agent-interface-id。

    请参阅在 DHCPv6 数据包中插入 DHCPv6 接口 ID 选项(选项 18)。

    注意:

    对于双堆栈的 DHCPv4 分支,此步骤为 DHCPv4 客户端指定 Option 82 代理电路 ID(子选项 1)。请参阅 使用 DHCP 中继代理 Option 82 信息

  8. 为双堆栈组指定 relay-agent-remote-id。

    请参阅在 DHCPv6 数据包中插入 DHCPv6 远程 ID 选项(选项 37)。

    注意:

    对于双堆栈的 DHCPv4 分支,此步骤为 DHCPv4 客户端指定 Option 82 代理远程 ID(子选项 2)。请参阅 使用 DHCP 中继代理 Option 82 信息

  9. 使用覆盖功能覆盖默认 DHCP 中继行为,并将双堆栈组分配给 DHCPv4 和 DHCPv6 客户端。您必须对双堆栈的每个分支执行单独的步骤。
  10. (可选)验证 DHCPv4 和 DHCPv6 的双堆栈组配置。

验证和管理 DHCP 双堆栈配置

目的

显示与 DHCP 单会话双堆栈配置相关的信息。

行动

  • 要显示双堆栈客户端的 DHCP 中继代理绑定信息:

  • 要显示双堆栈客户端的 DHCPv6 中继代理绑定信息:

  • 要显示为 DHCP 双堆栈客户端分配的 IP4 和 IPv6 地址:

  • 要显示特定会话的 IPv4 和 IPv6 地址:

  • 清除默认路由实例中双堆栈的 DHCPv4 中继绑定和关联的 DHCPv6 绑定。此命令不会影响与双堆栈无关的仅支持 DHCPv6 的堆栈。

    或者,您可以将清除限制为某个地址、VLAN 接口、逻辑系统或路由实例。

  • 清除默认路由实例中双堆栈的所有 DHCPv6 中继绑定和关联的 DHCPv4 绑定。此命令不会影响与双堆栈无关的仅限 DHCPv4 的堆栈。

    或者,您可以将清除限制为某个地址、VLAN 接口、逻辑系统或路由实例。

变更历史表

是否支持某项功能取决于您使用的平台和版本。使用 功能资源管理器 确定您的平台是否支持某个功能。

发布
描述
18.4R1
从 Junos OS 18.4R1 版开始,当 authd 通知 DHCP 进程地址池已被删除或被清空时,将检查地址分配方法以确定后续行为。