Juniper MX搭建LDP信令的MPLS L2 VPLS组网

本文最后更新于 2024年4月4日 中午

简介

本实验使用Juniper vMX 在PNET-LAB上运行搭建,使用LDP信令搭建VPLS。

Juniper 系列文章:https://songxwn.com/categories/Juniper/

基础理论

VPLS称为虚拟专用局域网业务(Virtual Private LAN Service),是公用网络中提供的一种点到多点的L2VPN(Layer 2 Virtual Private Network)业务,使地域上隔离的用户站点能通过MAN/WAN(Metropolitan Area Network/Wide Area Network)相连,并且使各个站点间的连接效果像在一个LAN(Local Area Network)中一样。它是一种基于MPLS(MultiProtocol Label Switching)和以太网的二层VPN技术,也被称为透明局域网业务TLS(Transparent LAN Service)。

VPLS的典型组网如下图所示,处于不同物理位置的用户通过接入不同的PE设备,实现用户之间的互相通信。从用户的角度来看,整个VPLS网络就是一个二层交换的交换机,用户之间就像直接通过LAN互连在一起一样。

VPLS基本传输结构

如下图所示,整个VPLS网络就像一个交换机,它通过MPLS隧道在每个VPN的各个Site之间建立虚链路(PW),并通过PW将用户二层报文在站点间透传。对于PE(Provider Edge)设备,它会在转发报文的同时学习源MAC并建立MAC转发表项,完成MAC地址与用户接入接口(AC接口)和虚链路(PW)的映射关系。

VPLS网络中各组件的概念如下:

名称 全称 概念
AC(Attachment Circuit) 接入电路 用户与服务提供商之间的连接,即连接CE与PE的链路。支持的接口类型仅支持EVC二层子接口。
PW(Pseudo Wire) 伪线 两个PE设备上VSI之间的一条双向虚拟连接。它由一对方向相反的单向的MPLS VC(Virtual Circuit)组成,也称为仿真电路。
VSI(Virtual Switch Instance) 虚拟交换实例 VSI是交换机上为每一个VPLS单独划分的一个虚拟交换处理单元,在每一个VSI中都有独立的一张MAC地址表和转发器,并负责终结PW。
PW Signaling PW信令协议 VPLS实现的基础,用于创建和维护PW。目前,PW信令协议主要有LDP(Label Distribution Protocol)和BGP(Border Gateway Protocol)。
Tunnel 隧道 用于承载PW,一条隧道上可以承载多条PW。隧道是一条本地PE与对端PE之间的直连通道,完成PE之间的数据透明传输,可以是LSP(Label Switched Path)隧道。
Forwarder 转发器 转发器相当于VPLS的转发表。PE收到AC上送的数据帧,由转发器选定转发报文使用的PW。

LDP-VPLS实验拓扑

  • MX1-4 之间配置ISIS L2 打通底层路由。

  • MX1-4 之间建立LDP。

  • MX1-4 之间建立VPLS。

分步配置- 以MX1为例

ISIS 基础路由和接口配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
set interfaces lo0 unit 0 family inet address 1.1.1.1/32
set interfaces lo0 unit 0 family iso address 49.0001.0000.0000.0001.00
set interfaces lo0 unit 0 family mpls
# 配置Lookback0口IP地址,ISIS的NET地址,开启MPLS。
set interfaces ge-0/0/1 unit 0 family inet address 12.1.1.1/24
set interfaces ge-0/0/1 unit 0 family iso
set interfaces ge-0/0/1 unit 0 family mpls
set interfaces ge-0/0/2 unit 0 family inet address 13.1.1.1/24
set interfaces ge-0/0/2 unit 0 family iso
set interfaces ge-0/0/2 unit 0 family mpls
# 配置两个骨干接口,配置互联IP,开启ISIS ISO、开启MPLS。
set protocols isis interface ge-0/0/1.0 hello-padding disable
set protocols isis interface ge-0/0/1.0 point-to-point
set protocols isis interface ge-0/0/2.0 point-to-point
set protocols isis interface ge-0/0/2.0 hello-padding disable
# ISIS宣告骨干互联接口,配置为P2P网络类型,关闭Hello报文填充。
set protocols isis interface lo0.0 passive
# ISIS宣告lookback 口,并配置为被动接口。
set protocols isis level 2 wide-metrics-only
# 配置ISIS L2 度量值计算为宽。
set protocols isis level 1 disable
# 关闭ISIS L1,只使用L2互联。

LDP

1
2
3
4
set protocols ldp interface ge-0/0/1.0
set protocols ldp interface ge-0/0/2.0
set protocols ldp interface lo0.0
# 骨干互联接口,Lookback口开启LDP,注意对应接口也需要开启MPLS。

VPLS AC 接入配置

