Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

使用 DHCPv6 前缀委派的用户 LAN 寻址

使用 DHCPv6 前缀委派概述

您可以使用 DHCPv6 前缀委派来自动将 IPv6 前缀委派给 CPE。通过前缀委派,委派路由器 (BNG) 将 IPv6 前缀委派给请求的路由器 (CPE)。然后,请求路由器使用前缀将全局 IP 地址分配给用户 LAN 上的设备。请求路由器还可以将子网地址分配给 LAN 上的子网。

当委派路由器不掌握有关请求路由器所在网络拓扑的信息时,DHCPv6 前缀委派非常有用。在这种情况下,委派路由器只需请求路由器的身份即可选择委派前缀。

DHCPv6 前缀委派取代了 IPv6 网络中对 NAT 的需求。

图 1 显示了如何在双堆栈网络中使用 DHCPv6 前缀委派。

图 1:使用 DHCPv6 的双堆栈网络中的委托寻址 Delegated Addressing in a Dual-Stack Network Using DHCPv6

DHCPv6 前缀委派的运作方式如下:

  1. 为委托路由器提供要委托给请求路由器的 IPv6 前缀。这些前缀可以来自本地地址分配池或外部 AAA 服务器。

    每个前缀都有一个关联的有效生存期和首选生存期,可以延长该生存期。

  2. 请求路由器向委派路由器请求一个或多个前缀。

  3. 委派路由器选择委派前缀,并使用前缀响应请求路由器。

  4. 然后,请求路由器负责委托的前缀。

    用户网络中的地址分配机制可以通过路由器播发中的 ICMPv6 邻居发现、DHCPv6 或这两种方法的组合来执行。

在 CPE 环路接口上使用委托前缀

对于服务提供商直接控制 CPE 的网络,可以使用委托前缀在 CPE 和 BNG 之间的环路接口上创建 IPv6 地址。此地址可用于管理 CPE,CPE 在与 BNG 通信时将其用作源地址。

通过 PPPoE 的 DHCPv6 前缀委派

DHCPv6在PPPoE接入网络上运行时,DHCPv6前缀委托流程如下:

  1. CPE 将通过 IPv6CP 协商接收到的接口 ID 附加到 IPv6 链路本地前缀 (FE80::/10),从而获取链路本地地址。链路本地地址为 BNG 和 CPE 之间的协议通信提供初始路径

  2. CPE 发送包含IA_PD选项的 DHCPv6 请求消息。

  3. BNG 为 CPE 选择一个前缀,其中包含来自外部 AAA 服务器或本地前缀池的信息。

  4. BNG 向 CPE 发送 Advertise 消息。该消息包含委派前缀、IA_PD选项和IA_PD前缀选项。IA_PD 前缀选项中的前缀长度为 48。该消息还可以包含其他配置信息,如最长租期。

  5. CPE 向 BNG 发送 Request 消息。该消息请求播发的前缀。

  6. BNG 在回复消息中将委派的前缀返回给 CPE。此消息还包含委派前缀、IA_PD选项和IA_PD前缀选项。IA_PD 前缀选项中的前缀长度为 48。该消息还可以包含其他配置信息,如最长租期。

  7. CPE 使用委托前缀为用户网络上的主机设备分配全局 IPv6 地址。它可以使用路由器通告、DHCPv6 或这两种方法的组合来分配用户 LAN 上的地址。

DHCPv6 前缀委派的 IPv6 前缀获取方法

您可以通过以下方式之一设置 BNG,以选择要委派给请求路由器的 IPv6 前缀:

  • 外部源,如使用 DHCPv6 中继代理的 AAA RADIUS 服务器或 DHCP 服务器。

  • 从在 BNG 上配置的本地前缀池中动态分配

    您可以指定用于前缀委派的委托池的名称,这意味着无需使用 AAA 即可获取池名。在此配置中,如果还指定了池匹配顺序,则指定的委托池优先。

使用 AAA RADIUS 服务器获取用于前缀委派的 IPv6 前缀

