Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

L2TP LNS 内联服务接口

使用内联服务接口配置 L2TP LNS

在开始配置之前,必须先安装 L2TP LNS 功能许可证。否则,提交配置时会显示警告消息。

要配置具有内联服务接口的 L2TP LNS,请执行以下操作:

  1. (可选)配置用户组配置文件,用于定义隧道订户的 PPP 配置。
  2. (可选)为内联服务接口上的订阅者配置 PPP 属性。
  3. 配置内联 IP 重组。
  4. 配置定义每个 LNS 客户端 (LAC) 的 L2TP 参数的 L2TP 访问配置文件。
  5. (可选)配置 AAA 访问配置文件以覆盖在路由实例下配置的访问配置文件。
  6. 配置要动态分配给隧道 PPP 订阅者的地址池。
  7. 配置对等接口以终止隧道和 PPP 服务器端 IPCP 地址。
  8. 在 MPC 上启用内联服务接口。
  9. 配置服务接口。
  10. 为每个内联服务逻辑接口配置选项。
  11. (可选)配置聚合内联服务接口和 1:1 有状态冗余。
  12. 配置 L2TP 隧道组。
  13. (可选)配置动态创建 L2TP 逻辑接口的动态配置文件。
  14. (可选)为动态 LNS 会话配置服务接口池。
  15. (可选)指定 L2TP 重新传输未确认控制消息的次数。
  16. (可选)指定隧道在拆除之前可以保持空闲的时间。
  17. (可选)指定 L2TP 隧道的 L2TP 接收窗口大小。接收窗口大小指定对等方在等待路由器确认之前可以发送的数据包数。
  18. (可选)指定 L2TP 保留有关已终止动态隧道、会话和目标的信息的时间长度。
  19. (可选)配置 L2TP 目标锁定超时。
  20. (可选)配置 L2TP 隧道交换。
  21. (可选)防止为 L2TP 创建新的会话、目标或隧道。

    请参阅 配置 L2TP 排水

  22. (可选)配置是协商 L2TP 故障切换协议,还是使用静默故障切换方法进行重新同步。
  23. (可选)启用 SNMP 统计信息计数器。
  24. (可选)配置用于对配置进行故障排除的跟踪选项。

您还需要为 LNS 会话配置 CoS。有关更多信息,请参阅 为 L2TP LNS 内联服务配置动态 CoS

将 PPP 属性应用于每个内联服务接口的 L2TP LNS 订阅者

您可以配置内联服务 (si) 接口上的 LNS 应用于从 LAC 隧道传输的 PPP 订阅者的 PPP 属性。由于您配置的是每个接口的属性,而不是使用用户组配置文件来配置属性,因此可以更精细地改变订阅者的属性。此配置与用于已终止的 PPPoE 订阅者的配置匹配。

要为动态创建的 si 接口配置 PPP 属性,请执行以下操作:

  1. 在动态配置文件中指定预定义的动态接口和逻辑接口变量。
  2. 为 LNS 上终止的 L2TP 隧道配置 PPP 激活消息之间的间隔。
  3. 配置适用于 LNS 上的隧道 PPP 订户的 PPP 身份验证方法。
  4. 指定一组 AAA 选项,用于对通过 AAA 选项集中指定的订阅者和 AAA 上下文登录的 LNS 上的隧道 PPP 订户进行身份验证和授权。

    选项集在层次结构级别使用[edit access]语句进行aaa-options aaa-options-name配置。

  5. 配置路由器以提示客户端设备 (CPE) 在 LNS 上的隧道 PPP 订阅者的 IPCP 协商期间协商主 DNS 地址和辅助 DNS 地址。
  6. (可选)在 LCP 协商期间和 LCP 激活(回显请求/回显回复)交换中禁用对 PPP 幻数的验证。防止将收到的幻数与内部生成的幻数进行比较,以便不匹配不会导致会话终止。

要为静态创建的 si 接口配置 PPP 属性,请执行以下操作:

  1. 指定逻辑内联服务接口。

  2. 为 LNS 上终止的 L2TP 隧道配置 PPP 激活消息之间的间隔。

  3. 配置在网络断开链路之前目标必须无法接收的激活数据包数。

    注意:

    keepalives up-count 选项通常不用于订阅者管理。

  4. 配置适用于 LNS 上的隧道 PPP 订户的 PPP 身份验证方法。

  5. 配置路由器以提示客户端设备 (CPE) 在 LNS 上的隧道 PPP 订户的 IPCP 协商期间协商主 DNS 地址和辅助 DNS 地址。

最佳实践:

尽管支持从属于 ppp-options和 的所有其他语句(包括从属于 chappap的语句),但它们通常不用于订阅者管理。我们建议您将这些其他语句保留为其默认值。

注意:

您还可以使用用户组配置文件配置 PPP 属性,该配置文件将属性应用于 LAC 客户端上具有该配置文件的所有订阅者。有关详细信息 ,请参阅将 PPP 属性应用于具有用户组配置文件的 L2TP LNS 订阅者 。在 si 接口和用户组配置文件中为 L2TP LNS 订户配置 PPP 属性时,内联服务接口配置优先于用户组配置文件配置。

注意:

在组配置文件和动态配置文件中配置 PPP 选项时,当动态配置文件包含一个或多个可在组配置文件中配置的 PPP 选项时,动态配置文件配置完全优先于组配置文件。完全优先级意味着配置文件之间没有选项合并。仅当动态配置文件不包含组配置文件中可用的任何 PPP 选项时,才会将组配置文件应用于订阅者。

将 PPP 属性应用于具有用户组配置文件的 L2TP LNS 订阅者

您可以配置用户组配置文件,使 LNS 能够将 PPP 属性应用于从 LAC 通过隧道传输的 PPP 订户。用户组配置文件与 L2TP 访问配置文件中的客户端 (LAC) 相关联。因此,给定客户端处理的所有订阅者共享相同的 PPP 属性。