1
2
3
4
5
6
7
8
9
set interfaces ge-0/0/3 vlan-tagging
set interfaces ge-0/0/3 encapsulation vlan-vpls
set interfaces ge-0/0/3 unit 0 encapsulation vlan-vpls
set interfaces ge-0/0/3 unit 0 vlan-id 600
set interfaces ge-0/0/3 unit 0 family vpls
# 带VLAN接入,带VLAN传输,发送到对端也会带VLAN。
set interfaces ge-0/0/4 encapsulation ethernet-vpls
set interfaces ge-0/0/4 unit 0 family vpls
# 不带VLAN接入

VPLS配置

1
2
3
4
5
6
7
8
9
10
11
12
13
set routing-instances songxwn.com instance-type vpls
# 创建VRF,配置类型为VPLS
set routing-instances songxwn.com protocols vpls neighbor 2.2.2.2
set routing-instances songxwn.com protocols vpls neighbor 3.3.3.3
set routing-instances songxwn.com protocols vpls neighbor 4.4.4.4
# 配置静态VPLS互联,LDP方式需要手动配置,而BGP会自动建立。配置此语句可使 LDP 向 VPLS 发出信号。
set routing-instances songxwn.com protocols vpls no-tunnel-services
# 此语句会创建一个标签交换接口 (LSI),默认情况下,VPLS 需要隧道服务 PIC卡。所以要在没有隧道服务 PIC卡 的路由器上配置此命令让 VPLS 并创建 LSI。(包括vMX)
set routing-instances songxwn.com protocols vpls vpls-id 9527
# VPLS实例唯一ID,需要把统一组网的ID配置为一样。
set routing-instances songxwn.com interface ge-0/0/3.0
set routing-instances songxwn.com interface ge-0/0/4.0
# 配置对接客户CE设备接入接口加入VPLS 实例。

PS:no-tunnel-services 参考 https://www.juniper.net/documentation/cn/zh/software/junos/vpn-l2/topics/task/vpls-configuring-without-tunnel-services-pic.html

MX1 配置一览

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# MX1 配置
set interfaces ge-0/0/3 vlan-tagging
set interfaces ge-0/0/3 encapsulation vlan-vpls
set interfaces ge-0/0/3 unit 0 encapsulation vlan-vpls
set interfaces ge-0/0/3 unit 0 vlan-id 600
set interfaces ge-0/0/3 unit 0 family vpls
set interfaces ge-0/0/4 encapsulation ethernet-vpls
set interfaces ge-0/0/4 unit 0 family vpls
## AC 接入端口配置
set interfaces ge-0/0/1 unit 0 family inet address 12.1.1.1/24
set interfaces ge-0/0/1 unit 0 family iso
set interfaces ge-0/0/1 unit 0 family mpls
set interfaces ge-0/0/2 unit 0 family inet address 13.1.1.1/24
set interfaces ge-0/0/2 unit 0 family iso
set interfaces ge-0/0/2 unit 0 family mpls
## 骨干互联接口配置
set interfaces lo0 unit 0 family inet address 1.1.1.1/32
set interfaces lo0 unit 0 family iso address 49.0001.0000.0000.0001.00
set interfaces lo0 unit 0 family mpls
## Lookback0口配置
set routing-instances songxwn.com instance-type vpls
set routing-instances songxwn.com protocols vpls neighbor 2.2.2.2
set routing-instances songxwn.com protocols vpls neighbor 3.3.3.3
set routing-instances songxwn.com protocols vpls neighbor 4.4.4.4
set routing-instances songxwn.com protocols vpls no-tunnel-services
set routing-instances songxwn.com protocols vpls vpls-id 9527
set routing-instances songxwn.com interface ge-0/0/3.0
set routing-instances songxwn.com interface ge-0/0/4.0
## VPLS主要配置
set protocols isis interface ge-0/0/1.0 hello-padding disable
set protocols isis interface ge-0/0/1.0 point-to-point
set protocols isis interface ge-0/0/2.0 point-to-point
set protocols isis interface ge-0/0/2.0 hello-padding disable
set protocols isis interface lo0.0 passive
set protocols isis level 2 wide-metrics-only
set protocols isis level 1 disable
## ISIS互联配置
set protocols ldp interface ge-0/0/1.0
set protocols ldp interface ge-0/0/2.0
set protocols ldp interface lo0.0
## LDP配置

从MX4 接入PC Ping MX1 接入PC 抓包

VPLS 连接验证

1
show vpls connections   

验证VPLS MAC地址表(有通信才会有地址)

1
show vpls mac-table

参考文档

https://support.huawei.com/enterprise/zh/doc/EDOC1100075312/ea751f32

https://www.h3c.com/cn/d_200805/606212_30003_0.htm

https://www.juniper.net/documentation/cn/zh/software/junos/vpn-l2/topics/concept/vpns-configuring-vpls-routing-instances.html#id-11510150__id-vpls-ldp-signal

主要还有大侠唐在飞的大力支持


Juniper MX搭建LDP信令的MPLS L2 VPLS组网
https://songxwn.com/Juniper-LDP-VPLS/
作者
Song
发布于
2024年4月3日
更新于
2024年4月4日
许可协议