40-VLAN-VPN操作
本章节下载 (288.54 KB)
目 录
VLAN-VPN是指将用户私网VLAN Tag封装在公网VLAN Tag中,使报文带着两层VLAN Tag穿越运营商的骨干网络(公网)。在公网中报文只根据外层VLAN Tag(即公网VLAN Tag)传播,用户的私网VLAN Tag被屏蔽。
携带单层VLAN Tag的报文结构如图1-1所示:
携带双层VLAN Tag的报文结构如图1-2所示:
相对基于MPLS的二层VPN,VLAN-VPN具有如下特点:
l 为用户提供了一种更为简单的二层VPN隧道。
l 不需要信令协议的支持,可以通过纯静态配置实现。
VLAN-VPN主要可以解决如下几个问题:
l 缓解日益紧缺的公网VLAN ID资源问题。
l 用户可以规划自己的私网VLAN ID,不会导致和公网VLAN ID冲突。
l 为小型城域网或企业网提供一种较为简单的二层VPN解决方案。
通过开启端口的VLAN-VPN特性功能,可以实现VLAN-VPN。
开启端口的VLAN-VPN功能后,当该端口接收到报文,无论报文是否带有VLAN Tag,交换机都会为该报文打上本端口缺省VLAN的VLAN Tag。这样,如果接收到的是已经带有VLAN Tag的报文,该报文就成为双Tag的报文;如果接收到的是不带VLAN Tag的报文,该报文就成为带有端口缺省VLAN Tag的报文。
TPID(Tag Protocol Identifier,标签协议标识)是VLAN Tag中的一个字段,IEEE 802.1Q协议规定该字段的取值为0x8100。
IEEE 802.1Q协议定义的以太网帧的Tag报文结构如图1-3所示:
S3600系列交换机缺省采用协议规定的TPID值(0x8100)。某些厂商的设备将VLAN-VPN报文外层Tag的TPID值设置为0x9100或0x9200。
为了和这些设备兼容,S3600系列交换机提供了基于端口的VLAN-VPN报文TPID值可调功能,用户可以自行配置连接公网侧端口的TPID值。该端口在转发报文时会将报文外层VLAN Tag中的TPID值替换为用户设定值再进行发送,从而使发送到公网中的VLAN-VPN报文可以被其他厂商的设备识别。
由于TPID字段在以太网报文中所处位置与不带VLAN Tag的报文中协议类型字段所处位置相同,为避免网络中报文转发和接收造成混乱,用户在配置VLAN-VPN时,交换机将不允许用户配置TPID为表1-1中列举的常用协议类型值。
协议类型 |
对应取值 |
ARP |
0x0806 |
IP |
0x0800 |
MPLS |
0x8847/0x8848 |
IPX |
0x8137 |
IS-IS |
0x8000 |
LACP |
0x8809 |
802.1x |
0x888E |
l 端口的GVRP、GMRP、NTDP、STP、802.1x和集中式MAC地址认证功能均未启动。
l 端口必须为Access端口。
注意:
l 如果某端口的GVRP、GMRP、NTDP、STP、802.1x和集中式MAC地址认证功能中的任一个已经启动,则不允许用户开启端口的VLAN-VPN特性。
l 缺省情况下,设备的STP和NTDP协议是开启的。需要在相应端口下应用stp disable命令和undo ntdp enable命令来关闭相应协议。
l 如果设备上存在已经使能Fabric功能的端口,将不能在该端口或其他任何端口上启动VLAN-VPN特性。
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface interface-type interface-number |
- |
开启端口的VLAN-VPN特性 |
vlan-vpn enable |
必选 缺省情况下,端口VLAN-VPN特性处于关闭状态 |
显示系统中所有端口的VLAN-VPN配置信息 |
display port vlan-vpn |
display命令可以在任意视图下执行 |
& 说明:
在指定端口使能VLAN-VPN特性之后,将不能修改该端口的属性为Trunk端口或Hybrid端口,也不能启用该端口的GVRP、GMRP、NTDP、STP、802.1x和集中式MAC地址认证功能。
l 当用户使用命令修改端口属性或开启GVRP、GMRP、NTDP、STP、802.1x和集中式MAC地址认证功能时,交换机将输出错误提示。
l 当用户使用copy configuration命令将其他端口的配置复制到使能VLAN-VPN的端口时,端口属性配置和GVRP、GMRP、NTDP、STP、802.1x和集中式MAC地址认证等与VLAN-VPN功能互斥的功能配置将不会被复制。
通过该配置,内层VLAN Tag中的标签优先级会被复制到外层VLAN Tag中,这样可以保持报文在打上外层VLAN Tag后并不改变原优先级。
端口开启VLAN-VPN特性。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface interface-type interface-number |
- |
启用内层标签优先级复制功能 |
vlan-vpn inner-cos-trust enable |
必选 缺省情况下,关闭内层标签优先级复制功能,外层VLAN Tag中的优先级使用当前端口默认值 |
显示系统中所有端口的VLAN-VPN配置信息 |
display port vlan-vpn |
display命令可以在任意视图下执行 |
注意:
如果端口已经配置了端口优先级(请参见《H3C S3600 系列以太网交换机 操作手册》“QACL”部分的介绍),在使能VLAN-VPN内层标签优先级复制功能之后,交换机会提示用户当前端口的端口优先级配置将失效。
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface interface-type interface-number |
- |
设置端口采用的TPID值 |
vlan-vpn tpid value |
必选 注意,不要设置可能引起冲突的TPID值,比如已知的协议类型值 |
显示系统中所有端口的VLAN-VPN配置信息 |
display port vlan-vpn |
display命令可以在任意视图下执行 |
注意:
如果端口被配置为IRF Fabric端口,则不允许用户执行vlan-vpn tpid命令。
l Switch A、Switch C为S3600交换机,Switch B为其他厂商的交换机(假设采用的TPID值为0x9100)。
l Switch A和Switch C的端口Ethernet1/0/1分别与两侧的用户网络相连。
l Switch B只允许VLAN 10的报文通过。
l 要求Switch A和Switch C所连接的用户网络之间能够互通非VLAN 10的报文。
(1) 配置Switch A、Switch C。
由于Switch A和Switch C的配置完全相同,以下仅以Switch A上的配置为例。
# 配置Switch A的端口Ethernet1/0/2的TPID值为0x9100,端口属于VLAN 10。
<SwitchA> system-view
[SwitchA] vlan 10
[SwitchA-vlan10] quit
[SwitchA] interface Ethernet1/0/2
[SwitchA-Ethernet1/0/2] vlan-vpn tpid 9100
[SwitchA-Ethernet1/0/2] port link-type trunk
[SwitchA-Ethernet1/0/2] port trunk permit vlan 10
# 配置Switch A的端口Ethernet1/0/1为VLAN-VPN端口,端口属于VLAN 10。
[SwitchA] interface Ethernet1/0/1
[SwitchA-Ethernet1/0/1] port access vlan 10
[SwitchA-Ethernet1/0/1] vlan-vpn enable
[SwitchA-Ethernet1/0/1] quit
(2) 配置Switch B。
由于Switch B为其他厂商的设备,此处只介绍一下配置要求:将Switch B的端口Ethernet3/1/1和Ethernet3/1/2配置为Trunk端口,且都属于VLAN 10。
& 说明:
报文从Switch A=>Switch C的转发过程如下:
l 来自用户私网侧的报文进入Switch A的端口Ethernet1/0/1后,由于此端口为VLAN-VPN端口,报文外层被打上了端口缺省的VLAN Tag(VLAN ID为10),然后转发至Ethernet1/0/2。
l 由于Ethernet1/0/2配置了VLAN-VPN TPID,交换机将报文外层VLAN Tag中的TPID值改为用户设定值0x9100,然后发送到公网网络。
l 报文进入公网中Switch B的端口Ethernet3/1/2。Switch B将该报文在VLAN 10内转发,发送到端口Ethernet3/1/1。
l 报文从Switch B的端口Ethernet3/1/1发送到另一侧的用户网络,进入Switch C的端口Ethernet1/0/2。Switch C将该报文在VLAN 10内转发,发送至端口Ethernet1/0/1。由于端口Ethernet1/0/1为Access端口,交换机去掉报文的外层VLAN Tag,恢复原来的报文。
l 反方向的转发过程相同。
配置完成以后,Switch A和Switch C所连接的用户网络就能够收到对端发来的数据包。
在城域网应用中,一个企业的多个分支机构可能会通过运营商网络进行互联。运营商通过提供VPN功能来使这些位于不同地理位置的网络组成一个“本地”局域网。这需要运营商网络提供“隧道”功能,即用户网络内产生的数据信息可以完整的通过运营商网络到达同一企业的其它网络。为了维持一个“本地”概念,不仅需要对于用户网络内的数据进行隧道传输,而且对用于维护用户网络内的某些二层协议报文也要进行隧道传输。
网络设备对于二层协议报文的处理和数据报文不同,设备首先要对二层协议报文进行识别。IEEE定义的二层协议报文都有一个特殊的目的MAC地址,并且报文有一个“类型”字段。一些厂商定义的私有协议也会遵循这个规则,用一个私有的MAC地址来识别私有协议,用“类型”字段识别具体的协议类型。
如图2-1所示,上部为运营商网络,下部为用户网络。其中,运营商网络包括报文输入/输出设备;用户网络分为用户网络A和用户网络B两个部分。通过在运营商网络两端的报文输入/输出设备上启用BPDU TUNNEL功能,可以实现用户网络的BPDU报文在运营商网络中透明传输。
l 在报文输入端,设备将来自用户网络的BPDU报文的目的MAC地址由协议特定的MAC地址的修改为普通的MAC地址(该普通MAC地址是本端设备和对端设备能够识别的一个MAC地址)。这样,在运营商网络中,BPDU报文将以正常数据报文的方式进行转发。
l 在报文输出端,设备将识别出被修改过的MAC地址,并将其恢复为原始的协议特定MAC地址,然后发送给用户侧的接入设备。对于用户侧设备来说,二层协议报文中的数据部分在进入隧道前和离开隧道后没有改变,这样“隧道”对于用户设备仿佛就是一条本地链路。通过这种方法,二层协议报文就可以运行在一个虚拟的“本地”网络上。
用户网络的BPDU报文在进入运营商网络前后的报文格式如图2-2、图2-3所示。
S3600系列以太网交换机支持对标准协议LACP(Link Aggregation Control Protocol,链路汇聚控制协议)和NDP(Neighbor Discovery Protocol,邻居发现协议),以及其它厂商的私有协议CDP和VTP使用BPDU TUNNEL进行传输。
设备上正确配置了LACP、NDP、CDP、VTP中的一个或几个功能。
操作 |
命令 |
说明 |
||
进入系统视图 |
system-view |
- |
||
开启以太网端口的BPDU TUNNEL上行端口功能 |
系统视图下 |
bpdu-tunnel uplink interface-list |
二者必选其一 缺省情况下,端口的BPDU TUNNEL上行端口功能处于关闭状态 |
|
以太网端口视图下 |
进入以太网端口视图 |
interface interface-type interface-number |
||
开启端口的BPDU TUNNEL上行端口功能 |
bpdu-tunnel uplink |
|||
退出至系统视图 |
quit |
|||
进入以太网端口视图 |
interface interface-type interface-number |
- |
||
开启协议的BPDU TUNNEL功能 |
bpdu-tunnel { lacp | ndp | cdp | vtp } |
必选 缺省情况下,端口的BPDU TUNNEL功能处于关闭状态 |
& 说明:
如果设备上存在已经使能Fabric功能的端口,将不能在该端口或其他任何端口上启动BPDU TUNNEL特性。
l Customer1、Customer2为用户网络接入设备;
l Provider1、Provider2为运营商网络接入设备,它们之间通过配置好的Trunk端口实现连接;
l 端口Ethernet1/0/1、Ethernet1/0/4配置了NDP协议的BPDU TUNNEL功能,并分别将Ethernet1/0/2和Ethernet1/0/3端口配置为BPDU TUNNEL的上行端口。
(1) Provider1的配置
# 在Ethernet1/0/1端口开启NDP协议的BPDU TUNNEL功能。
<H3C> system-view
[H3C] interface Ethernet 1/0/1
[H3C-Ethernet1/0/1] undo ndp enable
[H3C-Ethernet1/0/1] bpdu-tunnel ndp
# 在Ethernet1/0/2端口配置BPDU TUNNEL上行端口功能。
[H3C-Ethernet1/0/1] quit
[H3C] interface Ethernet 1/0/2
[H3C-Ethernet1/0/2] bpdu-tunnel uplink
(2) Provider2的配置
# 在Ethernet1/0/3端口配置BPDU TUNNEL上行端口功能。
<H3C> system-view
[H3C] interface Ethernet 1/0/3
[H3C-Ethernet1/0/3] bpdu-tunnel uplink
# 在Ethernet1/0/4端口配置NDP协议的BPDU TUNNEL功能。
[H3C-Ethernet1/0/3] quit
[H3C] interface Ethernet 1/0/4
[H3C-Ethernet1/0/4] undo ndp enable
[H3C-Ethernet1/0/4] bpdu-tunnel ndp
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!