第 9 章 运营商QinQ 双层VLAN 穿透/透传

三层交换机及OLT支持QinQ VLAN,路由上创建对应的QinQ VLAN,路由LAN口接交换机的 trunk 口。

另外参考:

什么是QinQ

QinQ是指在802.1Q VLAN的基础上增加一层802.1Q VLAN标签,从而拓展VLAN的使用空间。在公网的传输过程中,设备只根据外层VLAN Tag转发报文,并根据报文的外层VLAN Tag进行MAC地址学习,而用户的私网VLAN Tag将被当作报文的数据部分进行传输。

网络拓扑

路由上创建QinQ VLAN

网络-》VLAN-》创建VLAN:

QinQ VLAN ID格式:<外层VLAN>.<内层VLAN>, 例如 20.40

QinQ 报文

QinQ 报文根据外层标签的不同,分为2种:802.1q 和 802.1ad

802.1q: 外层标签类型和内层相同,都是 0x8100(大多数是这种):

802.1ad:外层标签类型是 0x88a8

可根据所在网络的情况在创建QinQ时进行修改。

注:修改 QinQ 外层标签类型后,需要先禁用该VLAN,然后重新启用生效。

三层交换机上的配置

以华为S5700为例:外层vlan20,内层vlan40

一级交换机A上的配置:

## 创建外层VLAN
vlan batch 20

## 上联路由端口,设为trunk,允许外层vlan通过                                                                                              
interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 20

## 下联二级交换机B,设为QINQ接口(灵活QINQ:为具有不同内层 VLAN ID的报文添加不同的外层 VLAN Tag)
interface GigabitEthernet0/0/2
 qinq vlan-translation enable
 port hybrid untagged vlan 20                    《= 发出去的包剥离外层vlan 20 (发给二级交换机)
 port vlan-stacking vlan 40 stack-vlan 20         《= 为内层vlan40添加外层vlan 20 (从二级交换机进来的包)

## 下联二级交换机B,设为QINQ接口(基于端口的QINQ)
interface GigabitEthernet0/0/3
 port link-type dot1q-tunnel
 port default vlan 20                   
#

这里两种QINQ方式都可以,二级交换机可以接2口或3口。

二级交换机B上的配置:

### 创建用户vlan(内层vlan)
vlan batch 40  

### 上联一级交换机的口,设为trunk,允许内层vlan通过
interface GigabitEthernet0/0/1                                                                     
 port link-type trunk                                                                              
 port trunk allow-pass vlan 40                                                                     
#                             

### 接终端设备,access口,用户vlan                                                                     
interface GigabitEthernet0/0/2                                                                     
 port link-type access                                                                             
 port default vlan 40       

更多关于交换机的设置,请参考 常见交换机配置

OLT 支持 QinQ

适用场景:多个小区共用一台OLT,每个小区一个独立的外层VLAN,内层VLAN 相同。

网络环境:外层vlan为20,内层vlan为46,48,4015

网络拓扑: 路由(光口) —— OLT —— 分光器 —— 光猫

路由LAN口创建QinQ VLAN 如下:

华为 MA5680T OLT 配置如下:

vlan 20 smart
vlan attrib 20 q-in-q
port vlan 20 0/19 1

interface gpon 0/1
 ont add 1 23 sn-auth "434D4443000EA2AF" omci ont-lineprofile-id 20 ont-srvprofile-id 20 desc "qinq_test"

dba-profile add profile-id 10 profile-name "ftth" type4 max 1024000

ont-srvprofile gpon profile-id 20 profile-name "qinq"
 ont-port pots adaptive eth adaptive
 commit
 quit

ont-lineprofile gpon profile-id 20 profile-name "qinq"
 tr069-management ip-index 0
 tcont 1 dba-profile-id 10
 gem add 0 eth tcont 1
 gem add 1 eth tcont 1
 gem add 2 eth tcont 1
 gem mapping 0 1 vlan 4015
 gem mapping 1 1 vlan 46
 gem mapping 2 1 vlan 48
 commit
 quit

service-port 256 vlan 20 gpon 0/1/1 ont 23 gemport 0 multi-service user-vlan 4015 \
 tag-transform translate-and-add inner-vlan 4015 inbound traffic-table index 6 outbound traffic-table index 6

service-port 254 vlan 20 gpon 0/1/1 ont 23 gemport 1 multi-service user-vlan 46 \
 tag-transform translate-and-add inner-vlan 46 inbound traffic-table index 6 outbound traffic-table index 6

service-port 255 vlan 20 gpon 0/1/1 ont 23 gemport 2 multi-service user-vlan 48 \
 tag-transform translate-and-add inner-vlan 48 inbound traffic-table index 6 outbound traffic-table index 6

QinQ DHCP 上网

路由 DHCP 服务设置QinQ VLAN IP地址池:

成功后,光猫会获得IP,例如:

QinQ PPPoE 拨号

在PPPoE 服务中监听 QinQ 接口: