• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

16-BRAS业务配置指导

目录

11-L2TP配置

本章节下载 11-L2TP配置  (664.25 KB)

11-L2TP配置

  录

1 L2TP

1.1 L2TP简介

1.1.1 L2TP典型组网

1.1.2 L2TP消息类型及封装结构

1.1.3 L2TP隧道和会话

1.1.4 L2TP隧道模式及隧道建立过程

1.1.5 L2TP协议的特点

1.1.6 协议规范

1.2 配置限制和指导

1.3 配置准备

1.4 L2TP配置任务简介

1.4.1 LAC端配置任务简介

1.4.2 LNS端配置任务简介

1.5 配置L2TP基本功能

1.6 配置LAC端

1.6.1 配置向LNS发起隧道建立请求的触发条件

1.6.2 配置LNS的IP地址

1.6.3 配置隧道的源端地址

1.6.4 配置每个L2TP用户单独使用一条L2TP隧道

1.6.5 配置AVP数据的隐藏传输

1.6.6 配置LAC端的AAA认证

1.6.7 配置LAC自动建立L2TP隧道

1.6.8 配置虚拟PPP接口的轮询功能

1.6.9 恢复当前虚拟PPP接口的缺省配置

1.6.10 配置LAC对LNS的锁定时间

1.7 配置LNS端

1.7.1 配置虚拟模板接口

1.7.2 配置LNS接受L2TP隧道建立请求

1.7.3 配置LNS端的用户验证

1.7.4 配置LNS端的AAA认证

1.7.5 配置LNS端每秒能处理ICRQ报文的最大数目

1.7.6 配置LNS端每秒能处理SCCRQ报文的最大数目

1.8 配置L2TP公共参数

1.8.1 配置隧道验证

1.8.2 配置隧道Hello报文发送时间间隔

1.8.3 配置隧道报文的DSCP优先级

1.8.4 配置LTS设备的TSA ID

1.8.5 配置L2TP隧道接收窗口的大小

1.8.6 配置L2TP隧道发送窗口的大小

1.9 配置上线L2TP会话数目的告警阈值

1.10 L2TP显示和维护

1.11 L2TP典型配置举例

1.11.1 NAS-Initiated模式L2TP隧道配置举例

1.11.2 Client-Initiated模式L2TP隧道配置举例

1.11.3 LAC-Auto-Initiated模式L2TP隧道配置举例

1.11.4 L2TP隧道交换配置举例

1.11.5 L2TP负载分担配置举例(RADIUS服务器下发隧道属性方式)

1.12 L2TP常见故障处理

1.12.1 远端系统无法访问企业内部网络

1.12.2 隧道建立成功,但无法传输数据

1.12.3 发送较大L2TP数据时,导致用户下线

 


1 L2TP

1.1  L2TP简介

L2TP(Layer 2 Tunneling Protocol,二层隧道协议)通过在公共网络(如Internet)上建立点到点的L2TP隧道,将PPP(Point-to-Point Protocol,点对点协议)数据帧封装后通过L2TP隧道传输,使得远端用户(如企业驻外机构和出差人员)利用PPP接入公共网络后,能够通过L2TP隧道与企业内部网络通信,访问企业内部网络资源,从而为远端用户接入私有的企业网络提供了一种安全、经济且有效的方式。

1.1.1  L2TP典型组网

图1-1 L2TP典型组网

 

图1-1所示,L2TP的典型组网中包括以下三个部分:

·     远端系统

远端系统是要接入企业内部网络的远端用户和远端分支机构,通常是一个拨号用户的主机或私有网络中的一台设备。

·     LAC(L2TP Access Concentrator,L2TP访问集中器)

LAC是具有PPP和L2TP协议处理能力的设备,通常是一个当地ISP的NAS(Network Access Server,网络接入服务器),主要用于为PPP类型的用户提供接入服务。

LAC作为L2TP隧道的端点,位于LNS和远端系统之间,用于在LNS和远端系统之间传递报文。它把从远端系统收到的报文按照L2TP协议进行封装并送往LNS,同时也将从LNS收到的报文进行解封装并送往远端系统。

·     LNS(L2TP Network Server,L2TP网络服务器)

LNS是具有PPP和L2TP协议处理能力的设备,通常位于企业内部网络的边缘。

LNS作为L2TP隧道的另一侧端点,是LAC通过隧道传输的PPP会话的逻辑终点。L2TP通过在公共网络中建立L2TP隧道,将远端系统的PPP连接由原来的NAS延伸到了企业内部网络的LNS设备。

1.1.2  L2TP消息类型及封装结构

L2TP协议定义了两种消息:

·     控制消息:用于L2TP隧道和L2TP会话的建立、维护和拆除。控制消息的传输是可靠的,并且支持流量控制和拥塞控制。

·     数据消息:用于封装PPP帧,其格式如图1-2所示。数据消息的传输是不可靠的,若数据消息丢失,不予重传。

图1-2 L2TP数据消息格式

 

图1-3所示,L2TP控制消息和L2TP数据消息均封装在UDP报文中。

图1-3 L2TP消息封装结构图

 

1.1.3  L2TP隧道和会话

L2TP隧道是LAC和LNS之间的一条虚拟点到点连接。控制消息和数据消息都在L2TP隧道上传输。在同一对LAC和LNS之间可以建立多条L2TP隧道。每条隧道可以承载一个或多个L2TP会话。

L2TP会话复用在L2TP隧道之上,每个L2TP会话对应于一个PPP会话。当远端系统和LNS之间建立PPP会话时,LAC和LNS之间将建立与其对应的L2TP会话。属于该PPP会话的数据帧通过该L2TP会话所在的L2TP隧道传输。

1.1.4  L2TP隧道模式及隧道建立过程

L2TP隧道包括NAS-Initiated、Client-Initiated和LAC-Auto-Initiated三种模式。

1. NAS-Initiated模式

图1-4所示,NAS-Initiated模式L2TP隧道的建立由LAC(即NAS)发起。远端系统的拨号用户通过PPPoE拨入LAC后,由LAC向LNS发起建立L2TP隧道的请求。

图1-4 NAS-Initiated模式L2TP隧道示意图

 

NAS-Initiated模式L2TP隧道具有如下特点:

·     远端系统只需支持PPP协议,不需要支持L2TP。

·     对远端拨号用户的身份认证与计费既可由LAC代理完成,也可由LNS完成。

图1-5 NAS-Initiated模式L2TP隧道的建立流程

 

图1-5所示,NAS-Initiated模式L2TP隧道的建立过程为:

(1)     远端系统Host A发起呼叫,请求建立连接。

(2)     Host A和LAC(Device A)进行PPP LCP协商。

(3)     LAC对Host A提供的PPP用户信息进行PAP或CHAP认证。

(4)     LAC将认证信息(用户名、密码)发送给RADIUS服务器进行认证。

(5)     RADIUS服务器认证该用户,并返回认证结果。

(6)     如果认证通过,且根据用户名或用户所属ISP域判断该用户为L2TP用户,则LAC向LNS(Device B)发起L2TP隧道建立请求。

(7)     在需要对隧道进行认证的情况下,LAC和LNS分别发送CHAP challenge信息,以验证对方身份。隧道验证通过后,LAC和LNS之间成功建立了L2TP隧道。

(8)     LAC和LNS在L2TP隧道上协商建立L2TP会话。

(9)     LAC将PPP用户信息和PPP协商参数等传送给LNS。

(10)     LNS将认证信息发送给RADIUS服务器进行认证。

(11)     RADIUS服务器认证该用户,并返回认证结果。

(12)     认证通过后,LNS为Host A分配一个企业网内部的IP地址。

(13)     获得IP地址后,PPP用户可以通过Host A访问企业内部资源。

在步骤(12)和(13)中,LAC负责在Host A和LNS之间转发报文。Host A和LAC之间交互的是PPP数据帧,LAC和LNS之间交互的是L2TP数据报文。

2. Client-Initiated模式

图1-6所示,Client-Initiated模式L2TP隧道的建立直接由LAC client(指本地支持L2TP协议的远端系统)发起。LAC client具有公网地址,并能够通过Internet与LNS通信后,如果在LAC client上触发L2TP拨号,则LAC client直接向LNS发起L2TP隧道建立请求,无需经过LAC设备建立隧道。

图1-6 Client-Initiated模式L2TP隧道示意图

 

Client-Initiated模式L2TP隧道具有如下特点:

·     L2TP隧道在远端系统和LNS之间建立,具有较高的安全性。

·     Client-Initiated模式L2TP隧道对远端系统要求较高(远端系统必须是支持L2TP协议的LAC client,且能够与LNS通信),因此它的扩展性较差。

图1-7所示,Client-Initiated模式L2TP隧道的建立过程与NAS-Initiated模式类似,此处不再赘述。

图1-7 Client-Initiated模式L2TP隧道的建立流程

 

3. LAC-Auto-Initiated模式

采用NAS-Initiated方式建立L2TP隧道时,要求远端系统必须通过PPPoE拨号方式拨入LAC,且只有远端系统拨入LAC后,才能触发LAC向LNS发起建立隧道的请求。

图1-8所示,在LAC-Auto-Initiated模式下,不需要远端系统拨号触发,在LAC上通过执行l2tp-auto-client命令即可触发LAC建立L2TP隧道。远端系统访问LNS连接的内部网络时,LAC将通过L2TP隧道转发这些访问数据。

图1-8 LAC-Auto-Initiated模式L2TP隧道示意图

 

LAC-Auto-Initiated模式L2TP隧道具有如下特点:

·     远端系统和LAC之间可以是任何基于IP的连接,不局限于拨号连接。

·     不需要远端系统上的拨号接入来触发建立L2TP隧道。

·     L2TP隧道创建成功后立即建立L2TP会话,然后在LAC和LNS之间进行PPP协商,LAC和LNS分别作为PPP客户端和PPP服务器端。

·     LNS为LAC分配企业网内部的IP地址,而不是为远端系统分配。

图1-9所示,LAC-Auto-Initiated模式L2TP隧道的建立过程与NAS-Initiated模式类似,此处不再赘述。

图1-9 LAC-Auto-Initiated模式L2TP隧道的建立流程

 

1.1.5  L2TP协议的特点

1. 灵活的身份验证机制以及高度的安全性

L2TP协议本身并不提供连接的安全性,但它可依赖于PPP提供的认证(比如CHAP、PAP等),因此具有PPP所具有的所有安全特性。

L2TP还可以与IPsec结合起来实现数据安全,使得通过L2TP所传输的数据更难被攻击。

2. 多协议传输

L2TP传输PPP数据包,在PPP数据包内可以封装多种协议。

