这是一个极少人真正做成功的实验,但本文中是真正成功的!本文摘自已数十次重印的华为指定官方教材、十三五重点图书——《华为交换机学习指南》(第二版),以全程验证方式介绍了通过Dot1q终结子接口接入MPLS VLL L2VPN的配置方法。
图8-14是Dot1q终结子接口接入VLL配置示例的拓扑结构。CE1、CE2分别通过VLAN方式接入PE1和PE2。CE1和CE2之间建立Martini方式的VLL,现要求通过Dot1q终结子接口使CE1和CE2的用户网络可以互通。
图8-14 Dot1q终结子接口接入VLL配置示例的拓扑结构
- 配置思路分析
要在PE1和PE2之间建立VLL连接,需要在骨干网相关设备(PE1、P、PE2)上配置路由协议实现互通,并开启MPLS功能。本例使用缺省隧道策略,建立LDP LSP作为传输业务数据的隧道。
要使CE用户通过VLL建立二层连接,需要在PE上启用MPLS L2VPN功能,创建VC连接。想要通过一个物理接口连接多个不同VLAN中的业务,需要在PE连接CE的接口上配置多个Dot1q子接口分别接入不同VLAN中的业务。有关MPLS VLL的相关知识和配置方法参见《华为MPLS VPN学习指南》(第二版)。
因为Dot1q子接口只接受带标签的帧,在本示例中,可在CE上配置VLANIF接口,模拟用户发送数据包,然后通过VLANIF接口转发进行帧封装时,打上对应的VLAN标签。假设本示例中Dot1q子接口要终结VLAN 10中的业务,所以要在CE1和CE2上分别创建VLAN 10和VLANIF10接口,CE1和CE2上的VLANIF10接口的IP地址在同一子网,分别是10.10.0.1/24和10.10.0.2/24。另外,通过在CE上创建VLANIF10接口,可直接在CE上模拟用户之间的三层互通测试。
【说明】因为模拟器的交换机不支持创建以太网子接口,故如果要在模拟器中做本实验,PE1、P、PE2均用一台路由器代替,而且,PE1和PE2必须使用模拟器中的CX设备,不能是普通的路由器,否则实验做不成功(这是重点!!)。图8-15是在模拟器中配置通过Dot1q终结子接口接入VLL实验的拓扑结构,骨干网中的PE1、P和PE2都是模拟器中的CX设备。此时利用PE1、PE2的三层以太网接口E1/0/1上直接创建子接口,在E1/0/1接口上不用,也不能进行Trunk类型配置。
图8-15 在模拟器中配置通过Dot1q终结子接口接入VLL实验的拓扑结构
2. 配置步骤
(1)按图11-14中的标注,配置CE、PE和P的各接口所属VLAN和VLANIF接口的IP地址。
- CE1上的配置
在CE1上创建VLAN 10和VLANIF10接口,配置VLANIF10接口的IP地址,使CE1发送给PE1的报文带有一层VLAN标签,配置GE0/0/1接口允许VLAN 10带标签通过(接口的PVID值保持缺省的VLAN 1即可)。
<HUAWEI> system-view
[HUAWEI] sysname CE1
[CE1] vlan batch 10
[CE1] interface gigabitethernet 0/0/1
[CE1-GigabitEthernet0/0/1] port link-type trunk
[CE1-GigabitEthernet0/0/1] port trunk allow-pass vlan 10
[CE1-GigabitEthernet0/0/1] quit
[CE1] interface vlanif 10
[CE1-Vlanif10] ip address 10.10.10.1 24
[CE1-Vlanif10] quit
- CE2上的配置
在CE2上创建VLAN 10和VLANIF10接口,配置VLANIF10接口的IP地址,使CE1发送给PE2的报文带有一层VLAN标签,配置GE0/0/1接口允许VLAN 10带标签通过(接口的PVID值保持缺省的VLAN 1即可)。
<HUAWEI> system-view
[HUAWEI] sysname CE2
[CE2] vlan batch 10
[CE2] interface gigabitethernet 0/0/0
[CE2-GigabitEthernet0/0/1] port link-type trunk
[CE2-GigabitEthernet0/0/1] port trunk allow-pass vlan 10
[CE2-GigabitEthernet0/0/1] quit
[CE2] interface vlanif 10
[CE2-Vlanif10] ip address 10.10.10.2 24
[CE2-Vlanif10] quit
- PE1上的配置
创建VLAN 20和VLANIF20接口,配置VLANIF20接口的IP地址,GE0/0/2接口可以配置为任意类型,在此以Access类型进行介绍。
【说明】如果是在模拟器中做实验,PE1必须使用模拟器中的CX设备,只需在连接P的E1/0/0三层以太网接口(参见图8-15)上配置与以下VLANIF20接口相同的IP地址即可,不用创建VLAN和VLANIF20接口,也不用配置接口加入VLAN和VLANIF接口的IP地址。后面的P和PE2也要采用CX设备,配置方法相同,不再赘述。
<HUAWEI> system-view
[HUAWEI] sysname PE1
[PE1] vlan batch 20
[PE1] interface gigabitethernet 0/0/2
[PE1-GigabitEthernet0/0/2] port link-type access
[PE1-GigabitEthernet0/0/2] port default vlan 20
[PE1-GigabitEthernet0/0/0] quit
[PE1] interface vlanif 20
[PE1-Vlanif20] ip address 10.1.1.1 24
[PE1-Vlanif20] quit
- P上的配置
创建VLAN 20、VLAN 30和VLANIF20、VLANIF30接口,配置VLANIF20和VLANIF30接口的IP地址,GE0/0/1和GE0/0/2接口可以配置为任意类型,在此以Access类型进行介绍。
<HUAWEI> system-view
[HUAWEI] sysname P
[P] vlan batch 20 30
[P] interface gigabitethernet 0/0/1
[P-GigabitEthernet0/0/1] port link-type access
[P-GigabitEthernet0/0/1] port default vlan 20
[P-GigabitEthernet0/0/1] quit
[P] interface gigabitethernet 2/0/0
[P-GigabitEthernet0/0/0] port link-type access
[P-GigabitEthernet0/0/0] port default vlan 30
[P-GigabitEthernet2/0/0] quit
[P] interface vlanif 20
[P-Vlanif20] ip address 10.1.1.2 24
[P-Vlanif20] quit
[P] interface vlanif 30
[P-Vlanif30] ip address 10.1.2.1 24
[P-Vlanif30] quit
- PE2上的配置
创建VLAN 30和VLANIF30接口,配置VLANIF30接口的IP地址,GE0/0/2接口可以配置为任意类型,在此以Access类型进行介绍。
<HUAWEI> system-view
[HUAWEI] sysname PE2
[PE2] vlan batch 30
[PE2] interface gigabitethernet 0/0/2
[PE2-GigabitEthernet0/0/2] port link-type access
[PE2-GigabitEthernet0/0/2] port default vlan 20
[PE2-GigabitEthernet0/0/0] quit
[PE2] interface vlanif 20
[PE2-Vlanif20] ip address 10.1.2.2 24
[PE2-Vlanif20] quit
(2)在MPLS骨干网上配置IGP路由,本示例中使用OSPF协议。
配置OSPF路由时,注意需要发布PE1、P和PE2作为LSR ID的32位Loopback接口地址对应的主机路由。
- PE1上的配置
[PE1] interface loopback 1
[PE1-LoopBack1] ip address 1.1.1.1 32
[PE1-LoopBack1] quit
[PE1] router id 1.1.1.1
[PE1] ospf 1
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0 #---发布Loopback1接口的主机路由
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255 #---发布VLANIF20接口所在网段的路由
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
- P上的配置
[P] interface loopback 1
[P-LoopBack1] ip address 2.2.2.2 32
[P-LoopBack1] quit
[P] router id 2.2.2.2
[P] ospf 1
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0
[P-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.2.2.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
- PE2上的配置
[PE2] interface loopback 1
[PE2-LoopBack1] ip address 3.3.3.3 32
[PE2-LoopBack1] quit
[PE2] router id 3.3.3.3
[PE2] ospf 1
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 3.3.3.3 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 10.2.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
以上配置完成后,PE1、P、PE2之间应能建立OSPF邻居关系,执行display ospf peer命令可以看到邻居状态为Full。执行display ip routing-table命令可以看到PE之间学习到对方的Loopback1接口路由。图8-16是在PE1上执行display ip routing-table命令的输出(图中的出接口是在模拟器中采用CX设备做实验时的使用的接口,参见图8-15),从中可以看出PE1已学习到了P和PE2上的Loopback1接口对应的主机OSPF路由,以及P与PE2之间直连的10.2.2.0/24网段OSPF路由。
图8-16 在PE1上执行display ip routing-table命令的输出
(3)在MPLS骨干网上配置MPLS基本能力和LDP。
- PE1上的配置。
在系统视图下,以及连接骨干网其它设备的接口下分别开启MPLS和LDP功能。
【说明】采用模拟器做实验时,因为PE1上不创建VLANIF20接口,需要在连接P的三层以太网接口E1/0/0上开启MPLS和LDP功能,后面的P和PE2采用模拟器中的CX设备时,配置方法类似,不再赘述。
[PE1] mpls lsr-id 1.1.1.1
[PE1] mpls
[PE1-mpls] quit
[PE1] mpls ldp
[PE1-mpls-ldp] quit
[PE1] interface vlanif 20
[PE1-Vlanif20] mpls
[PE1-Vlanif20] mpls ldp
[PE1-Vlanif20] quit
- P上的配置
[P] mpls lsr-id 2.2.2.2
[P] mpls
[P-mpls] quit
[P] mpls ldp
[P-mpls-ldp] quit
[P] interface vlanif 20
[P-Vlanif20] mpls
[P-Vlanif20] mpls ldp
[P-Vlanif20] quit
[P] interface vlanif 30
[P-Vlanif30] mpls
[P-Vlanif30] mpls ldp
[P-Vlanif30] quit
- PE2上的配置
[PE2] mpls lsr-id 3.3.3.3
[PE2] mpls
[PE2-mpls] quit
[PE2] mpls ldp
[PE2-mpls-ldp] quit
[PE2] interface vlanif 30
[PE2-Vlanif30] mpls
[PE2-Vlanif30] mpls ldp
[PE2-Vlanif30] quit
(4)在PE之间建立远端LDP会话。
- PE1上的配置
[PE1] mpls ldp remote-peer 3.3.3.3
[PE1-mpls-ldp-remote-3.3.3.3] remote-ip 3.3.3.3
[PE1-mpls-ldp-remote-3.3.3.3] quit
- PE2上的配置
[PE2] mpls ldp remote-peer 1.1.1.1
[PE2-mpls-ldp-remote-1.1.1.1] remote-ip 1.1.1.1
[PE2-mpls-ldp-remote-1.1.1.1] quit
上述配置完成后,可在PE1、PE2上执行display mpls ldp session命令查看LDP会话的建立情况。图8-17是在PE1上执行display mpls ldp session命令的输出,从中可以看到PE1与P和PE2都建立LDP会话,其中与P建立的是本地会话,与PE2建立的是远端LDP会话。
图8-17 在PE1上执行display mpls ldp session命令的输出
(5)在两PE上开启MPLS L2VPN,并通过Dot1q子接口与对端PE建立VLL VC连接。
- PE1上的配置
配置接入CE1的GE0/0/1接口为Trunk类型(也可以是Hybrid类型),然后创建终结VLAN 10的GE0/0/1.1 Dot1q终结子接口,与PE2建立VLL VC连接。
【说明】在采用模拟器做实验时,PE1采用CX设备,连接CE1的接口为E1/01三层以太网接口,不用配置设备的VCMP角色和接口链路类型,直接创建并配置Dot1q终结子接口,但要先在终结子接口下先要使用encapsulation dot1q-termination命令指定子接口的封装类型为dot1q类型(这也是重点!!),然后才能配置Dot1q终结VLAN。PE2上的配置方法类似。
[PE1] mpls l2vpn
[PE1-l2vpn] quit
[PE1] vcmp role silent
[PE1] interface gigabitethernet0/0/1
[PE1-GigabitEthernet0/0/0] port link-type hybrid
[PE1-GigabitEthernet0/0/0] quit
[PE1] interface gigabitethernet0/0/1.1
[PE1-GigabitEthernet0/0/1.1] dot1q termination vid 10
[PE1-GigabitEthernet0/0/1.1] mpls l2vc 3.3.3.3 101
[PE1-GigabitEthernet0/0/1.1] quit
【注意】一个Dot1q终结子接口只能与一条VC连接进行进行绑定,而且Dot1q终结子接口只能终结一个VLAN。多条VC连接不能共用同一个Dot1q终结子接口。
- PE2上的配置
配置接入CE2的GE0/0/1接口为Trunk类型(也可以是Hybrid类型),然后创建终结VLAN 10的GE0/0/1.1 Dot1q终结子接口,与PE1建立VLL VC连接。
[PE2] mpls l2vpn
[PE2-l2vpn] quit
[PE2] vcmp role silent
[PE2] interface gigabitethernet0/0/1
[PE2-GigabitEthernet0/0/0] port link-type hybrid
[PE2-GigabitEthernet0/0/0] quit
[PE2] interface gigabitethernet0/0/1.1
[PE2-GigabitEthernet0/0/1.1] dot1q termination vid 10
[PE2-GigabitEthernet0/0/1.1] mpls l2vc 1.1.1.1 101
[PE2-GigabitEthernet0/0/1.1] quit
【说明】因为Dot1q终结子接口在收到帧后会剥除帧中的VLAN标签,帧到了对端Dot1q终结子接口后,又会打上本地子接口所终结的VLAN对应的VLAN标签,所以两端Dot1q终结子接口所终结的VLAN可以相同,也可以不同,只需要两端的主机IP地址在同一子网就可以实现互通(这是非常宝贵的经验哦)。QinQ终结子接口也一样。
3. 配置结果验证
以上配置完成后,可以进行以下配置结果验证。
(1)在PE1、PE2上执行display mpls l2vc命令查看L2VPN连接信息。图11-18是在PE1上执行display mpls l2vc命令的输出(在模拟器中做实验时对应的子接口编号为ethernet1/0/1.1),从中可以看到已建立了一条VC,状态为UP。
图8-18 在PE1上执行display mpls l2vc命令的输出
(2)通过ping命令测试CE1与CE2之间是否可以互通。图8-19是CE1成功ping 通CE2的结果,证明本示例前面的配置是正确且成功的。
图8-19 CE1成功ping 通CE2的结果