当 BNG 需要获取 DHCPv6 前缀委派的前缀时,它将使用以下 RADIUS 属性之一中的值:

  • Delegated-IPv6-Prefix—属性 (123) 包含 BNG 可发送到 CPE 的 IPv6 前缀。

  • Jnpr-IPv6-Delegated-Pool-Name- 属性 (VSA 26-161) 包含在 BNG 上配置的地址分配池的名称,BNG 可以从中选择要发送到 CPE 的前缀。

这两个属性都从 RADIUS 服务器发送到 RADIUS 访问-接受消息中的 BNG。

订阅者委派前缀保留

订阅者委派前缀保留支持保留和还原使用 DHCPv6 前缀委派分配的 IPv6 前缀。

在层次结构下 [edit access] 配置地址保留:

即使订阅者注销,订阅者的委派前缀也会保留。注销后,将更新“show network-access address-assignment preserved”命令的输出,并在登录后为订阅者分配相同的委派前缀。

订阅者委派前缀保留支持通过多次登录来保留和还原订阅者的委派前缀。从 JUNOS 设备接收相同的委派前缀可防止 IA-PD 更改,该更改会触发 CPE 后面 LAN 上所有主机的重新协商。要使用此功能,需要执行配置命令。默认情况下,此功能处于禁用状态。要为 DHCPv6 前缀委派启用地址保留,请使用命令 access address-preservation configuration

每个参与的用户都由 Agent-Circuit-ID 标识。Agent-Circuit-ID 在标准上游控制流量中可用。(例如:DHCP 的 Option-82 子选项 1,DHCPv6 的 Option 18)。如果配置了访问地址保留前缀,并且订阅者具有 Agent-Circuit-ID,则将通过多次登录保留订阅者前缀。Agent-Circuit-ID 是用于在订阅者注销时存储订阅者前缀的密钥。当具有相同 Agent-Circuit-ID 的订阅者再次登录时,将检索前缀并将其关联到订阅者。

命令 show network-access address-assignment preserved 支持可选输出 routing-instance <routing-instance-name>

DHCPv6 前缀排除

您可以使用动态主机配置协议 v6 (DHCPv6) 前缀委派来自动将 IPv6 前缀委派给客户端设备 (CPE) 设备。借助前缀委派,委派路由器(宽带网络网关 (BNG) 路由器)将 IPv6 前缀委托给请求的路由器(如 CPE 设备)。然后,请求路由器使用前缀将全局 IP 地址分配给用户 LAN 上的设备。请求路由器还可以将子网地址分配给 LAN 上的子网。当委派路由器不掌握有关请求路由器所在网络拓扑的信息时,DHCPv6 前缀委派非常有用。在这种情况下,委派路由器只需请求路由器的身份即可选择委派前缀。DHCPv6 前缀委派取代了 IPv6 网络中对 NAT 的需求。

图 2 显示了如何在双堆栈网络中使用 DHCPv6 前缀委派。

图 2:使用 DHCPv6 的双堆栈网络中的委托寻址 Delegated Addressing in a Dual-Stack Network Using DHCPv6

DHCPv6 前缀委派的运作方式如下:

  1. 为委托路由器提供要委托给请求路由器的 IPv6 前缀。这些前缀可以来自本地地址分配池或外部 AAA 服务器。

    每个前缀都有一个关联的有效生存期和首选生存期,可以延长该生存期。

  2. 请求路由器向委派路由器请求一个或多个前缀。

  3. 委派路由器选择委派前缀,并使用前缀响应请求路由器。

  4. 然后,请求路由器负责委托的前缀。

    用户网络中的地址分配机制可以使用路由器播发中的 ICMPv6 邻居发现协议 (NDP)、DHCPv6 或这两种方法的组合来执行。