3. 支持RADIUS服务器的认证

LAC和LNS可以将用户名和密码发往RADIUS服务器,由RADIUS服务器对用户身份进行认证。

4. 支持内部地址分配

LNS可以对远端系统的地址进行动态的分配和管理,可支持私有地址应用(RFC 1918)。为远端系统分配企业内部的私有地址,可以方便地址的管理并增加安全性。

5. 网络计费的灵活性

可在LAC和LNS两处同时计费,即ISP处(用于产生帐单)及企业网关(用于付费及审计)。L2TP能够提供数据传输的出/入包数、字节数以及连接的起始、结束时间等计费数据,AAA服务器可根据这些数据方便地进行网络计费。

6. 可靠性

L2TP协议支持备份LNS,当主LNS不可达之后,LAC可以与备份LNS建立连接,增加了L2TP服务的可靠性。

7. 支持由RADIUS服务器为LAC下发隧道属性

L2TP隧道采用NAS-Initiated模式时,LAC上的L2TP隧道属性可以通过RADIUS服务器来下发。此时,在LAC上只需开启L2TP服务,并配置采用AAA远程认证方式对PPP用户进行身份验证,无需进行其他L2TP配置。

当L2TP用户拨入LAC时,LAC作为RADIUS客户端将用户的身份信息发送给RADIUS服务器。RADIUS服务器对L2TP用户的身份进行验证。RADIUS服务器将验证结果返回给LAC,并将该用户对应的L2TP隧道属性下发给LAC。LAC根据下发的隧道属性,创建L2TP隧道和会话。

目前,RADIUS服务器可以为LAC下发的属性如表1-1所示。

表1-1 RADIUS服务器为LAC下发的主要属性列表

属性编号

属性名称

描述

64

Tunnel-Type

隧道类型,目前只支持L2TP隧道类型

65

Tunnel-Medium-Type

隧道的传输媒介类型,目前只支持IPv4

66

Tunnel-Client-Endpoint

隧道源IP地址

67

Tunnel-Server-Endpoint

LNS的IP地址

69

Tunnel-Password

隧道验证密钥

81

Tunnel-Private-Group-Id

隧道的Group ID

LAC将该值发送给LNS,以便LNS根据该值进行相应的处理

82

Tunnel-Assignment-Id

隧道的Assignment ID

用来标识会话承载在哪条隧道上,具有相同Tunnel-Assignment-ID、Tunnel-Server_Endpoint和Tunnel-Password的L2TP用户共用同一条L2TP隧道

83

Tunnel-Preference

隧道的优先级

用来标识LNS IP地址的优先级,数值越小,优先级越高

90

Tunnel-Client-Auth-Id

LAC端的隧道名称

用来标识本端隧道

 

仅在通过RADIUS服务器给LAC授权了64号属性(Tunnel-Type),且隧道类型为L2TP的情况下,才支持通过RADIUS服务器授权隧道属性方式建立隧道。

当采用RADIUS服务器授权隧道属性方式建立隧道时:

·     如果RADIUS服务器授权的隧道属性和LAC上通过命令行手工配置的隧道属性相同,则隧道属性的值以RADIUS服务器授权的属性为准。

·     对于RADIUS服务器未授权的隧道属性,则以LAC上通过命令行手工配置的属性为准。

·     如果RADIUS服务器通过83号属性Tunnel-Preference给LNS IP授权了优先级,那么LAC将按优先级从高到低依次向各LNS尝试建立隧道,直到和某个LNS成功建立隧道;对于具有相同优先级的LNS IP,LAC采用负载分担方式建立隧道。

·     RADIUS服务器支持为同一LAC授权多组隧道属性,且每组隧道属性可以不同。例如可以为不同LNS的IP授权不同的隧道密码等隧道属性进行隧道的建立。

8. 支持L2TP隧道交换

图1-10所示,设备可以同时作为LNS和LAC,终结来自LAC的L2TP报文后,再将其通过L2TP隧道发送给最终的LNS,实现L2TP隧道的交换,即多跳L2TP隧道。同时作为LNS和LAC的设备称为LTS(L2TP Tunnel Switch,L2TP隧道交换)设备。

L2TP隧道交换功能具有如下作用:

·     LAC和LNS位于不同的管理域时,可以简化LAC和LNS的配置与部署。所有的LAC都将LTS当作LNS,不需要感知网络中是否存在多个LNS,不需要区分LNS;所有LNS都将LTS当作LAC,不需要感知LAC的新增和删除。

·     不同用户可以共用LAC和LTS之间的L2TP隧道,由LTS将不同用户的数据分发给不同的LNS。

图1-10 L2TP隧道交换组网图

 

1.1.6  协议规范

与L2TP相关的协议规范有:

·     RFC 1661:The Point-to-Point Protocol (PPP)

·     RFC 1918:Address Allocation for Private Internets

·     RFC 2661:Layer Two Tunneling Protocol "L2TP"

·     RFC 2868:RADIUS Attributes for Tunnel Protocol Support

1.2  配置限制和指导

本特性仅在standard工作模式下支持。有关系统工作模式的介绍,请参见“基础配置指导”中的“设备管理”。

目前仅SPEX类单板/CSPEX类单板(除CSPEX-1104-E之外)/CEPC类单板支持配置本特性。

当设备上需要配置L2TP功能时,请确保接口报文统计信息的时间间隔为300秒。关于报文统计信息时间间隔的介绍,请参见“接口管理”中的“以太网接口”。

1.3  配置准备

配置L2TP时,需要执行以下操作:

(1)     根据实际组网环境,判断需要的网络设备。

¡     对于NAS-Initiated和LAC-Auto-Initiated模式,需要配置LAC和LNS两台网络设备。

¡     对于Client-Initiated模式,只需要配置LNS一台网络设备。

(2)     规划好设备在网络中的角色,然后分别进行LAC或LNS端的相关配置,使设备具有LAC或LNS端功能。

1.4  L2TP配置任务简介

1.4.1  LAC端配置任务简介

1. LAC端配置任务简介

LAC端配置任务如下:

(1)     配置L2TP基本功能

(2)     配置LAC端

¡     配置向LNS发起隧道建立请求的触发条件

仅NAS-Initiated模式下为必选,LAC-Auto-Initiated模式下不建议配置。

¡     配置LNS的IP地址

¡     配置隧道的源端地址

¡     (可选)配置每个L2TP用户单独使用一条L2TP隧道

¡     (可选)配置AVP数据的隐藏传输

¡     配置LAC端的AAA认证

仅NAS-Initiated模式下为必选,LAC-Auto-Initiated模式下不建议配置。

¡     配置LAC自动建立L2TP隧道

仅LAC-Auto-Initiated模式下为必选,NAS-Initiated模式下不建议配置。

¡     (可选)配置虚拟PPP接口的轮询功能

¡     (可选)恢复当前虚拟PPP接口的缺省配置

(3)     (可选)配置L2TP公共参数

¡     配置隧道验证

¡     配置隧道Hello报文发送时间间隔

¡     配置隧道报文的DSCP优先级

¡     配置LTS设备的TSA ID

¡     配置L2TP隧道接收窗口的大小

¡     配置L2TP隧道发送窗口的大小

(4)     (可选)配置上线L2TP会话数目的告警阈值

1.4.2  LNS端配置任务简介

LNS端配置任务如下:

(1)     配置L2TP基本功能

(2)     配置LNS端

¡     配置虚拟模板接口

¡     配置LNS接受L2TP隧道建立请求

¡     (可选)配置LNS端的用户验证

¡     (可选)配置LNS端的AAA认证

¡     (可选)配置LNS端每秒能处理ICRQ报文的最大数目

¡     (可选)配置LNS端每秒能处理SCCRQ报文的最大数目

(3)     (可选)配置L2TP公共参数

¡     配置隧道验证

¡     配置隧道Hello报文发送时间间隔

¡     配置隧道报文的DSCP优先级

¡     配置LTS设备的TSA ID

¡     配置L2TP隧道接收窗口的大小

¡     配置L2TP隧道发送窗口的大小

(4)     (可选)配置上线L2TP会话数目的告警阈值

1.5  配置L2TP基本功能

1. 功能简介

L2TP基本功能的配置包括如下内容:

·     启用L2TP功能:只有启用L2TP后,设备上的L2TP功能才能正常发挥作用。

·     创建L2TP组:L2TP组用于配置L2TP的相关参数,它不仅增加了L2TP配置的灵活性,还方便地实现了LAC和LNS之间一对一、一对多的组网应用。L2TP组在LAC和LNS上独立编号,只需要保证LAC和LNS之间关联的L2TP组的相关配置(如隧道对端名称、LNS地址等)保持对应关系即可。

·     配置隧道本端的名称:隧道本端的名称在LAC和LNS进行隧道协商时使用,它用来标识本端隧道,以供对端识别。

2. 配置限制和指导

LAC端设备的隧道建立方式有如下两种:

·     通过l2tp-group group-number mode lac命令创建L2TP组方式和LNS端建立隧道。

·     通过RADIUS服务器直接为LAC端授权隧道属性方式和LNS端建立隧道。

对于NAS-Initiated模式L2TP隧道,上述两种方式都支持;对于LAC-Auto-Initiated模式L2TP隧道,仅支持第一种方式。

对于NAS-Initiated模式,如果同时配置了方式1和方式2,则方式2的优先级高。

·     若RADIUS服务器给用户授权了64号属性(Tunnel-Type),且隧道类型为L2TP,则在建立L2TP隧道:

¡     如果RADIUS服务器授权的隧道属性和LAC上通过命令行手工配置的隧道属性相同,则隧道属性的值以RADIUS服务器授权的属性为准。

¡     对于RADIUS服务器未授权的隧道属性,则以LAC上通过命令行手工配置的属性为准。

·     若RADIUS服务器未给用户授权64号属性,设备将完全依据LAC端上的L2TP配置为用户建立L2TP隧道。

若RADIUS服务器给用户授权64号属性但隧道类型不是L2TP,则不允许触发L2TP流程。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启L2TP功能。

l2tp enable

缺省情况下,L2TP功能处于关闭状态。

(3)     创建L2TP组,指定L2TP组的模式,并进入L2TP组视图。

l2tp-group group-number [ group-name group-name ] mode { lac | lns }

在LAC端需要指定L2TP组的模式为lac;在LNS端需要指定L2TP组的模式为lns

(4)     配置隧道本端的名称。

tunnel name name

缺省情况下,隧道本端的名称为设备的名称。

LAC端配置的隧道本端名称要与LNS端配置的允许接受的L2TP隧道请求的隧道对端名称保持一致。