要配置用户组配置文件:

  1. 创建配置文件。
  2. 为 LNS 上终止的 L2TP 隧道配置 PPP 激活消息之间的间隔。
    注意:

    对用户组配置文件中激活间隔的更改仅影响更改后出现的新 L2TP 会话。现有会话不受影响。

  3. 配置适用于 LNS 上的隧道 PPP 订户的 PPP 身份验证方法。
  4. 指定一组 AAA 选项,用于对通过 AAA 选项集中指定的订阅者和 AAA 上下文登录的 LNS 上的隧道 PPP 订户进行身份验证和授权。

    选项集在层次结构级别使用[edit access]语句进行aaa-options aaa-options-name配置。

  5. 配置路由器以提示客户端设备 (CPE) 在 LNS 上的隧道 PPP 订户的 IPCP 协商期间协商主 DNS 地址和辅助 DNS 地址。
  6. (可选)禁止数据包转发引擎对 LCP 激活(回显请求/回显回复)交换中从远程对等方接收的 PPP 幻数执行验证检查。这可以防止 PPP 在号码与 LCP 协商期间商定的值不匹配时终止会话。当远程 PPP 对等方在激活数据包中包含任意幻数时,此功能非常有用。当远程对等方幻数是预期的协商号码时,配置此语句不会影响 LCP 幻数协商或激活交换。
  7. 配置 PPP 订阅者会话在被视为超时之前可以空闲多长时间。
注意:

您还可以基于每个接口配置 PPP 属性。有关详细信息 ,请参阅将 PPP 属性应用于每个内联服务接口的 L2TP LNS 订阅者 。在 si 接口和用户组配置文件中为 L2TP LNS 订户配置 PPP 属性时,内联服务接口配置优先于用户组配置文件配置。

注意:

在组配置文件和动态配置文件中配置 PPP 选项时,当动态配置文件包含一个或多个可在组配置文件中配置的 PPP 选项时,动态配置文件配置完全优先于组配置文件。完全优先级意味着配置文件之间没有选项合并。仅当动态配置文件不包含组配置文件中可用的任何 PPP 选项时,才会将组配置文件应用于订阅者。

在 LNS 上配置 L2TP 访问配置文件

访问配置文件定义如何验证第 2 层隧道协议 (L2TP) 连接和会话请求。在每个 L2TP 访问配置文件中,您可以配置一个或多个客户端 (LAC)。客户端特征用于使用匹配密码对 LAC 进行身份验证,以及建立客户端隧道和会话的属性。您可以在每个配置文件中配置多个访问配置文件和多个客户端。

要配置 L2TP 访问配置文件:

  1. 创建访问配置文件。
  2. 为一个或多个客户端 (LAC) 配置特征。
    注意:

    除客户端的特殊 default 情况外,您在访问配置文件中配置的 LAC 客户端名称必须与 LAC 的主机名匹配。如果瞻博网络路由器充当 LAC,主机名在 LAC 隧道配置文件中使用层次结构级别的 [edit access tunnel-profile profile-name tunnel tunnel-id source-gateway] 网关网关名称语句进行配置。或者,可以从属性 Tunnel-Client-Auth-Id [90] 中的 RADIUS 返回客户端名称。

    注意:

    default如果要定义缺省隧道客户机,请使用客户机名称。默认客户端支持对具有相同密钥和 L2TP 属性的多个 LAC 进行身份验证。例如,当许多新的 LAC 添加到网络时,此行为非常有用,因为它使 LAC 无需其他 LNS 配置文件配置即可使用。

    仅在 MX 系列路由器上使用 default 。M 系列路由器上的等效客户端名称为 *

  3. (可选)指定覆盖全局访问配置文件和隧道组 AAA 访问配置文件的本地访问配置文件,以便为客户端配置 RADIUS 服务器设置。
  4. 配置 LNS 以与 PPP 客户端重新协商链路控制协议 (LCP)。 从客户端隧道传输。
  5. 配置一个或多个动态服务配置文件以将服务应用于 LAC 上的所有订阅者。您可以选择在同一语句中将参数传递给服务。
  6. 配置隧道中允许来自客户端 (LAC) 的最大会话数。
  7. 将 LNS 配置为在 L2TP 会话数达到配置的最大值时,在发送到 LAC 的 CDN 消息中使用结果代码 2 覆盖结果代码 4 和 5。某些第三方 LAC 无法故障转移到另一个 LNS,除非结果代码的值为 2。
  8. 配置用于验证客户端 (LAC) 的隧道密码。
  9. (可选)关联包含 PPP 属性的组配置文件,以应用于从此 LAC 客户端通过隧道传输的 PPP 会话。
    注意:

    如果修改或删除了,则 user-group-profile 使用此第 2 层隧道协议客户端配置的现有 LNS 订阅者将关闭。

在 LNS 上配置 AAA 本地访问配置文件

对于某些 LNS 隧道,您可能希望覆盖在托管具有特定 RADIUS 服务器配置的隧道的路由实例上配置的访问配置文件。您可以配置本地访问配置文件来执行此操作。随后,您可以使用该 aaa-access-profile 语句将本地访问概要文件应用于隧道组或 LAC 客户端。

应用于客户端的本地访问配置文件会覆盖应用于隧道组的本地访问配置文件,而隧道组又会覆盖路由实例的访问配置文件。

要配置 AAA 本地访问配置文件,请执行以下操作:

  1. 创建访问配置文件。
  2. 配置 AAA 身份验证方法的顺序。
  3. 配置 RADIUS 服务器属性,例如身份验证密码。

为具有内联服务的 L2TP LNS 配置地址分配池

您可以配置可动态分配给隧道 PPP 订阅者的地址池。池必须是订阅服务器启动的路由实例的本地池。配置的池在 RADIUS 帧池和帧 IPv6 池属性中提供。当帧 IP 地址由 RADIUS 发送时,池是可选的。

若要配置地址分配池,必须指定池的名称并配置池的地址。

可以选择在地址分配池中配置地址的多个命名范围或地址子集。在动态地址分配期间,可以为客户端分配特定命名区域中的地址。若要创建命名区域,请指定区域的名称并定义地址范围。

注意:

请确保使用地址分配池 (address-assignment) 语句,而不是地址池 (address-pool) 语句。

有关地址分配池的详细信息,请参阅地址分配池概述和地址分配池配置概述

要为 L2TP LNS 配置 IPv4 地址分配池,请执行以下操作:

  1. 配置池的名称并指定 IPv4 系列。
  2. 配置池中地址的网络地址和前缀长度。
  3. 配置范围的名称以及范围中地址的下限和上限。

例如,要配置 IPv4 地址分配池,请执行以下操作:

