本文转自: https://ccie.lol/knowledge-base/l2tpv3/
1、L2TP 协议之前的版本:
L2TPv1 是思科私有协议,当时叫做 L2F;L2TPv2 是为远程访问设计的,只支持 PPP。
2、什么是 L2TP:
L2TP(Layer 2 Tunneling Protocol)是一种工业标准的 Internet 隧道协议,功能大致和 PPTP 协议类似,比如同样可以对网络数据流进行加密。不过也有不同之处,比如 PPTP 要求网络为 IP 网络,L2TP 要求面向数据包的点对点连接;PPTP 使用单一隧道,L2TP 使用多隧道;L2TP 提供包头压缩、隧道验证,而 PPTP 不支持。
简而言之,L2TPv3 是 L2VPN 基于 IP 网络的解决方案。L2TPv3的前身是 Cisco 的私有协议 —— 通用传输协议(UTI)。
其他相关文章:
- 如果您想通过 MPLS 来实现 L2VPN,请看:《L2VPN传统结构》和《【实验】MPLS L2VPN下,Point-to-Point的AToM实验》。
3、L2TP 的会话:
如上图所示,L2TP 为两个 CE 提供 L2VPN 服务,此时有一条 L2TP 控制会话和一条 L2TP 数据会话;
如下图所示,如果 PE 要向多个 CE 提供 L2VPN 服务,那么 L2TP 数据会话将会有多条,但这个时候 L2TP 控制会话还是只有一条。
如上图所示,L2TPv3 需要为两个客户提供 L2VPN 服务:
- 一个是左右两端各一个的 CE,两个 CE 之间要实现 L2VPN 通信;
- 另一个是 LAN1 和 LAN2,LAN1 和 LAN2 之间也要实现 L2VPN 通信。
所以此时控制会话只有一条,但是数据会话将会有两条。
4、L2TPv3 的 Control Plane 和 Data Plane:
- Control Plane:使用带内信令来管理 L2TP 端点之间的控制连接和数据连接;
- Data Plane:负责伪线仿真并提供数据转发服务。
5、L2TPv3 的报头结构:
L2TPv3 有两种报头结构(或分组格式):
- 一种是 IP 协议号为 115(如上图左侧所示,思科路由器用这种方式);
- 另一种是 UDP 端口号为 1701(如上图右侧所示)。
如下图所示,这是 Wireshark 的截图。在该图上可以看到思科路由器采用的是 IP 协议号为 115 的方式来标记 L2TPv3 数据包。
其他相关文章:
6、L2TPv3 控制消息报文格式:
7、L2TPv3 控制会话建立过程:
LCCE 的意思是:Local Control Connect End-point / Local Control Connect Equipment(本地控制连接终端设备)。
CE 和 LCCE 之间的链路叫做 AC ;AC 的意思是:Attachment Circuit,附接链路。
SCCRQ 的意思是:Start Control Connect Request,开始控制连接请求。
SCCRP 的意思是:Start Control Connect Reply,开始控制连接响应。
SCCCN 的意思是:Start Control Connect Connection,开始控制连接链路建立。
8、L2TPv3 数据会话建立过程:
数据会话建立从 ICRQ 开始,SCCRQ、SCCRP 和 SCCCN 是控制会话的建立过程。
ICRQ 的意思是:Incoming Request,入向请求。
ICRP 的意思是:Incoming Reply,入向响应。
ICCN 的意思是:Incoming Connection,入向链路建立。
9、L2TPv3 维护机制:
维护机制就是通过发送 Hello 包来实现。
10、L2TPv3 链路拆除(Teardown):
CDN 的意思是我个人觉得是:Connection Down,链路拆除。
11、L2TPv3 的配置:
L2TPv3 的配置方式有两种:
- 配置 L2TPv3 可以使用动态会话;
- 配置 L2TPv3 也可以使用静态会话。
一般都使用动态会话,就好像一般都会使用动态路由协议而不是静态路由一样。
12、L2TPv3 的动态会话配置步骤:
Step 1 to 2 很好理解,现在来看 Step 3 to 5:
其中 Step 3 是为了配置 L2TPv3 的安全认证,如果不需要配置认证的话,Step 3 是可以不用配置的。
关于动态会话的配置步骤,详情请见这个实验:《【实验】IP L2VPN下,Point-to-Point的L2TPv3实验》
13、L2TPv3 的静态会话配置步骤:
如上图所示,这是 L2TPv3 的静态会话配置步骤,简直是一个噩梦。_(:з」∠)_
评论