1.6  配置LAC

1.6.1  配置向LNS发起隧道建立请求的触发条件

1. 功能简介

本配置用来指定LAC向LNS发起隧道建立请求的触发条件。只有PPP用户的信息与指定的触发条件匹配时,LAC才认为该PPP用户为L2TP用户,向LNS发起L2TP隧道建立请求。

触发条件分为如下两种:

·     完整的用户名(fullusername):只有PPP用户的用户名与配置的完整用户名匹配时,才会向LNS发起L2TP隧道建立请求。

·     用户所属域的域名(domain):PPP用户的ISP域名与配置的域名匹配时,即向LNS发起L2TP隧道建立请求。

2. 配置限制和指导

当采用域名作为隧道建立请求的触发条件时,LAC端按如下先后顺序选择域名与配置的域名进行匹配:AAA授权的域名-->PPP链路认证阶段使用的认证域的域名。有关PPP链路认证阶段使用的认证域的选择原则,请参见“BRAS业务命令参考”中的“PPP”。

如果在用户所属的ISP域下配置了l2tp-user radius-force命令,则仅当通过RADIUS服务器给用户授权了64号属性(Tunnel-Type),且隧道类型为L2TP时,LAC才认为该PPP用户为L2TP用户,进行后续的L2TP处理。有关l2tp-user radius-force命令的详细介绍,请参见“BRAS业务命令参考”中的“AAA”。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入LAC模式的L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode lac ]

(3)     配置向LNS发起隧道建立请求的触发条件。

user { domain domain-name | fullusername user-name }

缺省情况下,没有指定本端作为LAC端时向LNS发起隧道建立请求的触发条件。

1.6.2  配置LNS的IP地址

1. 功能简介

LAC上最多可以配置五个LNS地址,并且支持主备模式和负载分担模式两种工作模式。

在主备模式下,当通过lns-ip命令配置了多个LNS地址时,LAC按照配置的先后顺序依次向各LNS尝试建立隧道,直到和某个LNS成功建立隧道。和LAC成功建立隧道的LNS称作主用LNS,其余LNS称作备用LNS,只有当主用LNS故障时,LAC才会选择备用LNS尝试建立隧道。

在负载分担模式下,当通过lns-ip命令配置了多个LNS地址时,LAC按照LNS的权重将L2TP业务分配到对应的LNS上。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入LAC模式的L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode lac ]

(3)     (可选)配置LAC工作在负载分担模式。

tunnel load-sharing

缺省情况下,LAC工作在主备模式。

因性能、可靠性等原因,当单个LNS无法满足大量L2TP业务需求时,可配置LAC端工作在负载分担模式。

(4)     配置LNS的IP地址。

lns-ip { ip-address [ weight lns-weight ] }&<1-5>

缺省情况下,没有指定LNS的IP地址。

仅在LAC工作在负载分担模式的情况下,weight参数配置后才生效。

1.6.3  配置隧道的源端地址

1. 功能简介

在LAC上配置了L2TP隧道的源端地址后,LAC会将该地址作为封装后L2TP隧道报文的源IP地址。

2. 配置限制和指导

建议将L2TP隧道的源端地址配置为设备上某LoopBack接口的IP地址,以减小物理接口故障对L2TP业务造成的影响。但当LAC和LNS之间存在等价路由时,必须将L2TP隧道的源端地址通过source-ip命令配置或通过RADIUS服务器授权为设备上某LoopBack接口的IP地址。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入LAC模式的L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode lac ]

(3)     配置L2TP隧道的源端地址。

source-ip ip-address

缺省情况下,L2TP隧道的源端地址为本端隧道出接口的IP地址。

1.6.4  配置每个L2TP用户单独使用一条L2TP隧道

1. 功能简介

缺省情况下,多个L2TP用户可以复用同一个L2TP隧道。配置本功能后,该L2TP组下每个L2TP用户将独占一条L2TP隧道。

2. 配置限制和指导

仅LAC端支持本配置。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入LAC模式的L2TP组视图。

l2tp-group group-number [ group-name group-name ] mode lac

(3)     配置每个L2TP用户单独使用一条L2TP隧道。

tunnel-per-user

缺省情况下,同一个L2TP隧道可供多个L2TP用户使用。

1.6.5  配置AVP数据的隐藏传输

1. 功能简介

L2TP协议通过AVP(Attribute Value Pair,属性值对)来传输隧道协商参数、会话协商参数和用户认证信息等。如果用户不希望这些信息(如用户密码)被窃取,则可以使用本配置将AVP数据的传输方式配置成为隐藏传输,即利用隧道验证密钥(通过tunnel password命令配置)对AVP数据进行加密传输。

2. 配置限制和指导

只有使能了隧道验证功能,本配置才会生效。隧道验证功能的详细配置,请参见“1.8.1  配置隧道验证”。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入LAC模式的L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode lac ]

(3)     配置隧道采用隐藏方式传输AVP数据。

tunnel avp-hidden

缺省情况下,隧道采用明文方式传输AVP数据。

1.6.6  配置LAC端的AAA认证

本配置用来通过AAA对远端拨入用户的身份信息(用户名、密码)进行认证。用户身份认证通过后,LAC才能发起建立隧道的请求,否则不会为用户建立隧道。

设备支持的AAA认证包括本地和远程两种认证方式:

·     如果选择本地认证方式,则需要在LAC端配置本地用户名和密码。LAC通过检查拨入用户的用户名/密码是否与本地配置的用户名/密码相符来验证用户身份。

·     如果选择远程认证方式,则需要在RADIUS/HWTACACS服务器上配置用户名和密码。LAC将拨入用户的用户名和密码发往服务器,由服务器对用户身份进行认证。

AAA相关的配置请参见“BRAS业务配置指导”中的“AAA”。

配置LAC端的AAA认证时,接入用户的接口上需要配置PPP用户的验证方式为PAP或CHAP,配置方法请参见“BRAS业务配置指导”中的“PPP”。

1.6.7  配置LAC自动建立L2TP隧道

(1)     进入系统视图。

system-view

(2)     创建虚拟PPP接口,并进入虚拟PPP接口视图。

interface virtual-ppp interface-number

(3)     配置虚拟PPP接口的IP地址或IP地址可协商属性。请选择其中一项进行配置。

¡     配置虚拟PPP接口的IP地址。

ip address address mask

缺省情况下,未配置接口的IP地址。

¡     配置虚拟PPP接口的IP地址可协商属性,使该接口接受PPP协商产生的由对端分配的IP地址。

ip address ppp-negotiate

缺省情况下,未配置接口的IP地址可协商属性。

¡     配置虚拟PPP接口借用指定接口的IP地址。

ip address unnumbered interface interface-type interface-number

缺省情况下,未配置接口借用其它接口的IP地址。

本命令的详细介绍,请参见“三层技术-IP业务命令参考”中的“IP地址”。

(4)     配置PPP验证的被验证方。

通过ppp papppp chap命令指定PPP用户支持的验证方法、PPP用户的用户名和密码,LNS对该PPP用户进行身份验证。配置方法请参见“BRAS业务命令参考”中的“PPP”。

(5)     (可选)配置当前接口的描述信息。

description text

缺省情况下,接口的描述信息为“该接口的接口名 Interface”,比如:Virtual-PPP254 Interface。

(6)     (可选)配置接口的期望带宽。

bandwidth bandwidth-value

缺省情况下,接口的期望带宽=接口的波特率÷1000(kbit/s)。

(7)     (可选)打开当前接口。

undo shutdown

缺省情况下,接口处于打开状态。

(8)     触发LAC自动建立L2TP隧道。

l2tp-auto-client l2tp-group group-number

缺省情况下,LAC没有建立L2TP隧道。

触发LAC建立L2TP隧道后,该隧道将始终存在,直到通过undo l2tp-auto-clientreset l2tp tunnel命令拆除该隧道。

1.6.8  配置虚拟PPP接口的轮询功能

1. 功能简介

虚拟PPP接口使用轮询机制来确认链路状态是否正常。

虚拟PPP接口会周期性地向对端发送keepalive报文(可以通过timer-hold命令修改keepalive报文的发送周期)。如果接口在retry个(可以通过timer-hold retry命令修改该个数)keepalive周期内无法收到对端发来的keepalive报文,链路层会认为对端故障,上报链路层Down。

如果将keepalive报文的发送周期配置为0秒,则不发送keepalive报文。

2. 配置限制和指导

在速率非常低的链路上,keepalive周期和retry值不能配置过小。因为在低速链路上,大报文可能会需要很长的时间才能传送完毕,这样就会延迟keepalive报文的发送与接收。而接口如果在retry个keepalive周期之后仍然无法收到对端的keepalive报文,它就会认为链路发生故障。如果keepalive报文被延迟的时间超过接口的这个限制,链路就会被认为发生故障而被关闭。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     创建虚拟PPP接口,并进入虚拟PPP接口视图。

interface virtual-ppp interface-number

(3)     配置接口发送keepalive报文的周期。

timer-hold seconds

缺省情况下,接口发送keepalive报文的周期为10秒。

(4)     配置接口在多少个keepalive周期内没有收到keepalive报文的应答就拆除链路。

timer-hold retry retries

缺省情况下,接口在5个keepalive周期内没有收到keepalive报文的应答就拆除链路。

1.6.9  恢复当前虚拟PPP接口的缺省配置

1. 配置限制和指导

注意

接口下的某些配置恢复到缺省情况后,会对设备上当前运行的业务产生影响。建议您在执行该命令前,完全了解其对网络产生的影响。

 

您可以在执行default命令后通过display this命令确认执行效果。对于未能成功恢复缺省的配置,建议您查阅相关功能的命令手册,手工执行恢复该配置缺省情况的命令。如果操作仍然不能成功,您可以通过设备的提示信息定位原因。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入虚拟PPP接口视图。

interface virtual-ppp interface-number

(3)     恢复当前接口的缺省配置。

default

1.6.10  配置LAC对LNS的锁定时间

1. 配置限制和指导

当LAC和某个LNS尝试建立L2TP隧道时,如果LAC在一定的时间内无法和该LNS成功建立L2TP隧道,则LAC会将该LNS锁定一段时间。在锁定时间内,LAC不会再尝试和该LNS建立L2TP隧道。当LNS锁定时间超时后,LAC在需要时可以继续尝试和该LNS建立L2TP隧道。

本功能配置后仅对被新锁定的LNS生效,对于已锁定的LNS无影响。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置锁定时间为200秒。

l2tp aging seconds

1.7  配置LNS端

1.7.1  配置虚拟模板接口

L2TP会话建立之后,LNS需要创建一个PPP会话用于和LAC交换数据。PPP会话基于VT(Virtual Template,虚拟模板)接口上配置的参数动态创建。因此,配置LNS时需要首先创建VT接口,并配置该接口的参数。

VT接口的参数主要包括:

·     接口的IP地址

·     对PPP用户的验证方式

·     LNS为PPP用户分配的IP地址

关于VT接口配置的详细介绍,请参见“BRAS业务配置指导”中的“PPP”以及“三层技术-IP业务配置指导”中的“IP地址”。

1.7.2  配置LNS接受L2TP隧道建立请求

1. 功能简介

接收到LAC发来的隧道建立请求后,LNS需要检查LAC的隧道本端名称是否与本地配置的隧道对端名称相符合,从而决定是否与对端建立隧道,并确定创建PPP会话时使用的VT接口。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入LNS模式的L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode lns ]

(3)     配置LNS接受来自指定LAC的隧道建立请求,并指定建立隧道时使用的虚拟模板接口。请选择其中一项进行配置。

¡     L2TP组号为1

allow l2tp virtual-template virtual-template-number [ local ip-address | remote remote-name ] [ domain domain-name ]

¡     L2TP组号1

allow l2tp virtual-template virtual-template-number { local ip-address | remote remote-name } [ domain domain-name ]

缺省情况下,LNS不接受任何LAC的隧道建立请求。

1.7.3  配置LNS端的用户验证

1. 功能简介

当LAC对用户进行验证后,为了增强安全性,LNS可以再次对用户进行验证。在这种情况下,将对用户进行两次验证,第一次发生在LAC端,第二次发生在LNS端,只有两次验证全部成功后,L2TP隧道才能建立。

在L2TP组网中,LNS端对用户的验证方式有三种:

·     代理验证:由LAC代替LNS对用户进行验证,并将用户的所有验证信息及LAC端本身配置的验证方式发送给LNS。LNS根据接收到的信息及本端配置的验证方式,判断用户是否合法。

·     强制CHAP验证:强制在LAC代理验证成功后,LNS再次对用户进行CHAP验证。

·     LCP重协商:忽略LAC端的代理验证信息,强制LNS与用户间重新进行LCP(Link Control Protocol,链路控制协议)协商。

验证方式的优先级从高到底依次为:LCP重协商、强制CHAP验证和代理验证。

·     如果在LNS上同时配置LCP重协商和强制CHAP验证,L2TP将使用LCP重协商。

·     如果只配置强制CHAP验证,则在LAC代理验证成功后,LNS再次对用户进行CHAP验证。

·     如果既不配置LCP重协商,也不配置强制CHAP验证,则对用户进行代理验证。

2. 配置限制和指导

强制CHAP验证和LCP重协商两种验证方式仅对NAS-Initiated模式的L2TP隧道有效。

配置强制CHAP验证时,在LNS的VT接口下必须且只能配置PPP用户的验证方式为CHAP认证。

在某些特定的情况下(如LNS不接受LAC的LCP协商参数,希望和用户重新进行参数协商),需要强制LNS与用户重新进行LCP协商,并采用相应的虚拟模板接口上配置的验证方式对用户进行验证时可配置LCP重协商验证方式。

3. 配置强制CHAP验证

(1)     进入系统视图。

system-view

(2)     进入LNS模式的L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode lns ]

(3)     强制LNS重新对用户进行CHAP验证。

mandatory-chap

缺省情况下,LNS不会重新对用户进行CHAP验证。

对于不支持进行第二次验证的用户,不建议配置本功能,否则将因LNS端的CHAP重新验证失败而导致L2TP隧道无法建立。

(4)     退回系统视图。

quit

(5)     进入VT接口并在该接口下配置PPP用户的验证方式为CHAP认证。

关于VT接口配置的详细介绍,请参见“BRAS业务配置指导”中的“PPP”。

4. 配置强制LCP重新协商

(1)     进入系统视图。

system-view

(2)     进入LNS模式的L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode lns ]

(3)     配置强制LNS与用户重新进行LCP协商。

mandatory-lcp

缺省情况下,LNS不会与用户重新进行LCP协商。

启用LCP重协商后,如果相应的虚拟模板接口上没有配置验证,则LNS将不对用户进行二次验证(这时用户只在LAC端接受一次验证)。

1.7.4  配置LNS端的AAA认证

本配置用来通过AAA对远端拨入用户的身份信息(用户名、密码)进行认证。认证通过后,远端系统可以通过LNS访问企业内部网络。

对于NAS-Initiated隧道模式,当LNS端没有配置强制LCP重新协商时,必须在LNS端配置AAA认证;或者当LNS端配置了强制LCP重新协商,并且虚拟模板接口上配置了需要对PPP用户进行验证时,也必须在LNS端配置AAA认证。对于Client-Initiated和LAC-Auto-Initiated隧道模式,当虚拟模板接口上配置了需要对PPP用户进行验证时,必须在LNS端配置AAA认证。其他情况下无需在LNS端配置AAA认证。

LNS端支持的AAA配置与LAC端的相同,具体介绍及配置方法请参见“1.6.6  配置LAC端的AAA认证”。

1.7.5  配置LNS端每秒能处理ICRQ报文的最大数目

1. 配置限制和指导

为避免大量L2TP用户的突发上线请求对设备性能造成影响,同时又确保L2TP用户能够平稳上线,可以通过本节配置限制设备接收处理ICRQ报文的速率。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置LNS端每秒能处理ICRQ报文的最大数目。

l2tp icrq-limit number

缺省情况下,未限制LNS端每秒能处理ICRQ报文的最大数目。

1.7.6  配置LNS端每秒能处理SCCRQ报文的最大数目

1. 配置限制和指导

在多个LAC设备接入同一个LNS设备的组网环境中,多个LAC设备可能会同时发起L2TP隧道建立请求,并且每个隧道中又会发送大量的会话建立请求,此时会造成LNS设备因不能及时处理请求报文导致用户无法正常上线。为了避免上述情况对LNS设备性能造成影响,同时又确保L2TP用户能够平稳上线,可以通过本命令限制设备接收处理SCCRQ报文的速率。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置LNS端每秒能处理SCCRQ报文的最大数目。

l2tp sccrq-limit number

缺省情况下,未限制LNS端每秒能处理SCCRQ报文的最大数目。

1.8  配置L2TP公共参数

1.8.1  配置隧道验证

1. 功能简介

隧道验证请求可由LAC或LNS任何一端发起。

如果LAC和LNS两端都开启了隧道验证功能,则两端密钥(通过tunnel password命令配置)不为空并且完全一致的情况下,二者之间才能成功建立L2TP隧道。

如果LAC和LNS中的一端开启了隧道验证功能,则另一端可不开启隧道验证功能,但需要两端密钥(通过tunnel password命令配置)不为空并且完全一致,二者之间才能成功建立L2TP隧道。

如果LAC和LNS两端都禁用隧道验证功能,则无论两端是否配置密钥、密钥是否相同,都不影响隧道建立。

2. 配置限制和指导

为了保证隧道安全,建议用户不要禁用隧道验证功能。

隧道建立成功后,修改隧道验证的密钥不影响当前隧道的正常通信;当隧道断开后重新建立时使用修改后的密钥进行隧道验证。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode { lac | lns } ]

(3)     开启L2TP的隧道验证功能。

tunnel authentication

缺省情况下,L2TP隧道验证功能处于开启状态。

(4)     配置隧道验证密钥。

tunnel password { cipher | simple } password

缺省情况下,未配置隧道验证密钥。

1.8.2  配置隧道Hello报文发送时间间隔

1. 功能简介

为了检测LAC和LNS之间隧道的连通性,LAC和LNS会定期向对端发送Hello报文,接收方接收到Hello报文后会进行响应。当LAC或LNS在指定时间间隔内未收到对端的Hello响应报文时,重复发送,如果重复发送8次仍没有收到对端的响应信息则认为L2TP隧道已经断开。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode { lac | lns } ]

(3)     配置隧道中Hello报文的发送时间间隔。

tunnel timer hello hello-interval

缺省情况下,隧道中Hello报文的发送时间间隔为60秒。

1.8.3  配置隧道报文的DSCP优先级

1. 功能简介

DSCP(Differentiated Services Code Point,区分服务编码点)携带在IP报文中的ToS字段,用来体现报文自身的优先等级,决定报文传输的优先程度。

通过本配置指定隧道报文的DSCP优先级后,当流量经过L2TP隧道转发时,L2TP将其封装为IP报文并将IP报文头中的DSCP优先级设置为指定的值。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode { lac | lns } ]

(3)     配置隧道报文的DSCP优先级。

ip dscp dscp-value

缺省情况下,L2TP隧道报文的DSCP优先级为0。

1.8.4  配置LTS设备的TSA ID

1. 功能简介

在L2TP隧道交换组网中,LTS通过ICRQ(Incoming Call Request,入呼叫请求)报文中的TSA(Tunnel Switching Aggregator,隧道交换聚合)ID AVP来避免环路。

LTS接收到ICRQ报文后,将报文中携带的所有TSA ID AVP中的TSA ID逐一与本地配置的TSA ID进行比较。如果TSA ID AVP中存在与本地相同的TSA ID,则表示存在环路,LTS立即拆除会话。否则,LTS将自己的TSA ID封装到新的TSA ID AVP中,LTS向它的下一跳LTS发送ICRQ报文时携带接收到的所有TSA ID AVP及本地封装的TSA ID AVP。

2. 配置限制和指导

需要为不同LTS设备配置的不同的TSA ID,否则会导致环路检测错误。

当采用缺省配置时,不同LTS的设备名称不能相同,否则会导致环路检测错误。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置LTS设备的TSA ID。

l2tp tsa-id tsa-id

缺省情况下,未配置LTS设备的TSA ID,使用LTS设备的设备名称作为TSA ID。

1.8.5  配置L2TP隧道接收窗口的大小

1. 功能简介

如果乱序报文过多,可以通过调整L2TP接收窗口的大小进行缓解。当出现乱序报文的时候,如果乱序报文NS(L2TP报文中用于标识当前报文序列号的字段)在接收窗范围内,设备会先将报文缓存起来,等待NS等于接收窗下沿的报文到达。当收到NS等于接收窗下沿的报文时,则对其(NS等于接收窗下沿的报文)进行处理,处理完该报文后,接收窗下沿加1;如果此时缓存中存在NS等于接收窗下沿的报文,则继续处理;如不存在,则继续等待NS等于接收窗下沿的报文到达;依次类推。对于超过接收窗范围的报文进行丢弃。

2. 配置限制和指导

在L2TP隧道建立时,接收窗口大小以L2TP组视图下配置的接收窗口大小为准。隧道建立完成后通过本特性修改L2TP隧道接收窗口的大小对已经建立的隧道接收窗口的大小无影响。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode { lac | lns } ]

(3)     配置L2TP隧道接收窗口的大小。

tunnel window receive size

缺省情况下,L2TP隧道接收窗口的大小为1024。

1.8.6  配置L2TP隧道发送窗口的大小

1. 功能简介

在某些组网中可能出现对端的报文接收处理能力和对端接收窗口的大小不匹配的情况(例如:对端实际的报文接收处理能力为10,但接收窗口的大小为20),此时可以通过本特性调整本端L2TP隧道发送窗口的大小来适配对端的实际报文接收处理能力,以保证L2TP用户平稳上线。

2. 配置限制和指导

在L2TP隧道建立时会获取L2TP组视图下配置的发送窗口大小。如果配置的发送窗口大小为0,则按缺省情况处理;如果配置的发送窗口大小非0,则以配置的发送窗口大小为准。隧道建立完成后通过本配置修改L2TP隧道发送窗口的大小对已经建立的隧道发送窗口的大小无影响。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入L2TP组视图。

l2tp-group group-number [ group-name group-name ] [ mode { lac | lns } ]

(3)     配置L2TP隧道发送窗口的大小。

tunnel window send size

缺省情况下,L2TP隧道发送窗口的大小为0,即本端发送窗口的大小以隧道建立过程中对端携带的接收窗口大小的属性值为准,如果隧道建立过程中对端没有携带接收窗口大小属性,则本端隧道发送窗口的大小为4。

1.9  配置上线L2TP会话数目的告警阈值

1. 功能简介

整机上线L2TP会话数目,是指整个设备上线的L2TP会话数目。(独立运行模式)

整机上线L2TP会话数目,是指整个IRF系统上线的L2TP会话数目。(IRF模式)

可通过本功能分别配置L2TP会话数的上限和下限告警阀值,使得L2TP会话数目大于或小于某个设定值时能够自动触发告警,便于管理员及时了解现网的在线用户情况。管理员可通过display l2tp session statistics命令查看当前在线L2TP会话总数。

假定整机允许上线的L2TP会话的最大数目为a,上限告警阈值为b,下限告警为c,则:

·     当在线L2TP会话数目超过上限a×b或低于下限a×c时,都将输出对应警告信息。

·     当在线L2TP会话数目恢复到正常数值范围后,输出恢复信息。

为避免特殊情况下在线L2TP会话数目在临界区反复变化导致频繁输出告警信息和恢复信息,当在线L2TP会话数目从上限或下限恢复时,系统内部有一个缓冲区,缓冲区大小为在线L2TP会话数目上下限差值的10%,假定为d,d=a×(b-c)÷10,仅当在线L2TP会话数目恢复到小于a×b-d或大于a×c+d时才会输出恢复信息。

例如,假定a为1000,b为80%,c为20%,d=a×(b-c)÷10=1000×(80%-20%)÷10=1000×60%÷10=600÷10=60,则:

·     当在线L2TP会话数目超过上限a×b=1000×80%=800时,输出上限告警信息。当在线L2TP会话数目恢复到小于a×b-d=800-60=740时,输出恢复信息。

·     当在线L2TP会话数目低于下限a×c=1000×20%=200时,输出下限告警信息。当在线L2TP会话数目恢复到大于a×c+d=200+60=260时,输出恢复信息。

2. 配置限制和指导

配置上限告警阈值必须大于下限告警阈值。

3. 配置上线L2TP会话数目的告警阈值

(1)     进入系统视图。

system-view

(2)     配置上线L2TP会话数目的告警阈值。

l2tp session-threshold { lower-limit lower-limit-value | upper-limit upper-limit-value }

缺省情况下,上线L2TP会话数目的上限告警阈值为100,下限告警阈值为0。

1.10  L2TP显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后L2TP的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以强制断开指定的L2TP隧道。

表1-2 L2TP显示和维护

操作

命令

显示虚拟PPP接口的相关信息

display interface [ virtual-ppp [ interface-number ] ] [ brief [ description | down ] ]

显示当前处于锁定状态的LNS信息

display l2tp aging

显示L2TP协议报文的统计信息

display l2tp control-packet statistics [ summary | tunnel [ tunnel-id ] ]

显示LNS端报文限速的配置信息

display l2tp packet-limit configuration

显示LNS端报文限速的统计信息

display l2tp packet-limit statistics

显示当前L2TP会话的信息

display l2tp session [ [ lac | lns ] [ [ local-address local-address | tunnel-id tunnel-id [ session-id session-id ] ] * | remote-address remote-address | username username ] ] [ verbose | statistics ]

显示当前L2TP非稳态会话的信息

display l2tp session temporary

显示当前L2TP隧道的信息

display l2tp tunnel [ [ lac | lns ] [ group-number group-number | group-name group-name | [ local-address local-address | tunnel-id tunnel-id ] * | remote-address remote-address | tunnel-name remote-name ] ] [ verbose | statistics ]

显示L2TP组的信息

display l2tp-group [ group-number | group-name group-name ] [ verbose ]

清除虚拟PPP接口的统计信息

reset counters interface [ virtual-ppp [ interface-number ] ]

清除L2TP协议报文的统计信息

reset l2tp control-packet statistics [ summary | tunnel [ tunnel-id ] ]

清除LNS端报文限速的统计信息

reset l2tp packet-limit statistics

强制断开指定的L2TP隧道

reset l2tp tunnel [ [ local-address local-address | tunnel-id tunnel-id ] * | tunnel-name remote-name ]

解除LNS的锁定状态

reset l2tp aging [ ip-address ]

 

1.11  L2TP典型配置举例

1.11.1  NAS-Initiated模式L2TP隧道配置举例

1. 组网需求

PPP用户通过LAC接入LNS,在LAC和LNS之间建立L2TP隧道,以便用户通过该L2TP隧道访问公司总部。

2. 组网图

图1-11 NAS-Initiated模式L2TP隧道组网图

 

3. 配置步骤

(1)     配置LAC端

# 配置各接口的IP地址(略)。

# 创建本地PPP用户user1,设置密码为pass1。

<LAC> system-view

[LAC] local-user user1 class network

[LAC-luser-network-user1] password simple pass1

[LAC-luser-network-user1] service-type ppp

[LAC-luser-network-user1] quit

# 配置ISP域dm1对PPP用户采用本地AAA方案。

[LAC] domain name dm1

[LAC-isp-dm1] authentication ppp local

[LAC-isp-dm1] accounting ppp local

[LAC-isp-dm1] authorization ppp local

[LAC-isp-dm1] quit

# 配置虚拟模板接口1的参数,采用CHAP认证对端。

[LAC] interface virtual-template 1

[LAC-Virtual-Template1] ppp authentication-mode chap domain dm1

[LAC-Virtual-Template1] quit

# 在接口GigabitEthernet3/1/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。

[LAC] interface gigabitethernet 3/1/1

[LAC-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1

[LAC-GigabitEthernet3/1/1] quit

# 开启L2TP功能。

[LAC] l2tp enable

# 创建LAC模式的L2TP组1,配置隧道本端名称为LAC,指定接入的PPP用户的用户名为user1时LAC向LNS发起隧道建立请求,并指定LNS地址为1.1.2.2。

[LAC] l2tp-group 1 mode lac

[LAC-l2tp1] tunnel name LAC

[LAC-l2tp1] user fullusername user1

[LAC-l2tp1] lns-ip 1.1.2.2

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LAC-l2tp1] tunnel authentication

[LAC-l2tp1] tunnel password simple aabbcc

[LAC-l2tp1] quit

(2)     配置LNS端

# 配置各接口的IP地址。(略)

# 创建本地PPP用户user1,设置密码为pass1。

<LNS> system-view

[LNS] local-user user1 class network

[LNS-luser-network-user1] password simple pass1

[LNS-luser-network-user1] service-type ppp

[LNS-luser-network-user1] quit

# 启用DHCP服务。

[LNS] dhcp enable

# 配置DHCP地址池pool1。

[LNS] dhcp server ip-pool pool1

[LNS-dhcp-pool-pool1] network 192.168.0.0 24 export-route

[LNS-dhcp-pool-pool1] gateway-list 192.168.0.1 export-route

[LNS-dhcp-pool-pool1] dns-list 8.8.8.8

# 将IP地址192.168.0.1配置为禁用地址。

[LNS-dhcp-pool-pool1] forbidden-ip 192.168.0.1

[LNS-dhcp-pool-pool1] quit

# 配置ISP域dm1对PPP用户采用本地AAA方案,并授权地址池。

[LNS] domain name dm1

[LNS-isp-dm1] authentication ppp local

[LNS-isp-dm1] accounting ppp local

[LNS-isp-dm1] authorization ppp local

[LNS-isp-dm1] authorization-attribute ip-pool pool1

[LNS-isp-dm1] quit

# 创建接口Virtual-Template1,PPP认证方式为CHAP。

[LNS] interface virtual-template 1

[LNS-virtual-template1] ppp authentication-mode chap domain dm1

[LNS-virtual-template1] quit

# 开启L2TP功能。

[LNS] l2tp enable

# 创建LNS模式的L2TP组1,配置隧道本端名称为LNS,指定接收呼叫的虚拟模板接口为VT1,并配置隧道对端名称为LAC。

[LNS] l2tp-group 1 mode lns

[LNS-l2tp1] tunnel name LNS

[LNS-l2tp1] allow l2tp virtual-template 1 remote LAC

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LNS-l2tp1] tunnel authentication

[LNS-l2tp1] tunnel password simple aabbcc

[LNS-l2tp1] quit

(3)     配置Remote host端

在Remote host上配置PPPoE拨号连接,在拨号网络窗口中输入用户名user1和密码pass1进行拨号。

4. 验证配置

# 拨号连接成功后,在LNS端通过命令display ppp access-user可查看在线用户的信息。

[LNS] display ppp access-user user-type lns

Interface MAC address        IP address      Username

S/C-VLAN  IPv6 PDPrefix      IPv6 address

BAS0      -                  192.168.0.10    user1

-/-       -                  -

# 拨号连接成功后,Remote host获取到IP地址192.168.0.10,并可以ping通LNS的私网地址192.168.0.1。

# 在LNS端,通过命令display l2tp tunnel可查看建立的L2TP隧道。

[LNS] display l2tp tunnel

LocalTID RemoteTID State         Sessions RemoteAddress    RemotePort RemoteName