要为 L2TP LNS 配置 IPv6 地址分配池,请执行以下操作:

  1. 配置池的名称并指定 IPv6 系列。

  2. 为地址池配置 IPv6 网络前缀。配置 IPv6 地址分配池时,需要前缀规范。

  3. 配置范围的名称并定义范围。您可以根据范围中前缀的下限和上限来定义范围,也可以根据范围中前缀的长度来定义范围。

例如,要配置 IPv6 地址分配池,请执行以下操作:

配置 L2TP LNS 对等接口

对等接口将 LNS 连接到朝向 LAC 的云,以便可以在隧道端点之间交换 IP 数据包。MPLS 和聚合以太网也可用于访问 LAC。

注意:

在 MX 系列路由器上,您必须在 MPC 上配置对等接口。

要配置 LNS 对等接口,请执行以下操作:

  1. 指定接口名称。
  2. 启用 VLAN。
  3. 指定逻辑接口,将 VLAN 标记 ID 绑定到接口,并配置逻辑接口的地址族和 IP 地址。
    注意:

    不支持将 IPv6 地址族作为隧道端点。

启用内联服务接口

内联服务接口是驻留在数据包转发引擎上的虚拟物理接口。此 si 接口称为 接口,无需特殊服务 PIC 即可提供 L2TP 服务。内联服务接口仅受 MX 系列路由器上的 MPC 支持。每个 MPC 占用的机箱插槽可配置四个内联服务接口。

注意:

在 MX80 和 MX104 路由器上,您只能将四个内联服务物理接口配置为 L2TP LNS 会话的锚接口:si-1/0/0、si-1/1/0、si-1/2/0 和 si-1/3/0。您无法在 MX80 和 MX104 路由器上为此目的配置 si-0/0/0。

尽管带宽值的范围为 1 Gbps 到 400 Gbps,但不能按绝对数字(如 12,345,878,000 bps)配置带宽。您必须使用 CLI 语句中提供的选项:

  • 1g

  • 10g100g 10 Gbps 为增量10g:、 、 、 20g30g40g50g60g70g80g90g100g

  • 100g400g 100 Gbps 为增量100g:、 、 、 200g300g400g

可用的最大带宽因 MPC 而异,如 表 1 所示。配置的带宽高于 MPC 支持的带宽时,将生成系统日志消息。

表 1:每个 MPC 内联服务的最大带宽

Mpc

支持的最大带宽

MPC2E NG, MPC2E NG Q,

80 Gbps

MPC3E NG, MPC3E NG Q

130 Gbps

100GE 和 40GE MPC3 和 MIC

40 Gbps

MPC4E

130 Gbps

MPC5E

130 Gbps

MPC6E

130 Gbps

MPC7E

240 Gbps

MPC8E

240 Gbps

400 Gbps,1.6 Tbps 升级模式

MPC9E

400 Gbps

要启用内联服务接口,请执行以下操作:

  1. 访问 MPC 占用的插槽和要启用接口的 PIC。
  2. 启用该接口,并选择性地指定每个数据包转发引擎上为使用内联服务的隧道流量保留的带宽量。从 Junos OS 16.2 版开始,您无需使用内联服务为 L2TP LNS 隧道流量显式指定带宽。如果未指定带宽,PIC 上支持的最大带宽将自动可用于内联服务;内联服务最多可以使用此最大值。在早期版本中,使用 inline-services 语句启用内联服务时必须指定带宽。

为 L2TP LNS 配置内联服务接口

内联服务接口是驻留在数据包转发引擎上的虚拟物理服务接口。此 si 接口称为 接口,无需特殊服务 PIC 即可提供 L2TP 服务。内联服务接口仅受 MX 系列路由器上的 MPC 支持。每个 MPC 占用的机箱插槽可配置四个内联服务接口。

通过将最大层次结构级别数设置为 2,可以最大程度地增加可在一个服务接口中形成的会话数。在这种情况下,每个 LNS 会话都会使用调度程序层次结构中的一个 L3 节点进行整形。

如果未指定级别数(两个是唯一选项),那么可在服务接口上形成的 LNS 会话数将限制为 L2 节点数或 4096 个会话数。其他会话仍然会出现,但它们没有成形。

要配置内联服务接口,请执行以下操作:

  1. 访问服务接口。
  2. (可选;仅适用于每个会话整形)为分层调度程序启用内联服务接口,并将调度程序级别数限制为两个。
  3. (可选;仅适用于每会话整形)为内联服务接口配置服务封装。
  4. 在预留单元 0 逻辑接口上配置 IPv4 系列。

配置 LNS 内联服务逻辑接口的选项

您必须为为 LNS 配置的每个内联服务逻辑接口指定特征dial-options。MX 系列路由器上的 LNS 仅支持每个逻辑接口一个会话,因此您必须将其配置为接口 dedicated ;不支持该 shared 选项。(M 系列路由器上的 LNS 支持 dedicatedshared 选项。)您还可以为逻辑接口配置与您在访问配置文件中指定的名称匹配的标识名称。

您必须为每个静态逻辑接口指定地址族,inet或者在动态 LNS 接口的动态配置文件中指定地址族。尽管 CLI 接受静态逻辑接口或inetinet6静态逻辑接口,但除非配置地址族inet,否则订阅者无法成功登录。

注意:

有关动态接口配置,请参阅 为动态 LNS 会话配置动态配置文件

要配置静态逻辑接口选项,请执行以下操作:

  1. 访问内联服务逻辑接口。
  2. 指定逻辑接口的标识符。
  3. 将逻辑接口配置为一次仅用于一个会话。
  4. 为每个逻辑接口配置地址族,并在 LNS 上启用从指定接口名称派生的 L2TP 隧道提供本地终止的本地地址。

LNS 1:1 有状态冗余概述

默认情况下,当内联服务 (si) 锚点接口出现故障时(例如,托管该接口的卡出现故障或重新启动时),L2TP 订阅者流量将丢失。当隧道的 PPP 激活计时器随后到期时,控制平面将关闭,PPP 客户端将断开连接。因此,客户端随后必须重新连接。

在这些情况下,您可以通过配置聚合内联服务接口 (asi) 捆绑包来提供 1:1 状态冗余(也称为热备用冗余或主动-备份冗余),从而避免在这些情况下丢失流量。捆绑包由一对 si 物理接口、主(活动)成员链路和辅助(备用或备份)成员链路组成。必须在不同的 MPC 上配置这些接口;如果在同一 MPC 上配置主接口和辅助接口,则无法实现冗余,因为如果卡出现故障,两个成员接口都将关闭。

