H3C-- GVRP配置

2020-01-13 16:26:11 浏览数 (1)

GVRP配置

1.1  GVRP简介

GVRP(GARP VLAN Registration Protocol,GARP VLAN注册协议)是GARP(Generic Attribute Registration Protocol,通用属性注册协议)的一种应用。下面首先介绍一下GARP的相关内容。

1.1.1  GARP简介

GARP提供了一种机制,用于协助同一个局域网内的交换成员之间分发、传播和注册某种信息(如VLAN、组播信息等)。

GARP本身不作为一个实体存在于设备中,遵循GARP协议的应用实体称为GARP应用,GVRP就是GARP的一种应用。当GARP应用实体存在于设备的某个端口上时,该端口对应于一个GARP应用实体。

1. GARP消息和定时器

(1)  GARP消息

GARP成员之间的信息交互借助于消息的传递来完成,主要有三类消息起作用,分别为Join消息、Leave消息和LeaveAll消息。

l  当一个GARP应用实体希望其它设备注册自己的属性信息时,它将对外发送Join消息;当收到其它实体的Join消息或本设备静态配置了某些属性,需要其它GARP应用实体进行注册时,它也会向外发送Join消息。

l  当一个GARP应用实体希望其它交换机注销自己的某属性信息时,它将对外发送Leave消息;当收到其它实体的Leave消息注销某些属性或静态注销了某些属性后,它也会向外发送Leave消息。

l  每个GARP应用实体启动后,将同时启动LeaveAll定时器,当该定时器超时后GARP应用实体将对外发送LeaveAll消息,LeaveAll消息用来注销所有的属性,以使其它GARP应用实体重新注册本实体上所有的属性信息。

Leave消息、LeaveAll消息与Join消息配合确保属性的注销或重新注册。

通过消息交互,所有待注册的属性信息可以传播到同一局域网内开启了GARP功能的所有设备上。

(2)  GARP定时器

GARP消息发送的时间间隔是通过定时器来实现的,GARP定义了四种定时器,用于控制GARP消息的发送周期:

l  Hold定时器:当GARP应用实体接收到其它设备发送的注册信息时,不会立即将该注册信息作为一条Join消息对外发送,而是启动Hold定时器。当该定时器超时后,GARP应用实体将此时段内收到的所有注册信息放在同一个Join消息中向外发送,从而节省带宽资源。

l  Join定时器:GARP应用实体可以通过将每个Join消息向外发送两次来保证消息的可靠传输,在第一次发送的Join消息没有得到回复的时候,GARP应用实体会第二次发送Join消息。两次Join消息发送之间的时间间隔用Join定时器来控制。

l  Leave定时器:当一个GARP应用实体希望注销某属性信息时,将对外发送Leave消息,接收到该消息的GARP应用实体启动Leave定时器,如果在该定时器超时之前没有收到Join消息,则注销该属性信息。

l  LeaveAll定时器:每个GARP应用实体启动后,将同时启动LeaveAll定时器,当该定时器超时后,GARP应用实体将对外发送 LeaveAll消息,以使其它GARP应用实体重新注册本实体上所有的属性信息。随后再启动LeaveAll定时器,开始新的一轮循环。

&  说明:

l  GARP定时器的值将应用于所有在同一局域网内运行的GARP应用(如GVRP)。

l  Hold定时器、Join定时器和Leave定时器的值可以在每个以太网端口单独进行设置;而LeaveAll定时器只需在设备的全局进行设置即可,设置完成后,该值将在设备的所有端口上生效。

l  在全网有多台设备的情况下,各个设备的LeaveAll定时器的取值可能不相同,但各设备都将以全网时间段最小的LeaveAll定时器为准发送 LeaveAll消息。因为每次发送LeaveAll消息时,其它设备接收到之后都会清零LeaveAll定时器,因此即使全网存在很多不同的 LeaveAll定时器,也只有时间段最小的那个LeaveAll定时器起作用。

2. GARP运行过程

