QinQ
什么是QinQ
QinQ(802.1Q in 802.1Q)它是基于IEEE 802.1Q技术的一种二层隧道协议,通过将用户的死亡报文封装在外层VLAN Tag,使其携带两层VLAN Tag穿越运营商的骨干网络(又称公网),从而为用户提供一个比较简单的二层VPN隧道技术
QinQ的优势
- 缓解公网VLAN ID资源日益紧张的问题
- 用户可以规划自己的死亡VLAN ID,不会导致与公网VLAN发送冲突
- 提供一种简单,灵活的二层VPN解决方案
- 使用户网络具有较强的独立性。当运营商升级网络时,用户网络不必更改原有配置
QinQ实现原理
假设左边的A代表,北京公司VLAN 10的网络,右边的A代表福州的VLAN 10网络,现在需要通信,使用QinQ技术通过运营商打通二层VPN隧道实现通讯,在北京公司VLAN 10的网络数据在内部打上PVID 10的标签,经过外部再次的打上PVID 100的标签进行传输,到公网PVID 100的网络内,进行解放PVID 100的数据,在内部解封PVID 10的数据,到达福州的VLAN 10网络【端口QinQ二层隧道的这种场景不使用,一般用专线,VPN,现在QinQ用的场景就是宽带里隔离用户,学校里隔离宿舍】
QinQ的类型
根据QinQ的具体实现方式,通常分为如下几类:
- 基于端口的QinQ【这种QinQ目前没有使用场景了】
- 也叫做普通QinQ,是基于接口实现的,即通过该接口的所有报文,都加上一层VLAN Tag
- VLAN 10和VLAN 20都是用VLAN 100的标签
- 灵活QinQ
- 又叫VLAN Stacking或QinQ Stacking
- 基于VLAN的接口实现的,即通过该接口并且和指定VLAN相匹配的报文,才会再加上一层VLAN Tag
- 内层vlan 10外层vlan 100,内层vlan 20外层vlan 200,内层vlan 30外层vlan 300
基础QinQ配置练习
//SW1/SW2 [SW1]dis port vlan Port Link Type PVID Trunk VLAN List ------------------------------------------------------------------------------- Ethernet0/0/1 trunk 1 1-4094 Ethernet0/0/2 access 10 - Ethernet0/0/3 access 20 -
//SW3/SW4都进行配置 [SW3]vlan 100 [SW3]int g0/0/2 [SW3-GigabitEthernet0/0/2]port link-type dot1q-tunnel [SW3-GigabitEthernet0/0/2]port default vlan 100 [SW3]int g0/0/1 [SW3-GigabitEthernet0/0/1]port link-type trunk [SW3-GigabitEthernet0/0/1]port trunk allow-pass vlan 100
抓包进行查看
灵活QinQ练习
//SW3/SW4 [SW3]vlan batch 100 200 [SW3]int g0/0/2 [SW3-GigabitEthernet0/0/2]qinq vlan-translation enable //指定脱100 和 200 的标签 [SW3-GigabitEthernet0/0/2]port hybrid untagged vlan 100 200 //根据不同的VLAN打上不同的标签 [SW3-GigabitEthernet0/0/2]port vlan-stacking vlan 10 stack-vlan 100 [SW3-GigabitEthernet0/0/2]port vlan-stacking vlan 20 stack-vlan 200
抓包查看状态
TPID值
- TPID值可以用来判断报文中是否携带VLAN Tag
- 第三方厂商的设备可能将QinQ报文外层VLAN Tag的TPID字段设为不同的值。为了与这些第三方厂商的设备兼容,用户可以通过修改TPID值,使发送到公网中的QinQ报文携带的TPID值与第三方厂商的相同,从而实现与这些厂商的设备互通。
- 就是和原来8100标签不一样,就会知道这个是打到外层的标签
- 修改的话,两端标签要一致
[SW3]int g0/0/2 [SW3-GigabitEthernet0/0/2]qinq protocol ? HEX<600-FFFF> Type of Ethernet encapsulation
继续阅读

我的微信
这是我的微信扫一扫
评论