华为设备中QinQ的应用

  • 何为QinQ?

QinQ(dot1q in dot1q)是一种二层环境中的二层vpn技术,用于二层ISP网络将相同客户网络中的vlan帧,再打一层vlan-tag的手段实现同一个客户的不同站点之间的数据通信。

QinQ.png

  • QINQ的优点:

1.QINQ可以简单认为是报文携带了两层802.1QTag。

2.QINQ技术的出现让运营商可以以较低成本为客户提供二层×××。QINQ完全在运营商网络上实施,用户对QINQ不感知。

3.在运营商网络中的报文,内层Tag为客户私有VLAN标识,外层Tag为运营商分配给客户的VLAN。客户可以独立规划自己的VLANID,运营商网络的变化不影响客户网络。

4.QINQ不需要单独的信令协议,只需要静态配置,简洁稳定。

5.QINQ 扩展了VLAN资源,为运营商按VLAN 区分接入用户提供了可能。

  • QinQ的配置类型

QinQ的配置类型分为端口qinq灵活qinq,端口qinq是在ISP设备入端口收到多有帧都打上同一个外层tag发送到对端,而灵活qinq是在isp设备入端口根据收到的不同客户vlan帧打上不同的外层vlan-tag发送到对端的模式。

  • 网络规划实例:

site1和site2分别为同一个客户的两个站点,分别规划了vlan2和vlan3,中间sw1和sw2模拟了ISP的网络。整个网络使用二层通信。现在因为site1和site2中使用的vlan2和vlan3在ISP内部并没有,正常情况下需要ISP在网络内部也创建vlan2和vlan3,但是由于ISP的客户数量众多,不可能创建那么多和客户网络一样的vlan,所以使用qinq技术在同一个客户的数据帧上再打一层ISP内部的vlan-tag(本例中ISP使用vlan10来封装该客户的多个site的帧),使用外层的vlan-tag在ISP内部寻址,而当数据包到达客户对端站点的时候,设备剥离ISP的外层vlan-tag,还原成客户站点本来的vlan-tag,从而使得同一个客户的多个站点之间可以相互通信。

PC1-PC4的IP地址分别为192.168.0.10-192.168.0.40。

网络规划目标:实现客户网络的两个站点,site1与site2中相同vlan之间可以相互通信,即PC1与PC3通信,PC2与PC4通信。

一、使用端口qinq配置实现要求

根据拓扑使用端口qinq配置,使得site1与site2的相同vlan通信,即PC1与PC3通信,PC2与PC4通信

sw1与sw2的配置(相同)

vlan 10

interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
 port link-type dot1q-tunnel                          //启用端口qinq模式,qinq通道
 port default vlan 10                                 //ISP设备接口收到的帧全部在外侧打上vlan10的tag

#

sw3与sw4的配置(相同),分别模拟同一个客户的2个site

vlan batch 2 to 3

interface GigabitEthernet0/0/1
 port link-type trunk                                                  
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 2
#
interface GigabitEthernet0/0/3
 port link-type access
 port default vlan 3
#

测试,pc1与pc通信结果:

PC1>ping 192.168.0.30
Ping 192.168.0.30: 32 data bytes, Press Ctrl_C to break
From 192.168.0.30: bytes=32 seq=1 ttl=128 time=94 ms
From 192.168.0.30: bytes=32 seq=2 ttl=128 time=94 ms

二、使用灵活qinq配置实现要求

根据拓扑使用灵活qinq配置,使得site1与site2的相同vlan通信,即pc1与pc3通信,pc2与pc4通信

       灵活的qinq可以根据需求将客户网络的多个vlan集合分别对应isp内的多个vlan集合,如上述拓扑中客户site中的vlan2、vlan3在进入isp网络的时候分别在外层打上vlan10、vlan20的外层tag传递到对端的site中,配置如下:

sw3与sw4的配置(相同)

interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
 qinq vlan-translation enable                 //在ISP入接口开启qinq的vlan映射功能
 port hybrid untagged vlan 10 20              //允许vlan10、20通过该接口(出时剥离vlan10、20的标签)
 port vlan-stacking vlan 2 stack-vlan 10      //给客户网络中的vlan2的外层打上isp网络的vlan10的tag
 port vlan-stacking vlan 3 stack-vlan 20      //给客户网络中的vlan3的外层打上isp网络的vlan20的tag
#

sw3与sw4的配置(相同),分别模拟同一个客户的2个site

vlan batch 2 to 3

interface GigabitEthernet0/0/1
 port link-type trunk                                                  
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 2
#
interface GigabitEthernet0/0/3
 port link-type access
 port default vlan 3
#

测试pc1与pc3、pc2与pc4的连通性:

PC2>ping 192.168.0.40
Ping 192.168.0.40: 32 data bytes, Press Ctrl_C to break
From 192.168.0.40: bytes=32 seq=1 ttl=128 time=109 ms
From 192.168.0.40: bytes=32 seq=2 ttl=128 time=94 ms

三、无上行qinq配置接入时,如何实现PC5直接接入并访问PC1和PC3?

如果有个人电脑终端在没有接入交换机(sw3、sw4)的情况下,需在无上行配置的交换机(sw1、sw2)处接入使用客户网络,应该怎么配置呢?

以在sw2中接入为例,sw2的配置如下,模拟无接入交换机的情况:

#
interface GigabitEthernet0/0/1
 port link-type trunk                                                  
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
 qinq vlan-translation enable                 //在ISP入接口开启qinq的vlan映射功能
 port hybrid untagged vlan 10 20              //允许vlan10、20通过该接口(出时剥离vlan10、20的标签)
 port vlan-stacking vlan 2 stack-vlan 10      //给客户网络中的vlan2的外层打上isp网络的vlan10的tag
 port vlan-stacking vlan 3 stack-vlan 20      //给客户网络中的vlan3的外层打上isp网络的vlan20的tag
#
interface GigabitEthernet0/0/3
 port link-type hybrid
 qinq vlan-translation enable
 port hybrid untagged vlan 10
 port vlan-stacking untagged stack-vlan 10 stack-inner-vlan 2  //直接接入个人电脑终端
#

测试pc5与pc1、pc3的连通性:

PC2>ping 192.168.0.30
Ping 192.168.0.30: 32 data bytes, Press Ctrl_C to break
From 192.168.0.30: bytes=32 seq=1 ttl=128 time=109 ms
From 192.168.0.30: bytes=32 seq=2 ttl=128 time=94 ms

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值