当订阅者登录并配置 1:1 冗余时,将通过 asi0 物理接口上的底层虚拟逻辑接口 (asi.0x) 建立 L2TP 会话。在底层接口上以 asiXlogical-unit-number 格式创建各个订阅者逻辑接口。如果托管主成员链路接口的 MPC 发生故障或重新启动,会话将保持打开状态。发往此 L2TP 会话的所有数据流量会自动移动到其他 MPC 上的辅助成员链路接口。

在聚合内联服务接口上配置 1:1 LNS 有状态冗余

您可以创建聚合内联服务接口 (asi) 捆绑包,为内联服务 (si) 锚接口提供 1:1 LNS 状态冗余。捆绑包将驻留在不同 MPC 上的两个接口配对为主链路和辅助链路。随后通过虚拟逻辑接口 ASIX.logical-unit-number 建立 LNS 会话。当主锚点接口关闭或使用命令重新启动 request chassis fpc restart 卡时,将发生 LNS 会话故障转移。发生这种情况时,其他 MPC 上的辅助链路将变为活动状态,发往会话的所有 LNS 数据流量将自动移动到辅助接口。订阅者会话在 asiX. 虚拟接口上保持开启状态logical-unit-number 。不会丢失任何流量统计信息。如果未配置此冗余,订阅者流量将丢失,激活过期,PPP 客户端将断开连接,必须重新连接。

在开始之前,您必须执行以下操作:

最佳实践:

请遵循以下准则:

  • 您必须为每个捆绑包进行配置 unit 0 family inet ;否则,会话将无法启动。

  • 主(主动)和辅助(备份)接口必须位于不同的 MPC 上。

  • 对于两个成员链路,在层次结构级别配置的 [edit chassis fpc slot pic number inline-services bandwidth] 带宽必须相同。

  • 配置为聚合内联服务接口捆绑包成员的 si 接口不能配置为另一个捆绑包组的成员。

  • 配置为聚合内联服务接口捆绑包成员的 si 接口也不能用于与聚合服务无关的任何功能;例如,它不能用于内联 IP 重组。

  • 将 si 接口配置为聚合内联服务捆绑包的成员时,无法再独立配置该 si 接口。您只能配置父捆绑包;捆绑包的配置会立即应用于所有成员接口。

要配置 1:1 LNS 有状态冗余,请执行以下操作:

  1. 在一个 MPC 上,指定捆绑包中的主(活动)内联服务成员链路。
  2. 使用主内联服务接口配置此 MPC 上为隧道流量保留的带宽量。
  3. 在不同的 MPC 上,指定捆绑包中的辅助(备份)内联服务成员链路。
    注意:

    如果在同一 MPC 上配置活动和备份成员链路,则配置的后续提交将失败。

  4. 使用辅助内联服务接口,配置此 MPC 上为隧道流量保留的带宽量。
  5. 通过以下任一方法将聚合的内联服务接口捆绑包分配给 L2TP 隧道组:
    • 通过指定聚合内联服务物理接口的名称来分配单个捆绑包。

    • 将一个或多个捆绑包池分配给隧道组。

      注意:

      一个池可以混合;也就是说,它可以包括聚合的内联服务接口捆绑包和单个内联服务接口。单个接口不得是现有捆绑包的成员。

以下示例配置在插槽 1 和插槽 2 中的 MPC 上创建具有成员链路的捆绑包 asi0,然后分配捆绑包为隧道组 tg1 上的 L2TP 会话提供冗余:

验证 LNS 聚合内联服务接口 1:1 冗余

目的

查看有关聚合内联服务接口捆绑包、单个成员链路和冗余状态的信息。

行动

  • 要查看有关聚合内联服务接口捆绑包的摘要信息,请执行以下操作:

  • 要查看有关聚合内联服务接口捆绑包的详细信息,请执行以下操作:

  • 要查看有关聚合内联服务接口捆绑包中单个成员接口的信息,请执行以下操作:

  • 要查看聚合内联服务接口捆绑包的冗余状态:

    该示例输出显示聚合以太网和聚合内联服务接口均配置为冗余。要仅显示其中一个聚合的内联服务接口捆绑包,请执行以下操作:

  • 要查看有关所有已配置冗余接口的详细信息,请执行以下操作:

服务接口的 L2TP 会话限制和负载平衡

LNS 根据接口上当前处于活动状态的会话数,在设备池中的可用服务接口之间对订阅者会话进行负载平衡。您可以配置每个服务接口 (si) 和每个聚合服务接口 (asi) 的最大限制。对于 asi 接口,您无法为捆绑包中的单个 si 成员接口配置限制。

服务接口上的会话限制

为服务接口启动 L2TP 会话请求时,LNS 会根据单个服务接口或聚合服务接口允许的最大会话数检查该接口上的当前活动会话数。LNS 确定当前会话计数(由命令显示 show services l2tp summary )是否小于配置的限制。如果为 true 或未配置任何限制,则检查通过并可以建立会话。如果当前会话计数等于配置的限制,则 LNS 将拒绝会话请求。在活动请求数降至配置的最大值以下之前,无法在该接口上接受任何后续请求。当 si 或 asi 接口的会话请求被拒绝时,LNS 将返回一条 CDN 消息,结果代码设置为 2,错误代码设置为 4。

例如,假设在隧道组中配置了单个服务接口。当前 L2TP 会话计数为 1500,配置的限制为 2000 个会话。请求新会话时,限制检查通过并接受会话请求。

接口

配置的会话限制

当前会话计数

会话限制检查结果

SI-0/0/0

2000

1500

通过

限制检查将继续通过并接受会话请求,直到接受 500 个请求,使当前会话计数为 2000,与配置的最大值匹配。所有后续请求的会话限制检查都将失败,并且所有请求都将被拒绝,直到接口上的当前会话计数降至 2000 以下,以便限制检查可以通过。

接口

配置的会话限制

当前会话计数

会话限制检查结果

SI-0/0/0

2000

2000

失败

当接口的会话限制设置为零时,不能接受任何会话请求。如果这是隧道组中的唯一接口,则组中的所有会话请求都将被拒绝,直到会话限制从零增加或将另一个服务接口添加到隧道组。