请求路由器不能使用委托路由器分配给它的委托前缀的子前缀到委托路由器和请求路由器之间的链路。由于这种限制,通常有两条路由到 CPE 设备。一个是委托前缀,用于 CPE 设备后面的客户站点,另一个用于请求路由器与委托路由器之间的链路。为了解决这个问题,Junos OS 允许在使用基于 DHCPv6 的前缀委派时从委派前缀集中排除一个特定前缀,如 RFC 6603 中所述。此排除的前缀用作委派路由器和请求路由器之间的链路。此前缀链路适用于每个请求路由器都位于其自己的第 2 层域中的网络。

为了支持前缀排除委派,请求路由器在请求、请求、续订或重新绑定消息中包含选项请求选项 (ORO) 和PD_Exclude选项,以通知委派路由器支持前缀委派。当作为 DHCP 服务器的瞻博网络路由器收到这些消息并在 ORO 中找到排除前缀选项(选项 67)时,它就会决定要排除的前缀。(要排除的前缀长度大于委托的前缀长度。然后,排除的前缀将添加到IA_Prefix选项中。充当中继的 DHCP 服务器将请求的选项转发到服务器,并将服务器分配的排除前缀中继回客户端。

要排除 DHCP 服务器中的前缀长度,请在[edit access address-assignment pool pool-name family dhcpv6 dhcp-attributes]层次结构级别配置exclude-prefix-len语句。前缀的长度范围为 1 到 128。

如果支持 exclude 前缀的 DHCP 服务器希望客户端在重新配置后请求前缀 exclude,则可以在层次结构级别或[edit system services dhcp-local-server dhcpv6 group group-name]层次结构级别配置该support-option-pd-exclude语句[edit system services dhcp-local-server dhcpv6]

配置 DHCPv6 前缀排除选项

要配置 DHCPv6 前缀,请排除:

  1. 配置要从委派前缀集池中排除的前缀长度。此前缀用作委派路由器和请求路由器之间的链路。排除前缀长度大于给定的前缀长度。

    例如,对于 2001:db8::/32 中委派的前缀,将委派池 prefix_delegate_pool的排除前缀配置为 2001:db8:ffff:fffc::/72。

  2. 在重新配置消息中配置PD_Exclude选项支持。如果服务器希望客户端请求在重新配置后排除前缀,则会在重新配置消息的选项请求选项 (ORO) 中添加排除前缀选项。

  3. 在为给定组PD_Exclude重新配置消息中配置选项支持。

配置地址分配池以供 DHCPv6 前缀委派使用

此过程显示如何配置 IPv6 本地地址池以分配 IPv6 前缀以供 DHCPv6 前缀委派使用。

您必须为 DHCPv6 前缀委派、DHCPv6 IA_NA和 NDRA 配置单独的池。

要配置用于前缀委派的池,请执行以下作:

  1. 创建一个池并为其分配一个名称。
  2. 在 family inet6 下,将 IPv6 前缀添加到池。
  3. 配置 IPv6 前缀范围的名称,并通过将前缀长度设置为 64 来定义范围。

指定用于 DHCPv6 前缀委派的委托地址分配池

您可以显式指定 BNG 用于分配 IPv6 前缀以供 DHCPv6 前缀委派使用的地址池。此功能使您能够在不使用 RADIUS 或网络匹配的情况下识别地址池。

注意:

如果瞻博网络 IPv6-Delegated-Pool-Name VSA (26–161) 提供分配委托地址池,则 VSA 指定的值优先于 delegated-address 语句。

注意:

您可以在以下级别指定本地委托地址池:

  • 层次 [edit system services dhcp-local-server dhcpv6 overrides] 结构级别上服务器的全局管理。

  • 用于层次 [edit system services dhcp-local-server dhcpv6 group group-name overrides] 结构级别的指定接口组。

  • 用于层级指定接口 [edit system services dhcp-local-server dhcpv6 group group-name interface interface-name overrides] 组中的特定接口。

以下步骤仅演示如何指定本地服务器全局使用的本地池。

要指定用于前缀委派的池,请执行以下作:

  1. 指定要为 DHCPv6 本地服务器配置替代选项。
  2. 指定委托地址池的名称。