通过GARP机制,一个GARP成员上的配置信息 会迅速传播到整个局域网。GARP成员可以是终端工作站或网桥。GARP成员通过声明或回收声明来通知其它的GARP成员注册或注销自己的属性信息,并根 据其它GARP成员的声明或回收声明来注册或注销其它GARP成员的属性信息。当端口接收到一个属性声明时,该端口将注册该属性,如果端口接收到回收属性 的声明,该端口将注销该属性。

GARP应用实体的协议数据报文以特定的组播MAC地址为目的MAC。设备在接收到GARP应用实体的报文后,会根据其目的MAC地址加以区分并交给不同的GARP应用(如GVRP)去处理。

3. GARP的报文格式

GARP的报文格式如下图所示。

图1-1 GARP报文格式

各个字段的说明如表1-1所示。

表1-1 各个字段的说明

字段

含义

取值

Protocol ID

协议ID

取值为1

Message

消息,每个Message由Attribute Type、Attribute List构成

-

Attribute Type

属性类型,由具体的GARP的应用定义

对于GVRP,属性类型为0x01,表示属性取值为VLAN ID

Attribute List

属性列表,由多个属性构成

-

Attribute

属性,每个属性由Attribute Length、Attribute Event、Attribute Value构成 LeaveAll Attribute由Attribute Length、LeaveAll Event构成

-

Attribute Length

属性长度

2~255,单位为字节

Attribute Event

属性描述的事件

0:LeaveAll Event 1:JoinEmpty Event 2:JoinIn Event 3:LeaveEmpty Event 4:LeaveIn Event 5:Empty Event

Attribute Value

属性取值

GVRP的属性取值为VLAN ID,但LeaveAll属性的Attribute Value值无效

End Mark

结束标志、GARP的PDU(协议数据单元)的结尾标志

以0x00取值表示

1.1.2  GVRP简介

GVRP是GARP的一种应用。它基于GARP的工作机制,用来维护设备中的VLAN动态注册信息,并传播该信息到其它交换机。

设备启动GVRP特性后,能够接收来自其它设备的 VLAN注册信息,并动态更新本地的VLAN注册信息,包括当前的VLAN成员、这些VLAN成员可以通过哪个端口到达等。而且设备能够将本地的VLAN 注册信息向其它设备传播,以使同一局域网内所有设备的VLAN信息达成一致。GVRP传播的VLAN注册信息既包括本地手工配置的VLAN静态注册信息, 也包括来自其它设备的VLAN动态注册信息。

GVRP的端口注册模式有三种:Normal、Fixed和Forbidden,各模式描述如下。

l  Normal模式:允许该端口动态注册、注销VLAN,传播动态VLAN以及静态VLAN信息。

l  Fixed模式:禁止该端口动态注册、注销VLAN,只传播静态VLAN信息,不传播动态VLAN信息。该端口只允许静态VLAN通过,即只对其它GARP成员传播静态VLAN信息。

l  Forbidden模式:禁止该端口动态注册、注销VLAN。该端口只允许缺省VLAN(即VLAN1)通过,即只对其他GARP成员传播VLAN1的信息。

1.1.3  协议规范

GVRP在IEEE 802.1Q标准文本中有详细的表述。

1.2  GVRP配置

1.2.1  GVRP配置任务简介

表1-2 GVRP配置任务简介

配置任务

说明

详细配置

启动GVRP

必选

1.2.2

配置GVRP定时器

可选

1.2.3

配置GVRP注册模式

可选

1.2.4

1.2.2  启动GVRP

1. 配置准备

需要启动GVRP的端口已经配置为Trunk端口。

2. 配置步骤

表1-3 启动GVRP

操作

命令

说明

进入系统视图

system-view

-

开启全局GVRP

gvrp

必选 缺省情况下,全局GVRP处于关闭状态

进入以太网端口视图

interface interface-type interface-number

-

开启端口GVRP

gvrp

必选 缺省情况下,端口GVRP处于关闭状态

&  说明:

Trunk端口上使能GVRP后,交换机不允许用户改变端口的Trunk类型为其他类型。

1.2.3  配置GVRP定时器

表1-4 配置GVRP定时器

操作

命令

说明