当服务设备池中的服务接口达到配置的最大限制或配置的限制为零时,LNS 会在发出会话请求时跳过该接口,并选择池中的另一个接口来检查会话限制。这种情况一直持续到某个接口通过并且会话被接受,或者池中没有其他接口可供选择。

跨服务接口的会话负载平衡

Junos OS 16.2 版中更改了服务设备池中的会话负载分配行为。当一个服务接口的会话计数低于池中的另一个接口,并且两个接口都低于其最大会话限制时,后续会话将分发到会话较少的接口。

在早期版本中,无论会话计数如何,会话都以严格的轮询方式分发。旧行为可能会导致数据包转发引擎重新启动或服务接口关闭并恢复时会话分配不均匀。

例如,请考虑以下方案,对具有两个服务接口的池使用旧的轮循机制分发行为:

  1. 200 个会话均匀分布在两个服务接口上。

    • SI-0/0/0 有 100 个会话。

    • SI-1/0/0 有 100 个会话。

  2. si-1/0/0 接口重新启动。当它回来时,最初会话仅在 si-0/0/0 上启动。

    • SI-0/0/0 有 100 个会话。

    • SI-1/0/0 有 0 个会话。

  3. 当以前在 si-1/0/0 上的会话重新连接时,它们在两个服务接口上平均分布。当所有 100 个会话都备份时,分布明显不平衡。

    • SI-0/0/0 有 150 个会话。

    • SI-1/0/0 有 50 个会话。

  4. 连接 100 个新会话后,si-0/0/0 达到其最大限制。后续会话仅在 si-1/0/0 上接受。

    • SI-0/0/0 有 200 个会话。

    • SI-1/0/0 有 100 个会话。

  5. 再连接 100 个会话后,si-1/0/0 达到其最大限制。在其中一个接口的会话计数降至 200 以下之前,无法接受更多会话。

    • SI-0/0/0 有 200 个会话。

    • SI-1/0/0 有 200 个会话。