196      3542      Established   1        1.1.2.1          1701       LAC

# 在LNS端,通过命令display l2tp session可查看建立的L2TP会话。

[LNS] display l2tp session

LocalSID      RemoteSID      LocalTID      State        Username

2041          64             196           Established  user1

1.11.2  Client-Initiated模式L2TP隧道配置举例

1. 组网需求

PPP用户直接与LNS建立L2TP隧道,通过L2TP隧道访问公司总部。

2. 组网图

图1-12 Client-Initiated模式L2TP隧道组网图

 

3. 配置步骤

(1)     配置LNS端

# 配置接口的IP地址。(略)

# 配置路由,使得LNS与用户端主机之间路由可达。(略)

# 创建本地PPP用户user1,设置密码为pass1。

[LNS] local-user user1 class network

[LNS-luser-network-user1] password simple pass1

[LNS-luser-network-user1] service-type ppp

[LNS-luser-network-user1] quit

# 启用DHCP服务。

[LNS] dhcp enable

# 配置DHCP地址池pool1。

[LNS] dhcp server ip-pool pool1

[LNS-dhcp-pool-pool1] network 192.168.0.0 24 export-route

[LNS-dhcp-pool-pool1] gateway-list 192.168.0.1 export-route

[LNS-dhcp-pool-pool1] dns-list 8.8.8.8

# 将IP地址192.168.0.1配置为禁用地址。

[LNS-dhcp-pool-pool1] forbidden-ip 192.168.0.1

[LNS-dhcp-pool-pool1] quit

# 配置ISP域dm1对PPP用户采用本地AAA方案,并授权地址池。

[LNS] domain name dm1

[LNS-isp-dm1] authentication ppp local

[LNS-isp-dm1] accounting ppp local

[LNS-isp-dm1] authorization ppp local

[LNS-isp-dm1] authorization-attribute ip-pool pool1

[LNS-isp-dm1] quit

# 创建接口Virtual-Template1,PPP认证方式为CHAP。

[LNS] interface virtual-template 1

[LNS-virtual-template1] ppp authentication-mode chap domain dm1

[LNS-virtual-template1] quit

# 开启L2TP功能。

[LNS] l2tp enable

# 创建LNS模式的L2TP组1,配置隧道本端名称为LNS,指定接收呼叫的虚拟模板接口为VT1。

[LNS] l2tp-group 1 mode lns

[LNS-l2tp1] tunnel name LNS

[LNS-l2tp1] allow l2tp virtual-template 1

# 关闭L2TP隧道验证功能。

[LNS-l2tp1] undo tunnel authentication

(2)     配置Remote host端

配置IP地址为2.1.1.1,并配置路由,使得Remote host与LNS(IP地址为1.1.2.2)之间路由可达。

利用Windows系统创建虚拟专用L2TP网络连接,或安装L2TP客户端软件,如WinVPN Client。

在Remote host上进行如下L2TP配置(设置的过程与相应的客户端软件有关,以下为设置的内容):

¡     设置PPP用户名为user1,密码为pass1。

¡     将LNS的IP地址设为安全网关的Internet接口地址(本例中LNS端与隧道相连接的以太网接口的IP地址为1.1.2.2)。

¡     修改连接属性,将采用的协议设置为L2TP,将加密属性设为自定义,并选择CHAP验证。

4. 验证配置

# 在Remote host上触发L2TP拨号。拨号连接成功后,在LNS端通过命令display ppp access-user可查看在线用户的信息。

[LNS] display ppp access-user user-type lns

Interface MAC address        IP address      Username

S/C-VLAN  IPv6 PDPrefix      IPv6 address

BAS0      -                  192.168.0.10    user1

-/-       -                  -

# 拨号连接成功后,Remote host获取到IP地址192.168.0.10,并可以Ping通LNS的私网地址192.168.0.1。

# 在LNS端,通过命令display l2tp session可查看建立的L2TP会话。

[LNS-l2tp1] display l2tp session

LocalSID      RemoteSID      LocalTID      State        Username

89            36245          10878         Established  N/A

# 在LNS端,通过命令display l2tp tunnel可查看建立的L2TP隧道。

[LNS-l2tp1] display l2tp tunnel

LocalTID RemoteTID State         Sessions RemoteAddress    RemotePort RemoteName

10878    21        Established   1        2.1.1.1          1701       PC

1.11.3  LAC-Auto-Initiated模式L2TP隧道配置举例

1. 组网需求

PPP用户接入之前,在LAC和LNS之间采用LAC-Auto-Initiated模式建立L2TP隧道。PPP用户接入后,通过已经建立的L2TP隧道访问公司总部。

2. 组网图

图1-13 LAC-Auto-Initiated模式L2TP隧道组网图

 

3. 配置步骤

(1)     配置LAC端

# 配置各接口的IP地址(略)。

# 开启L2TP功能。

<LAC> system-view

[LAC] l2tp enable

# 创建LAC模式的L2TP组1。

[LAC] l2tp-group 1 mode lac

# 配置LAC端本端名称为LAC,并指定LNS的IP地址为3.3.3.2。

[LAC-l2tp1] tunnel name LAC

[LAC-l2tp1] lns-ip 3.3.3.2

# 开启隧道验证功能,并设置隧道验证密钥为aabbcc。

[LAC-l2tp1] tunnel authentication

[LAC-l2tp1] tunnel password simple aabbcc

[LAC-l2tp1] quit

# 创建虚拟PPP接口Virtual-PPP 1,配置PPP用户的用户名为user1、密码为pass1,并配置PPP验证方式为PAP。

[LAC] interface virtual-ppp 1

[LAC-Virtual-PPP1] ip address ppp-negotiate

[LAC-Virtual-PPP1] ppp pap local-user user1 password simple pass1

[LAC-Virtual-PPP1] quit

# 配置私网路由,访问公司总部的报文将通过L2TP隧道转发。

[LAC] ip route-static 10.1.0.0 16 virtual-ppp 1

# 触发LAC发起L2TP隧道建立请求。

[LAC] interface virtual-ppp 1

[LAC-Virtual-PPP1] l2tp-auto-client l2tp-group 1

(2)     配置LNS端

# 配置各接口的IP地址(略)。

# 创建本地PPP用户user1,配置密码为pass1。

<LNS> system-view

[LNS] local-user user1 class network

[LNS-luser-network-user1] password simple pass1

[LNS-luser-network-user1] service-type ppp

[LNS-luser-network-user1] quit

# 创建接口Virtual-Template1,配置VT口IP地址,PPP认证方式为PAP,并指定为LAC client端分配IP地址为192.168.0.10。

[LNS] interface virtual-template 1

[LNS-virtual-template1] ip address 192.168.0.1 24

[LNS-virtual-template1] ppp authentication-mode pap domain dm1

[LNS-virtual-template1] remote address 192.168.0.10

[LNS-virtual-template1] quit

# 配置ISP域dm1对PPP用户采用本地AAA方案。

[LNS] domain name dm1

[LNS-isp-dm1] authentication ppp local

[LNS-isp-dm1] accounting ppp local

[LNS-isp-dm1] authorization ppp local

[LNS-isp-dm1] quit

# 开启L2TP功能,并创建LNS模式的L2TP组1。

[LNS] l2tp enable

[LNS] l2tp-group 1 mode lns

# 配置LNS端本端名称为LNS,指定接收呼叫的虚拟模板接口为VT1,并配置隧道对端名称为LAC。

[LNS-l2tp1] tunnel name LNS

[LNS-l2tp1] allow l2tp virtual-template 1 remote LAC

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LNS-l2tp1] tunnel authentication

[LNS-l2tp1] tunnel password simple aabbcc

[LNS-l2tp1] quit

# 配置私网路由,下一跳指定为LNS为LAC的Virtual-PPP 1接口分配的私网IP地址192.168.0.10使得访问PPP用户的报文将通过L2TP隧道转发。

[LNS] ip route-static 10.2.0.0 16 192.168.0.10

(3)     配置Remote host端

Remote host上应将LAC设置为网关。

4. 验证配置

# 在LNS端,通过命令display l2tp session可查看建立的L2TP会话。

[LNS] display l2tp session

LocalSID      RemoteSID      LocalTID      State        Username

21409         3395           4501          Established  N/A

# 在LNS端,通过命令display l2tp tunnel可查看建立的L2TP隧道。

[LNS] display l2tp tunnel

LocalTID RemoteTID State         Sessions RemoteAddress    RemotePort RemoteName

4501     524       Established   1        3.3.3.1          1701       LAC

# 在LNS端,可以Ping通LAC的私网地址10.2.0.1,说明10.2.0.0/16和10.1.0.0/16网络内的主机可以通过L2TP隧道通信。

[LNS] ping -a 10.1.0.1 10.2.0.1

Ping 10.2.0.1 (10.2.0.1): 56 data bytes, press CTRL_C to break

56 bytes from 10.2.0.1: icmp_seq=0 ttl=128 time=1.000 ms

56 bytes from 10.2.0.1: icmp_seq=1 ttl=128 time=1.000 ms

56 bytes from 10.2.0.1: icmp_seq=2 ttl=128 time=1.000 ms

56 bytes from 10.2.0.1: icmp_seq=3 ttl=128 time=1.000 ms

56 bytes from 10.2.0.1: icmp_seq=4 ttl=128 time=1.000 ms

 

--- Ping statistics for 10.2.0.1 ---

5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 1.000/1.000/1.000/0.000 ms

1.11.4  L2TP隧道交换配置举例

1. 组网需求

在LAC和LTS、LTS和LNS之间分别建立L2TP隧道,PPP用户通过多跳L2TP隧道访问公司总部。

2. 组网图

图1-14 L2TP隧道交换组网图

 

3. 配置步骤:

(1)     配置LAC端

# 配置各接口的IP地址(略)。

# 创建本地PPP用户user1,设置密码为pass1。

<LAC> system-view

[LAC] local-user user1 class network

[LAC-luser-network-user1] password simple pass1

[LAC-luser-network-user1] service-type ppp

[LAC-luser-network-user1] quit

# 配置ISP域对PPP用户采用本地AAA认证方案。

[LAC] domain name dm1

[LAC-isp-dm1] authentication ppp local

[LAC-isp-dm1] accounting ppp local

[LAC-isp-dm1] authorization ppp local

[LAC-isp-dm1] quit

# 配置虚拟模板接口1的参数,采用CHAP认证对端。

[LAC] interface virtual-template 1

[LAC-Virtual-Template1] ppp authentication-mode chap domain dm1

[LAC-Virtual-Template1] quit

# 在接口GigabitEthernet3/1/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。

[LAC] interface gigabitethernet 3/1/1