进入系统视图

system-view

-

配置LeaveAll定时器

garp timer leaveall timer-value

可选 缺省情况下,LeaveAll定时器为1000厘秒

进入以太网端口视图

interface interface-type interface-number

-

配置Hold定时器、Join定时器和Leave定时器

garp timer { hold | join | leave }timer-value

可选 缺省情况下,Hold定时器为10厘秒,Join定时器为20厘秒,Leave定时器为60厘秒

需要注意的是:

l  各定时器的取值必须是5厘秒的倍数。

l  各定时器的取值范围会由于与它相关的定时器取值的改变而改变。如果用户想要设置的定时器的值不在当前可以设置的取值范围内,可以通过改变相关定时器的取值实现。

各个定时器的取值范围之间的关系如表1-5所示。

表1-5 各个定时器的取值范围之间的关系

定时器

取值下限

取值上限

Hold定时器

10厘秒

上限小于等于1/2 Join定时器的值,可以通过改变Join定时器的取值改变

Join定时器

下限大于等于2倍Hold定时器的值,可以通过改变Hold定时器的取值改变

上限小于1/2 Leave定时器的取值,可以通过改变Leave定时器的取值改变

Leave定时器

下限大于2倍Join定时器的值,可以通过改变Join定时器的取值改变

上限小于LeaveAll定时器的值,可以通过改变LeaveAll定时器的取值改变

LeaveAll定时器

下限大于所有端口Leave定时器的值,可以通过改变Leave定时器的取值改变

32765厘秒

&  说明:

在实际组网中,建议用户将GVRP定时器配置为以下的推荐值:

l  GARP Hold定时器:100厘秒(1秒钟)

l  GARP Join定时器:600厘秒(6秒钟)

l  GARP Leave定时器:3000厘秒(30秒钟)

l  GARP LeaveAll定时器:12000厘秒(2分钟)

1.2.4  配置GVRP注册模式

表1-6 配置GVRP注册模式

操作

命令

说明

进入系统视图

system-view

-

进入以太网端口视图

interface interface-type interface-number

-

配置GVRP端口注册模式

gvrp registration { fixed | forbidden | normal}

可选 缺省情况下,GVRP端口注册模式为Normal

1.3  GVRP显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后GARP、GVRP的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除GARP的统计信息。

表1-7 GVRP显示和维护

操作

命令

说明

显示GARP统计信息

displaygarp statistics [ interface interface-list ]

display命令可以在任意视图下执行

显示GARP定时器的值

displaygarp timer [ interface interface-list ]

显示GVRP统计信息

display gvrp statistics [interfaceinterface-list ]

显示GVRP的全局状态信息

display gvrp status

清除GARP统计信息

reset garp statistics [ interface interface-list ]

1.4  GVRP典型配置举例

1.4.1  GVRP典型配置举例

1. 组网需求

l  为了使SwitchC和SwitchE上的VLAN配置能够应用到整个交换网络,需要在各交换机上启动GVRP,从而达到动态注册和更新VLAN信息的目的。

l  用户可以通过以太网端口注册模式的改变,实现交换网内部分VLAN的互通。

2. 组网图

图1-2 配置GVRP组网图

3. 配置步骤

(1)  配置SwitchA

# 开启全局GVRP。

<SwitchA> system-view

[SwitchA] gvrp

# 将以太网端口GigabitEthernet1/0/1配置为Trunk端口,并允许所有VLAN通过。

[SwitchA] interface GigabitEthernet 1/0/1

[SwitchA-GigabitEthernet1/0/1] port link-type trunk

[SwitchA-GigabitEthernet1/0/1] port trunk permit vlan all

# 在以太网端口GigabitEthernet1/0/1上开启GVRP。

[SwitchA-GigabitEthernet1/0/1] gvrp

[SwitchA-GigabitEthernet1/0/1] quit

# 将以太网端口GigabitEthernet1/0/2配置为Trunk端口,并允许所有VLAN通过。

[SwitchA] interface GigabitEthernet 1/0/2

[SwitchA-GigabitEthernet1/0/2] port link-type trunk