现在,使用基于附加会话数的当前负载分配行为来考虑相同的方案。设备池同样具有两个服务接口,每个接口配置的最大限制为 200 个会话:

  1. 200 个会话均匀分布在两个服务接口上。

    • SI-0/0/0 有 100 个会话。

    • SI-1/0/0 有 100 个会话。

  2. si-1/0/0 接口重新启动。当它恢复时,会话最初仅在 si-0/0/0 上启动。

    • SI-0/0/0 有 100 个会话。

    • SI-1/0/0 有 0 个会话。

  3. 当以前在 si-1/0/0 上的会话重新连接时,它们根据每个接口上的会话负载进行分配。由于两个接口都低于其最大限制,并且 si-1/0/0 的会话数少于 si-0/0/0,因此会话最初仅分配给 si-1/0/0。

    1. 1 个新会话后:

      • SI-0/0/0 有 100 个会话。

      • SI-1/0/0 有 1 个会话。

    2. 在 10 个新会话后:

      • SI-0/0/0 有 100 个会话。

      • SI-1/0/0 有 10 个会话。

    3. 在 100 次新会话后:

      • SI-0/0/0 有 100 个会话。

      • SI-1/0/0 有 100 个会话。

  4. 由于两个接口现在具有相同的会话计数,因此下一个会话 (#101) 在两个接口之间随机分布。之后的下一个会话 (#102) 将转到会话计数较低的接口。这使得接口再次相等,因此下一个会话 (#103) 是随机分布的。重复此模式,直到两个接口的最大限制为 200 个会话。

    • SI-0/0/0 有 200 个会话。

    • SI-1/0/0 有 200 个会话。

    在其中一个接口上的会话数降至 200 以下之前,任一接口上都不能再接受会话。

聚合服务接口的负载平衡行为是相同的。将根据 asi 接口的当前会话计数从池中选择 asi 接口。当该计数小于最大值时,LNS 将检查 asi 捆绑包中活动 si 接口的当前会话计数。当该计数小于最大值时,可以在 asi 接口上建立会话。

在同时具有服务接口和聚合服务接口的混合设备池中,会话将分发到会话计数最低的接口 asi 或 si。当任一类型的接口的会话计数达到其限制时,它将无法再接受会话,直到计数降至最大值以下。

您可以使用会话限制配置在特定数据包转发引擎上实现会话限制。假设您希望在具有两个服务接口的 PFE0 上限制为 100 个会话。您可以将每个接口上的最大限制设置为 50,或任何其他组合(加起来为 100)以建立 PFE0 限制。

示例:配置 L2TP LNS

此示例说明如何在 MX 系列路由器上配置 L2TP LNS,以便为网络中的 L2TP LAC 提供隧道端点。此配置包括双堆栈订阅者的动态配置文件。

要求

此 L2TP LNS 示例需要以下硬件和软件:

  • MX 系列 5G 通用路由平台

  • 一个或多个 MPC

  • Junos OS 11.4 或更高版本

在配置此功能之前,不需要除设备初始化之外的特殊配置。

您必须在与 LNS 关联的 AAA 服务器上的属性返回列表中配置某些标准 RADIUS 属性和瞻博网络 VSA,此示例才能正常工作。表 2 列出了属性及其所需的顺序设置和值。我们建议您使用最新的瞻博网络 RADIUS 词典,该词典位于 https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/subscriber-access/index.html 的 Junos OS 订阅者管理页面的下载框中。

表 2:VSA 和标准 RADIUS 属性名称、顺序和所需的值

VSA 名称 [编号]

价值

CoS 参数类型 [26–108]

1

T01 多重播放

CoS 参数类型 [26–108]

2

T02 10米

CoS 参数类型 [26–108]

3

T08 -36

CoS 参数类型 [26–108]

4

T07 信元模式

帧 IPv6 池 [100]

0

jnpr_ipv6_pool

框架泳池 [88]

0

jnpr_pool

出口策略名称 [26-11]

0

分类

入口策略名称 [26-10]

0

分类

虚拟路由器 [26-1]

0

默认

概述

LNS 使用用户组配置文件将 PPP 属性应用于从 LAC 隧道传输的 PPP 订户。网络中的 LAC 是 LNS 的客户端。客户端与 LNS 上配置的 L2TP 访问配置文件中的用户组配置文件相关联。在此示例中,用户组配置文件 ce-l2tp-group-profile 指定以下 PPP 属性:

  • 来自客户端 LAC 的 L2TP 隧道的 PPP 激活消息在 LNS 上终止之间的 30 秒间隔。

  • 一个 200 秒的间隔,用于定义 PPP 订阅者会话在被视为超时之前可以空闲多长时间。

  • PAP 和 CHAP 都作为 PPP 身份验证方法,适用于 LNS 上的隧道 PPP 订户。

L2TP 访问配置文件 ce-l2tp-profile 为每个客户端 LAC 定义一组 L2TP 参数。在此示例中,用户组配置文件 ce-l2tp-group-profile 与客户端 lac1lac2相关联。这两个客户端都配置为让 LNS 与 PPP 客户端重新协商链路控制协议 (LCP),而不是接受 LAC 传递给 LNS 的预先协商的 LCP 参数。LCP 重新协商还会导致 LNS 重新协商身份验证;身份验证方法在用户组配置文件中指定。每个隧道允许的最大会话数设置为 1000 个,设置为 lac1 4000 lac2个。为每个 LAC 配置不同的密码。

通过本地 AAA 访问配置文件 , aaa-profile您可以覆盖全局 AAA 访问配置文件,以便指定身份验证顺序、要用于 L2TP 的 RADIUS 服务器以及服务器的密码。

在此示例中,地址池定义 LNS 分配给隧道 PPP 会话的 IP 地址范围。此示例定义 IPv4 和 IPv6 地址的范围。

位于路由器插槽 5 中的 MPC 上启用了两个内联服务接口。对于每个接口,将为接口的关联 PFE 上的隧道流量保留 10 Gbps 带宽。这些 锚接口 用作底层物理接口。要在各个逻辑内联服务接口上启用 CoS 队列支持,必须在锚点上配置服务封装 (generic-services) 和分层调度支持。为两个锚接口配置 IPv4 地址族。两个锚接口都在服务设备池中 lns_p1 指定。当隧道组包含池时,LNS 可以跨两个锚点接口平衡流量负载。

此示例使用动态配置文件 dyn-lns-profile2 指定在订阅服务器通过隧道连接到 LNS 时动态创建或分配的 L2TP 会话的特征。对于许多特征,设置了一个预定义的变量;当订阅服务器通过隧道连接到 LNS 时,变量将动态替换为适当的值。

隧道 PPP 客户端连接的接口 () 在分配给订阅服务器的路由实例 ($junos-interface-name$junos-routing-instance) 中动态创建。访问路由的路由选项包括路由的下一跃点地址 ()、指标 ($junos-framed-route-nexthop$junos-framed-route-cost) 和首选项 ($junos-framed-route-distance)。对于访问内部路由,设置动态 IP 地址变量 ($junos-subscriber-ip-address)。

逻辑内联服务接口由配置的锚接口名称 ($junos-interface-ifd-name) 和逻辑单元号 ($junos-interface-unit) 定义。配置文件分配 l2tp-encapuslation 为逻辑接口的标识符,并指定每个接口一次只能用于一个会话。

IPv4 地址设置为从 AAA 服务器返回的值。对于 IPv4 流量,接口上会附加输入防火墙过滤器和输出防火墙过滤器$junos-input-filter$junos-output-filter。环路变量 ($junos-loopback-interface) 从路由实例中配置的环路接口 (lo) 派生 IP 地址,并在 IPCP 协商中将其用作 PPP 服务器地址。由于这是双堆栈配置,因此还会使用 IPv6 地址族设置变量提供的$junos-ipv6-address地址。

之所以使用该 $junos-ipv6-address 变量,是因为还配置了路由器通告协议。此变量使 AAA 能够将前缀中的第一个地址分配为接口的本地地址。动态配置文件中路由器通告协议的最低配置指定了 $junos-interface-name 在 IPv6 邻居发现路由器通告中动态分配前缀值的变量 $junos-ipv6-ndra-prefix

动态配置文件还包括应用于隧道流量的服务配置类。流量控制配置文件 (tc-profile) 包括调度程序映射 ()、整形速率 ()、开销记帐 ($junos-cos-shaping-mode$junos-cos-scheduler-map$junos-cos-shaping-rate) 和字节调整$junos-cos-byte-adjust的变量。动态配置文件将 CoS 配置(包括转发类、输出流量控制配置文件和重写规则)应用于动态服务接口。

tg-dynamic隧道组配置指定用于动态创建 LNS 会话和定义会话特征的访问配置文件、本地 AAA 配置文件和动态配置文件aaa-profilece-l2tp-profiledyn-lns-profile2lns_p1服务设备池将服务接口池与组关联,以使 LNS 能够平衡接口之间的流量。本地网关地址203.0.113.2对应于在 LAC 上配置的远程网关地址。本地网关名称ce-lns与 LAC 上配置的远程网关名称相对应。

注意:

此示例未显示所有可能的配置选项。

配置

程序

CLI 快速配置

要快速配置 L2TP LNS,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,然后将命令复制并粘贴到 CLI 中。

分步过程

以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 在配置模式下使用 CLI 编辑器

要配置具有内联服务接口的 L2TP LNS,请执行以下操作:

  1. 配置为隧道订阅者定义 PPP 配置的用户组配置文件。

    [edit access]
    user@host# edit group-profile ce-l2tp-group-profile
    [edit access group-profile ce-l2tp-group-profile]
    user@host# set ppp keepalive 30
    user@host# set ppp idle-timeout 200
    user@host# set ppp ppp-options chap
    user@host# set ppp ppp-options pap
    

  2. 配置 L2TP 访问配置文件,用于定义每个客户端 LAC 的 L2TP 参数。这包括将用户组配置文件与客户端关联,并为表示 LNS 上的 L2TP 会话的内联服务逻辑接口指定标识符。

    注意:

    如果修改或删除了,则 user-group-profile 使用此第 2 层隧道协议客户端配置的现有 LNS 订阅者将关闭。

  3. 配置 AAA 访问配置文件以按照 AAA 身份验证方法和服务器属性的顺序覆盖全局访问配置文件。

  4. 配置 IPv4 和 IPv6 地址分配池,以便为客户端 (LAC) 分配地址。

  5. 配置对等接口以终止隧道和 PPP 服务器端 IPCP 地址(环路地址)。

  6. 在 MPC 上启用内联服务接口。

  7. 使用服务封装、分层调度和地址族配置锚点服务接口。

  8. 为动态 LNS 会话配置服务接口池。

  9. 配置动态配置文件,为双堆栈用户动态创建 L2TP 逻辑接口。

  10. 配置整形、调度和重写规则,并在动态配置文件中应用于隧道流量。

  11. 配置 L2TP 隧道组,以使用内联服务接口池启动动态 LNS 会话,以启用负载平衡。

结果

在配置模式下,输入命令确认 show access 访问配置文件、组配置文件、AAA 配置文件和地址分配池配置。输入命令确认 show chassis 内联服务配置。输入 show interfaces 命令确认接口配置。通过输入 show dynamic-profiles 命令确认动态配置文件配置。输入 show services l2tp 命令确认隧道组配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。

完成设备配置后,从配置模式输入 commit

为具有内联服务接口的 LNS 会话配置 L2TP 隧道组

L2TP 隧道组指定适用于来自一组 LAC 客户端的 L2TP 隧道和会话的属性。这些属性包括用于验证在本地网关地址上向 LNS 发出的 L2TP 连接请求的访问配置文件、覆盖全局访问配置文件的本地访问配置文件、激活计时器以及是否反映 IP ToS 值。

注意:

如果删除隧道组,则该隧道组中的所有 L2TP 会话都将终止。如果更改 、 service-device-poolservice-interface语句的值local-gateway-address,则使用这些设置的所有 L2TP 会话都将终止。如果在层次结构级别更改[edit services l2tp tunnel-group name]或删除其他语句,则您建立的新隧道将使用更新的值,但现有隧道和会话不受影响。

要配置 LNS 隧道组,请执行以下操作:

  1. 创建隧道组。
    注意:

    您最多可以创建 256 个隧道组。

  2. 指定负责在 LNS 上进行 L2TP 处理的服务锚点接口。

    静态 LNS 会话以及不平衡锚点接口池之间的流量的动态 LNS 会话需要此服务锚点接口。接口在层次结构级别配置 [edit interfaces]

  3. (可选;仅用于对动态 LNS 会话进行负载平衡)指定内联服务锚点接口池,以实现跨接口的 L2TP 流量负载均衡。

    池在层次结构级别定义 [edit services service-device-pools]

  4. (仅适用于动态 LNS 会话)指定用于定义和实例化 L2TP 隧道的内联服务接口的动态配置文件的名称

    配置文件在层次结构级别定义 [edit dynamic-profiles]

  5. 指定用于验证对本地网关地址的所有 L2TP 连接请求的访问配置文件。
  6. 在 LNS 上配置本地网关地址;对应于 LAC 用于标识 LNS 的 IP 地址。
  7. (可选)在 LNS 上配置本地网关名称,该名称在 SCCRP 消息中返回给 LAC。该名称必须与 LAC 上配置的远程网关名称匹配,否则无法创建隧道。
  8. (可选)配置 LNS 未从 LAC 收到任何消息时发送呼叫消息的时间间隔。
  9. (可选)指定覆盖全局访问配置文件的本地访问配置文件,以便为隧道组配置 RADIUS 服务器设置。

    此本地配置文件在层次结构级别配置 [edit access profile]

  10. (可选)配置 LNS 以反映从内部 IP 报头到外部 IP 报头的 IP ToS 值(适用于 CoS 配置)。
  11. (可选)指定要在登录时应用于 L2TP 会话的动态服务配置文件,以及要传递给服务的任何参数。

在不使用 RADIUS 的情况下将服务应用于 L2TP 会话

服务应用于 L2TP 会话以进行激活,或者稍后由 RADIUS 服务器或 RADIUS 授权更改 (CoA) 请求中的供应商特定属性 (VSA) 进行修改。从 Junos OS 18.1R1 版开始,您可以通过动态服务配置文件将服务应用到 L2TP 会话,而无需涉及 RADIUS。在多供应商环境中,客户可能仅使用标准 RADIUS 属性,通过避免使用来自多个供应商的 VSA 来简化管理。但是,这会使服务应用于 L2TP 会话变得复杂,因为通常需要 VSA 来应用服务。本地动态服务配置文件激活使您能够避免该问题。您还可以使用本地服务配置文件激活在 RADIUS 服务器关闭时提供默认服务。

您可以将服务应用于隧道组中的所有订阅者,也可以应用于使用特定 LAC 的所有订阅者。您最多可以为每个隧道组或 LAC 主机名配置 12 个服务。

配置一个或多个定义服务的动态服务概要文件后,可以通过指定服务概要文件名称,在隧道组或 LAC 客户端的访问概要文件配置中应用这些概要文件。您可以列出多个要激活的配置文件,用与号 (&) 分隔。您还可以指定服务配置文件要使用的参数,这些参数可能会覆盖配置文件本身中配置的值,例如 CoS 服务的下游整形速率。

本地配置的服务列表(通过服务配置文件)用作 authd 在客户端会话激活期间应用的本地授权。此服务列表与源自外部机构(如 RADIUS)的服务需要经过相同的验证和处理。这些服务在订阅者登录期间显示。

您仍然可以将 RADIUS VSA 或 CoA 请求与服务配置文件一起使用。如果在身份验证或订阅者会话调配(激活)期间,服务来自外部颁发机构作为授权,则来自外部机构的服务严格优先于本地配置中的服务。如果使用 RADIUS 应用的服务与在 CLI 中使用服务配置文件应用的服务相同,但参数不同,则 RADIUS 服务将使用新的会话 ID 应用,并优先于以前的服务配置文件。

您可以发出命令来停用或重新激活之前为隧道组或 LAC 激活的任何服务。

定义以后要应用于隧道组或 LAC 的动态服务配置文件。

要将服务配置文件应用于隧道组中的所有订户,请执行以下操作:

  • 指定一个或多个服务配置文件以及要传递给服务的任何参数。

要将服务配置文件应用于特定 LAC 的所有订阅者,请执行以下操作:

  • 指定一个或多个服务配置文件以及要传递给服务的任何参数。

    注意:

    为 LAC 客户端和使用该客户端的隧道组配置服务配置文件时,仅应用 LAC 客户端服务配置文件。它会覆盖隧道组配置。例如,在以下配置中,隧道组 tg-LAC-3 使用 LAC 客户端 LAC-3,因此 LAC3 配置将覆盖隧道组配置。因此,只会为隧道组中的用户激活 cos-A3 服务,而不是为 Cos2 和 fw1 激活。为服务传递的整形速率为 24 Mbps。

您可以通过发出以下命令来停用应用于订阅者会话的任何服务:

您可以通过发出以下命令来重新激活应用于订阅者会话的任何服务:

要显示所有当前订阅者会话的服务会话,请使用 show subscribers extensiveshow network-access aaa subscribers session-id id-number detail 命令。

为了了解本地服务应用程序的工作原理,以下示例说明了各种配置可能性。首先,考虑以下动态服务配置文件配置(cos2 和 fw1):

以下语句将这两种服务应用于隧道组 tg1 中的所有订阅者;将 31 Mbps 的参数值传递给 CoS2 服务:

在 cos2 服务配置文件中,整形速率由默认值为 10m 或 1Mbps 的用户定义变量提供。L2TP 会话启动后,将激活 cos2 和 fw1,服务会话 ID 分别为 34 和 35。

传递给 cos2 的参数用作$shaping速率的值;因此,服务的整形速率将从默认值 10 Mbps 调整为 31 Mbps,如以下命令输出所示。尽管输出指示调整应用程序为 RADIUS CoA,但调整是传递给服务配置文件的参数的结果。该操作使用与 CoA 相同的内部框架,并按此方式报告。

现在,cos2 服务已从订阅者会话 27 的 CLI 中停用。

以下输出显示 cos2 已消失,只留下 fw1 作为活动服务。

以下命令为订阅者会话 27 重新激活 cos2。

重新激活的 cos2 服务具有新的服务会话 ID 36。

重新激活的 cos2 服务使用服务配置文件中的默认整形速率 10 Mbps。

接下来,接收 RADIUS CoA 请求,其中包括激活服务 VSA (26-65)。VSA 指定并激活服务,并指定将 cos2 的整形速率从默认的 10 Mbps 更改为 12 Mbps。cos2 服务会话 36 仍会出现在输出中,但被 CoA 发起的新服务会话 49 取代。

当 CLI 配置和 RADIUS VSA (26-65) 同时应用服务但参数不同时,RADIUS 配置将覆盖 CLI 配置。在以下示例中,CLI 配置将值为 31 Mbps 的 cos2 服务配置文件应用于整形速率。

RADIUS 访问-接受消息服务激活 VSA (26-65) 应用值为 21 Mbps 的 cos2 作为整形速率。

CLI 配置以 31 Mbps 的整形速率激活服务会话 22。RADIUS VSA 以 21 Mbps 的整形速率激活服务会话 23。

为动态 LNS 会话配置内联服务接口池

您可以创建内联服务接口池(也称为 服务设备池),以实现跨接口的 L2TP 流量负载平衡。动态 LNS 配置支持该池,其中提供一组逻辑接口,可以动态创建这些接口并将其分配给 LNS 上的 L2TP 会话。池将分配给 LNS 隧道组。L2TP 维护每个内联服务接口的状态,并在接受新会话请求时使用轮询方法在可用接口之间均匀分配负载。

注意:

负载平衡仅适用于动态创建的用户接口。

只要存在通往对等 LAC 的其他路径,锚定在 MPC 上的 LNS 会话就不会受到 MIC 故障的影响。如果托管对等接口的 MPC 出现故障,并且没有指向对等 LAC 的路径,则故障将启动 MPC 上所有会话的终止和清理。

如果锚定 LNS 会话的 MPC 本身发生故障,则路由引擎不会将会话重新定位到另一个插槽,并且所有会话将立即终止。当客户端重试时,新会话可能会出现在另一个可用接口上。

要配置服务设备池:

  1. 创建池。
  2. 指定组成池的内联服务接口。

为动态 LNS 会话配置动态配置文件

您可以将 L2TP 配置为动态为 L2TP 隧道分配内联服务接口。您必须定义一个或多个动态配置文件,并为每个隧道组分配一个配置文件。LNS 支持仅 IPv4、仅支持 IPv6 和双堆栈 IPv4/IPv6 会话。

要配置 L2TP 动态配置文件,请执行以下操作:

  1. 创建动态配置文件。
  2. 配置要动态分配给隧道 PPP 客户端使用的路由实例的接口。
  3. 配置路由实例中访问路由的路由选项。
  4. 配置路由实例中访问内部路由的路由选项。
  5. 定义动态配置文件使用的接口。该变量由配置的内联服务接口之一动态替换。
  6. 配置要动态实例化的内联服务逻辑接口。
  7. 指定逻辑接口的标识符。
  8. 将每个逻辑接口配置为一次仅用于一个会话。
  9. 配置逻辑接口的地址族,并在 LNS 上启用从指定接口名称派生的 L2TP 隧道提供本地终止的本地地址。
    注意:

    动态 LNS 会话要求您在 dial-options 动态配置文件中包含语句,而动态配置文件又要求您包含 family inet 该语句。这会产生以下后果:

    • 无论在配置文件中配置的是仅 IPv4、仅 IPv6 还是双堆栈接口,您都必须始终进行配置 family inet

    • 配置仅 IPv4 接口时,请仅 family inet 进行配置,并且必须在 下 family inet配置接口地址。

    • 配置仅 IPv6 接口时,还必须在 下family inet6配置并且配置family inet6接口地址。请勿在 下family inet配置地址。

    • 配置双堆栈 IPv4/IPv6 接口时,您需要在每个系列下配置和接口family inetfamily inet6地址。

    对于仅支持 IPv4 的接口:

    对于仅支持 IPv6 的接口:

    对于双堆栈 IPv4/IPv6 接口:

    注意:

    如果配置了路由器通告协议,则为 IPv6 本地地址配置编号地址而不是未编号地址:

    有关在动态配置文件中使用仅 IPv6 和双堆栈寻址变量的信息,请参阅 宽带订阅者会话用户指南

版本历史记录表
释放
描述
18.1R1
从 Junos OS 18.1R1 版开始,您可以通过动态服务配置文件将服务应用到 L2TP 会话,而无需涉及 RADIUS。
16.2R1
从 Junos OS 16.2 版开始,您无需使用内联服务为 L2TP LNS 隧道流量显式指定带宽。