[LAC-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1

[LAC-GigabitEthernet3/1/1] quit

# 开启L2TP功能。

[LAC] l2tp enable

# 创建LAC模式的L2TP组2,配置隧道本端名称为LAC,指定接入的PPP用户的用户名为user1时LAC向LNS发起隧道建立请求,并指定LNS地址为3.3.3.2。

[LAC] l2tp-group 1 mode lac

[LAC-l2tp1] tunnel name LAC

[LAC-l2tp1] user fullusername user1

[LAC-l2tp1] lns-ip 3.3.3.2

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LAC-l2tp1] tunnel authentication

[LAC-l2tp1] tunnel password simple aabbcc

[LAC-l2tp1] quit

(2)     配置LTS端

# 配置各接口的IP地址(略)。

# 创建本地PPP用户user1,设置密码为pass1。

<LTS> system-view

[LTS] local-user user1 class network

[LTS-luser-network-user1] password simple pass1

[LTS-luser-network-user1] service-type ppp

[LTS-luser-network-user1] quit

# 配置ISP域dm1对PPP用户采用本地AAA认证方案。

[LTS] domain name dm1

[LTS-isp-dm1] authentication ppp local

[LTS-isp-dm1] accounting ppp local

[LTS-isp-dm1] authorization ppp local

[LTS-isp-dm1] quit

# 配置虚拟模板接口1的参数,采用CHAP认证对端。

[LTS] interface virtual-template 1

[LTS-Virtual-Template1] ppp authentication-mode chap domain dm1

[LTS-Virtual-Template1] quit

# 开启L2TP功能。

[LTS] l2tp enable

# 创建LNS模式的L2TP组1,配置隧道本端名称为LTS,指定接收呼叫的虚拟模板接口为VT1,并配置隧道对端名称为LAC。

[LTS] l2tp-group 1 mode lns

[LTS-l2tp1] tunnel name LTS

[LTS-l2tp1] allow l2tp virtual-template 1 remote LAC

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LTS-l2tp1] tunnel authentication

[LTS-l2tp1] tunnel password simple aabbcc

[LTS-l2tp1] quit

# 创建LAC模式的L2TP组11,配置隧道本端名称为LTS,指定接入的PPP用户的用户名为user1时LAC向LNS发起隧道建立请求,并指定LNS地址为5.5.5.2。

[LTS] l2tp-group 11 mode lac

[LAC-l2tp11] tunnel name LTS

[LTS-l2tp11] user fullusername user1

[LTS-l2tp11] lns-ip 5.5.5.2

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LTS-l2tp11] tunnel authentication

[LTS-l2tp11] tunnel password simple aabbcc

[LTS-l2tp11] quit

(3)     配置LNS端

# 配置各接口的IP地址。(略)

# 创建本地PPP用户user1,设置密码为pass1。

<LNS> system-view

[LNS] local-user user1 class network

[LNS-luser-network-user1] password simple pass1

[LNS-luser-network-user1] service-type ppp

[LNS-luser-network-user1] quit

# 启用DHCP服务。

[LNS] dhcp enable

# 配置DHCP地址池pool1。

[LNS] dhcp server ip-pool pool1

[LNS-dhcp-pool-pool1] network 10.1.0.0 16 export-route

[LNS-dhcp-pool-pool1] gateway-list 10.1.1.1 export-route

[LNS-dhcp-pool-pool1] dns-list 8.8.8.8

# 将IP地址10.1.1.1配置为禁用地址。

[LNS-dhcp-pool-pool1] forbidden-ip 10.1.1.1

[LNS-dhcp-pool-pool1] quit

# 配置ISP域dm1对PPP用户采用本地AAA方案,并授权地址池。

[LNS] domain name dm1

[LNS-isp-dm1] authentication ppp local

[LNS-isp-dm1] accounting ppp local

[LNS-isp-dm1] authorization ppp local

[LNS-isp-dm1] authorization-attribute ip-pool pool1

[LNS-isp-dm1] quit

# 创建接口Virtual-Template1,PPP认证方式为CHAP。

[LNS] interface virtual-template 1

[LNS-virtual-template1] ppp authentication-mode chap domain dm1

[LNS-virtual-template1] quit

# 开启L2TP功能。

[LNS] l2tp enable

# 创建LNS模式的L2TP组1,配置隧道本端名称为LNS,指定接收呼叫的虚拟模板接口为VT1,并配置隧道对端名称为LTS。

[LNS] l2tp-group 1 mode lns

[LNS-l2tp1] tunnel name LNS

[LNS-l2tp1] allow l2tp virtual-template 1 remote LTS

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LNS-l2tp1] tunnel authentication

[LNS-l2tp1] tunnel password simple aabbcc

[LNS-l2tp1] quit

(4)     配置 Remost host端

在Remote host上配置PPPoE拨号连接,在拨号网络窗口中输入用户名user1和密码pass1进行拨号。

4. 验证配置:

·     LNS端

# 拨号连接成功后,在LNS端通过命令display ppp access-user可查看在线用户的信息。

[LNS] display ppp access-user user-type lns

Interface MAC address         IP address      Username

S/C-VLAN  IPv6 PDPrefix       IPv6 address

BAS0      -                   10.1.0.1        user1

-/-       -                   -

# 拨号连接成功后,Remote host获取到IP地址10.1.0.1。

# 在LNS端,通过命令display l2tp tunnel可查看建立的L2TP隧道。

[LNS] display l2tp tunnel

LocalTID RemoteTID State        Sessions RemoteAddress   RemotePort RemoteName

35048    36940     Established  1        5.5.5.1         1701       LTS

# 在LNS端,通过命令display l2tp session可查看建立的L2TP会话。

[LNS] display l2tp session

LocalSID      RemoteSID      LocalTID      State        Username

38563         36103          35048         Established  user1

·     LTS设备

# 在LTS设备上查看建立的L2TP隧道。

[LTS] display l2tp tunnel

LocalTID RemoteTID State        Sessions RemoteAddress   RemotePort RemoteName

11828    53339     Established  1        3.3.3.1         1701       LAC

36940    35048     Established  1        5.5.5.2         1701       LNS

# 在LTS设备上查看建立的L2TP会话。

[LTS] display l2tp session

LocalSID      RemoteSID      LocalTID      State        Username

46605         35207          11828         Established  user1

36103         38563          36940         Established  user1

·     LAC端

# 在LAC端查看建立的L2TP隧道。

[LAC] display l2tp tunnel

LocalTID RemoteTID State        Sessions RemoteAddress   RemotePort RemoteName

53339    11828     Established  1        3.3.3.2         1701       LTS

# 在LAC端查看建立的L2TP会话。

[LAC] display l2tp session

LocalSID      RemoteSID      LocalTID      State        Username

35207         46605          53339         Established  user1

1.11.5  L2TP负载分担配置举例(RADIUS服务器下发隧道属性方式)

1. 组网需求

某公司外地分部门有多台远端设备,需要访问公司总部局域网。通过PPPoE方式接入LAC设备,在LAC和LNS之间建立两条L2TP隧道,以实现如下目的:

·     用户可以通过该L2TP隧道访问公司总部局域网。

·     在多台远端设备同时接入时,考虑到性能、可靠性等原因,配置LAC端工作在负载分担模式,把L2TP业务按权重分配到两个LNS端分别进行处理。

2. 组网图

图1-15 L2TP负载分担组网图

 

3. 配置限制与指导

本次通过RADIUS服务器下发隧道属性方式配置LAC端实现L2TP负载分担,也可以通过命令行方式配置LAC端实现L2TP负载分担。

仅对于使用相同用户名和密码的用户才支持通过RADIUS服务器下发隧道属性的方式实现L2TP负载分担,并且仅支持1:1负载分担。

4. 配置准备

开始配置之前,请按照图1-15配置各接口的IP地址,并确保LAC端和各LNS端、LAC端和RADIUS服务器之间路由可达,具体配置过程略。

5. 配置步骤

(1)     配置RADIUS服务器

说明

下面以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。

 

# 配置RADIUS客户端信息。

在clients.conf文件中增加如下信息:

client 1.1.1.1 {

ipaddr = 1.1.1.1

secret = 123

shortname = H3C

}

以上信息表示:RADIUS客户端的IP地址为1.1.1.1,共享密钥为字符串123。

# 配置合法用户信息。

在users文件中增加如下信息:

user1 Cleartext-Password := "pass1"

       Service-Type = Framed-User,

       Framed-Protocol = PPP,

       h3c-Remanent-Volume = "1",

       Session-timeout =60,

      Tunnel-Server-Endpoint:30 = "20.1.1.2 30.1.1.2",

      Tunnel-Medium-Type:30 = IPv4,

      Tunnel-Client-Auth-Id:30 = "LAC",

      Tunnel-Type:30 = L2TP,

      Tunnel-Password:30 = aabbcc,

以上信息表示:用户名为user1,用户密码为pass1,当L2TP用户拨入LAC时,LAC作为RADIUS客户端将用户的身份信息发送给RADIUS服务器,RADIUS服务器对L2TP用户的身份进行验证。RADIUS服务器将验证结果返回给LAC,并将该用户对应的L2TP隧道属性下发给LAC。LAC根据下发的隧道属性,创建L2TP隧道和会话。具体隧道属性解释见下表1-3

表1-3 RADIUS服务器为LAC下发的主要属性列表

属性编号

属性名称

描述

64

Tunnel-Type

隧道类型,目前只支持L2TP隧道类型

65

Tunnel-Medium-Type

隧道的传输媒介类型,目前只支持IPv4

67

Tunnel-Server-Endpoint

LNS的IP地址,配置多个IP表示进行1:1负载分担

69

Tunnel-Password

隧道验证密钥

90

Tunnel-Client-Auth-Id

LAC端的隧道名称,用来标识本端隧道

 

(2)     配置LAC端

# 配置虚拟模板接口1的参数,采用PAP认证对端。

[LAC] interface virtual-template 1

[LAC-Virtual-Template1] ppp authentication-mode pap domain dm1

[LAC-Virtual-Template1] quit

# 配置ISP域dm1对PPP用户采用RADIUS方案rs1。

[LAC] domain name dm1

[LAC-isp-dm1] authentication ppp radius-scheme rs1

[LAC-isp-dm1] accounting ppp radius-scheme rs1

[LAC-isp-dm1] authorization ppp radius-scheme rs1

[LAC-isp-dm1] quit

# 在接口GigabitEthernet3/1/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。

[LAC] interface gigabitethernet 3/1/1