[SwitchA-GigabitEthernet1/0/2] port trunk permit vlan all

# 在以太网端口GigabitEthernet1/0/2上开启GVRP。

[SwitchA-GigabitEthernet1/0/2] gvrp

[SwitchA-GigabitEthernet1/0/2] quit

# 将以太网端口GigabitEthernet1/0/3配置为Trunk端口,并允许所有VLAN通过。

[SwitchA] interface GigabitEthernet 1/0/3

[SwitchA-GigabitEthernet1/0/3] port link-type trunk

[SwitchA-GigabitEthernet1/0/3] port trunk permit vlan all

# 在以太网端口GigabitEthernet1/0/3上开启GVRP。

[SwitchA-GigabitEthernet1/0/3] gvrp

[SwitchA-GigabitEthernet1/0/3] quit

(2)  配置SwitchB

# 配置过程可参见SwitchA的配置。

(3)  配置SwitchC

# 开启GVRP功能可参见SwitchA的配置。

# 配置VLAN5。

[SwitchC] vlan 5

[SwitchC-vlan5] quit

(4)  配置SwitchD

# 开启GVRP功能可参见SwitchA的配置。

# 配置VLAN8。

[SwitchD] vlan 8

[SwitchD-vlan8] quit

(5)  配置SwitchE

# 开启GVRP功能可参见SwitchA的配置。

# 配置VLAN5和VLAN7。

[SwitchE] vlan 5

[SwitchE-vlan5] quit

[SwitchE] vlan 7

[SwitchE-vlan7] quit

(6)  显示SwitchA、SwitchB和SwitchE上动态注册的VLAN信息。

# 显示SwitchA上的动态VLAN信息。

[SwitchA] display vlan dynamic

Total 3 dynamic VLAN exist(s).

The following dynamic VLANs exist:

5, 7, 8,

# 显示SwitchB上的动态VLAN信息。

[SwitchB] display vlan dynamic

Total 3 dynamic VLAN exist(s).

The following dynamic VLANs exist:

5, 7, 8,

# 显示SwitchE上的动态VLAN信息。

[SwitchE] display vlan dynamic

Total 1 dynamic VLAN exist(s).

The following dynamic VLANs exist:

8

(7)  配置SwitchE的以太网端口GigabitEthernet1/0/1的注册模式为fixed,显示SwitchA、SwitchB和SwitchE上动态注册的VLAN信息。

# 配置SwitchE的以太网端口GigabitEthernet1/0/1的注册模式为fixed。

[SwitchE] interface GigabitEthernet 1/0/1

[SwitchE-GigabitEthernet1/0/1] gvrp registration fixed

# 显示SwitchA上的动态VLAN信息。

[SwitchA] display vlan dynamic

Total 3 dynamic VLAN exist(s).

The following dynamic VLANs exist:

5, 7, 8,

# 显示SwitchB上的动态VLAN信息。

[SwitchB] display vlan dynamic

Total 3 dynamic VLAN exist(s).

The following dynamic VLANs exist:

5, 7, 8,

# 显示SwitchE上的动态VLAN信息。

[SwitchE-GigabitEthernet1/0/1] display vlan dynamic

No dynamic vlans exist!

(8)  配置SwitchE的以太网端口GigabitEthernet1/0/1的注册模式为forbidden,显示SwitchA、SwitchB和SwitchE上动态注册的VLAN信息。

# 配置SwitchE的以太网端口GigabitEthernet1/0/1的注册模式为forbidden。

[SwitchE-GigabitEthernet1/0/1] gvrp registration forbidden

# 显示SwitchA上的动态VLAN信息。

[SwitchA] display vlan dynamic

Total 2 dynamic VLAN exist(s).

The following dynamic VLANs exist:

5, 8,

# 显示SwitchB上的动态VLAN信息。

[SwitchB] display vlan dynamic

Total 2 dynamic VLAN exist(s).

The following dynamic VLANs exist:

5, 8,

# 显示SwitchE上的动态VLAN信息。

[SwitchE] display vlan dynamic

No dynamic vlans exist!

0 人点赞