[LAC-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1

[LAC-GigabitEthernet3/1/1] quit

# 开启L2TP功能。

[LAC] l2tp enable

# 创建名称为rs1的RADIUS方案并进入该方案视图。

[LAC] radius scheme rs1

# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。

[LAC-radius-rs1] primary authentication 1.1.1.2

[LAC-radius-rs1] primary accounting 1.1.1.2

[LAC-radius-rs1] key authentication simple 123

[LAC-radius-rs1] key accounting simple 123

[LAC-radius-rs1] quit

# 配置发送给RADIUS服务器的用户名不携带ISP域名。

[LAC] user-name-format without-domain

(3)     配置LNS1端

# 创建本地PPP用户,用户名为user1,设置密码为pass1。

<LNS1> system-view

[LNS1] local-user user1 class network

[LNS1-luser-network-user1] password simple pass1

[LNS1-luser-network-user1] service-type ppp

[LNS1-luser-network-user1] quit

# 配置ISP域dm1对PPP用户采用本地AAA方案,并授权地址池。

[LNS1] domain name dm1

[LNS1-isp-dm1] authentication ppp local

[LNS1-isp-dm1] accounting ppp local

[LNS1-isp-dm1] authorization ppp local

[LNS1-isp-dm1] authorization-attribute ip-pool pool1

[LNS1-isp-dm1] quit

# 创建接口Virtual-Template1,PPP认证方式为PAP。

[LNS1] interface virtual-template 1

[LNS1-virtual-template1] ppp authentication-mode pap domain dm1

[LNS1-virtual-template1] quit

# 启用DHCP服务。

[LNS1] dhcp enable

# 启用DHCP中继的用户地址表项记录功能。

[LNS1] dhcp relay client-information record

# 创建中继地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网关地址,并指定中继地址池对应的DHCP服务器地址。

[LNS1] dhcp server ip-pool pool1

[LNS1-dhcp-pool-pool1] gateway-list 192.168.1.1 export-route

[LNS1-dhcp-pool-pool1] remote-server 10.2.2.1

[LNS1-dhcp-pool-pool1] quit

# 开启L2TP功能。

[LNS1] l2tp enable

# 创建LNS模式的L2TP组1,配置隧道本端名称为LNS1,指定接收呼叫的虚拟模板接口为VT1,并配置隧道对端名称为LAC。

[LNS1] l2tp-group 1 mode lns

[LNS1-l2tp1] tunnel name LNS1

[LNS1-l2tp1] allow l2tp virtual-template 1 remote LAC

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LNS1-l2tp1] tunnel authentication

[LNS1-l2tp1] tunnel password simple aabbcc

[LNS1-l2tp1] quit

(4)     配置LNS2端

# 创建本地PPP用户,用户名为user1,设置密码为pass1。

<LNS2> system-view

[LNS2] local-user user1 class network

[LNS2-luser-network-user1] password simple pass1

[LNS2-luser-network-user1] service-type ppp

[LNS2-luser-network-user1] quit

# 配置ISP域dm1对PPP用户采用本地AAA方案,并授权地址池。

[LNS2] domain name dm1

[LNS2-isp-dm1] authentication ppp local

[LNS2-isp-dm1] accounting ppp local

[LNS2-isp-dm1] authorization ppp local

[LNS2-isp-dm1] authorization-attribute ip-pool pool2

[LNS2-isp-dm1] quit

# 创建接口Virtual-Template1,PPP认证方式为PAP。

[LNS2] interface virtual-template 1

[LNS2-virtual-template1] ppp authentication-mode pap domain dm1

[LNS2-virtual-template1] quit

# 启用DHCP服务。

[LNS2] dhcp enable

# 启用DHCP中继的用户地址表项记录功能。

[LNS2] dhcp relay client-information record

# 创建中继地址池pool2,指定匹配该地址池的DHCPv4客户端所在的网关地址,并指定中继地址池对应的DHCP服务器地址。

[LNS2] dhcp server ip-pool pool2

[LNS2-dhcp-pool-pool2] gateway-list 192.168.1.129 export-route

[LNS2-dhcp-pool-pool2] remote-server 10.2.2.1

[LNS2-dhcp-pool-pool2] quit

# 开启L2TP功能。

[LNS2] l2tp enable

# 创建LNS模式的L2TP组1,配置隧道本端名称为LNS2,指定接收呼叫的虚拟模板接口为VT1,并配置隧道对端名称为LAC。

[LNS2] l2tp-group 1 mode lns

[LNS2-l2tp1] tunnel name LNS2

[LNS2-l2tp1] allow l2tp virtual-template 1 remote LAC

# 启用隧道验证功能,并设置隧道验证密钥为aabbcc。

[LNS2-l2tp1] tunnel authentication

[LNS2-l2tp1] tunnel password simple aabbcc

[LNS2-l2tp1] quit

(5)     配置DHCP server

# 启用DHCP服务。

<DHCP> system-view

[DHCP] dhcp enable

# 创建DHCP地址池pool1,配置为DHCP客户端分配的IP地址网段和网关地址。

[DHCP] dhcp server ip-pool pool1

[DHCP-dhcp-pool-pool1] network 192.168.1.0 255.255.255.128

[DHCP-dhcp-pool-pool1] gateway-list 192.168.1.1

[DHCP-dhcp-pool-pool1] dns-list 8.8.8.8

# 将IP地址192.168.1.1配置为禁用地址。

[DHCP-dhcp-pool-pool1] forbidden-ip 192.168.1.1

[DHCP-dhcp-pool-pool1] quit

# 创建DHCP地址池pool2,配置为DHCP客户端分配的IP地址网段和网关地址。

[DHCP] dhcp server ip-pool pool2

[DHCP-dhcp-pool-pool2] network 192.168.1.128 255.255.255.128

[DHCP-dhcp-pool-pool2] gateway-list 192.168.1.129

[DHCP-dhcp-pool-pool2] dns-list 8.8.8.8

# 将IP地址192.168.1.1配置为禁用地址。

[DHCP-dhcp-pool-pool2] forbidden-ip 192.168.1.129

[DHCP-dhcp-pool-pool2] quit

# 配置到LAC的静态路由。

[DHCP] ip route-static 192.168.1.0 255.255.255.128 10.2.2.2

[DHCP] ip route-static 192.168.1.128 255.255.255.128 10.2.2.3

(6)     配置Remote host端

在三台远端设备上分别配置PPPoE拨号连接,在拨号网络窗口中输入用户名user1和密码pass1进行拨号。

6. 验证配置

# 拨号连接成功后,Remote host A获取到IP地址192.168.1.2,Remote host B获取到IP地址192.168.1.130,Remote host C获取到IP地址192.168.1.3,并都可以ping通公司总部的私网网关地址。

# 在LNS1和LNS2端,通过命令display l2tp session可查看建立的3条L2TP会话。

[LNS1] display l2tp session

LocalSID      RemoteSID      LocalTID      State        Username

49545         10341           22365         Established  user1

24517         50848           22365         Established  user1

[LNS2] display l2tp session

LocalSID      RemoteSID      LocalTID      State        Username

21869         45683            29701        Established  user1

# 在LAC端,通过命令display l2tp tunnel可查看建立的2条L2TP隧道。

[LAC] dis l2tp tunnel

LocalTID RemoteTID State        Sessions RemoteAddress   RemotePort RemoteName

2349     22365     Established  2        20.1.1.2        1701       LNS1

47731    29701     Established  1        30.1.1.2        1701       LNS2

1.12  L2TP常见故障处理

1.12.1  远端系统无法访问企业内部网络

1. 故障现象

远端系统无法访问企业内部网络。

2. 故障分析

主要有以下几种原因:

·     可能是如下原因导致Tunnel建立失败:

¡     在LAC端,LNS的地址设置不正确。

¡     LNS端没有设置可以接收该隧道对端的L2TP组。

¡     只有一端启用Tunnel验证或两端均启用Tunnel验证但验证密码不一致

·     可能是如下原因导致PPP协商不通过:

¡     LAC端设置的用户名与密码有误,或者是LNS端没有设置相应的用户。

¡     LNS端不能分配地址。

¡     密码验证类型不一致。

3. 故障处理

(1)     检查在LAC端配置的LNS的IP地址是否正确,具体可以查看lns-ip命令的说明。

(2)     检查在LNS端配置的接受来自LAC的L2TP隧道建立请求是否正确,具体可查看allow l2tp命令的说明

(3)     如果配置了验证,检查并保证双方都启用了隧道验证并且配置相同的验证密钥。

(4)     检查LAC端配置的用户名和密码是否正确,以及LNS端是否配置了相应的用户。

(5)     检查远端系统和LNS对IP地址协商相关的配置是否正确。

(6)     检查密码验证类型是否一致。例如,Windows 2000所创建的VPN连接缺省的验证类型为MSCHAP,如果对端不支持MSCHAP,建议改为CHAP。

1.12.2  隧道建立成功,但无法传输数据

1. 故障现象

数据传输失败,在隧道建立后数据不能传输,如Ping不通对端。

2. 故障分析

可能有如下原因:

·     路由问题:LAC和LNS上需要存在到达对端私网的路由,否则会导致数据传输失败。

·     网络拥挤:Internet主干网产生拥挤,丢包现象严重。L2TP是基于UDP进行传输的,UDP不对报文进行差错控制。如果是在线路质量不稳定的情况下进行L2TP应用,有可能会产生Ping不通对端的情况。

3. 故障处理

(1)     在LAC和LNS上执行display ip routing-table命令,查看设备上是否存在到达对端私网的路由。若不存在,则需要配置静态路由或动态路由协议,在设备上添加该路由。

(2)     增加链路带宽,提高线路质量。

1.12.3  发送较大L2TP数据时,导致用户下线

1. 故障现象

用户正常上线后,当发送较大L2TP数据报文时,导致L2TP用户下线。

2. 故障分析

可能原因如下:

因L2TP不支持硬件分片功能,当需要传输数据报文的长度大于L2TP隧道所属物理接口(以下简称隧道接口)的MTU值或L2TP隧道使用的虚拟模板接口(以下简称VT接口)的MTU值时:

·     如果使用SPEX-1204单板上接口作为隧道接口,将因分片失败导致报文在硬件层被直接丢弃。

·     如果使用CSPEX类单板(除CSPEX-1104-E之外)和CEPC类单板接口作为隧道接口,因驱动默认下了最大值MTU值10240,所以不存在分片的情况,报文可正常转发。需要注意的是,此时即使通过命令修改隧道接口或VT接口的MTU值,设备仍将按最大值MTU值10240处理。

3. 故障处理

把LAC或LNS设备的隧道接口和VT接口的MTU值配置大些,从而尽量避免报文分片的发生。

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们