GVRP (GARP VLAN Registration Protocol),中文名为 GARP VLAN 注册协议,是GARP (Generic Atrribute Registration Protocol , 通用属性注册协议)的一种应用,用于注册和注销VLAN 属性。使得交换机之间能够相互交换 VLAN 配置信息,动态创建和管理 VLAN。用户只需要对少数交换机进行 VLAN 配置即可动态地传播 VLAN 信息。
手工配置的 VLAN 称为静态VLAN,通过 GVRP 协议创建的 VLAN 称为动态 VLAN 。GVRP 有 3 种注册模式,不同模式对静态 VLAN 和动态 VLAN 的处理方式也不同。
normal:
fixed:
forbidden:
========
normal:
允许在该接口静态(本交换机创建的VLAN)和动态(其他交换机创建的VLAN,动态注册到本交换机的VLAN)创建、注册、注销VLAN。
即:可以传送本交换机创建的VLAN,可以把本交换机的VLAN传输到其他配有normal类型的trunk端口,可以接受对端交换机创建的VLAN(动态)注册。
注意:GVRP会自动裁剪不需要传输的VLAN,但只要需要传输,仍可以传输。
fixed:
允许手工静态创建和注册VLAN,静止动态注册、声明和注销VLAN。
即:可以传送本交换机创建的VLAN(静态),可以把本交换机的VLAN通过fixed注册类型trunk端口传到对端配有normal类型的trunk端口,不接受与本交换机fixed类型的trunk端口的对端交换机创建的VLAN的注册。
可传递出去,但不接受动态注册、注销VLAN信息。
forbidden:
注销除VLAN1以外的所有VLAN,并且禁止该接口上创建、声明、注册其他任何VLAN。
即此类型trunk 接口不传递、接受除VLAN1外的任何其他VLAN信息。
注:GVRP与VTP不同之处:GVRP每个交换机都可以创建VLAN,vtp只有服务器端可以创建VLAN。
补充:当华为交换机TRUNK口加了FIXED之后则其它交换可收到本交换加的VLAN,而本交换收不到其它的所建VLAN,是一种智能多创建模式GVRP
交换机之间的链路为 Trunk
将 4 台交换机之间所有互连的接口配置为 Trunk,并允许所有 VLAN 通过。
SW1:
sy sys SW1 int g0/0/1 port link-type trunk port trunk allow-pass vlan all qSW2:
sy sys SW2 int g0/0/1 port link-type trunk port trunk allow-pass vlan all int g0/0/2 port link-type trunk port trunk allow-pass vlan all qSW3:
sy sys SW3 int g0/0/1 port link-type trunk port trunk allow-pass vlan all int g0/0/2 port link-type trunk port trunk allow-pass vlan all qSW4:
sy sys SW4 int g0/0/1 port link-type trunk port trunk allow-pass vlan all q配置 GVRP 单向注册
在公司的二层网络中,有 IT 和 HR 两个不同的部门,需要将它他划分到不同的 VLAN中去。如果按照常规配置方法,要手工在所有交换机上都创建相应的 VLAN,后续如果要有新的部门需要新增 VLAN,或者二层网络整改,都要随之修改 VLAN 配置,配置量非常大且易出错,现网络管理员采用 GVRP 来完成 VLAN 配置。
在SW1 上创建 VLAN 10 ,20 ,将连接 PC 接口改为 access ,划入到相应的 VLAN中。
在全局模式下开启GVRP 功能,并在交换机两两互连的接口下开启GVRP。默认为 normal 模式
SW1:
vlan batch 10 20 int e0/0/1 port link-type access port default vlan 10 int e0/0/2 port link-type access port default vlan 20 q gvrp int g0/0/1 gvrp qSW2:
gvrp int g0/0/1 gvrp int g0/0/2 gvrp qSW3:
gvrp int g0/0/1 gvrp int g0/0/2 gvrp qSW4:
gvrp int g0/0/1 gvrp q配置完成后,在SW2 SW3 SW4 上查看 VLAN 信息
可以看 SW2 、SW3、 SW4 都动态获得了 VLAN 10 和 VLAN 20 ,但在 SW2 上只有 g0/0/2加入了这两个 VLAN,同样, SW3、 SW4 只有 g0/0/1 加入了这两个 VLAN,这是因为此时在 SW2、 SW3 、SW4上只有左侧的端口收到了 GVRP 的注册消息,此时只完成了单向注册。
VLAN 10 内的两个 PC 测试连通性
PC 1 ping PC3,发现无法通信,再次验证了此时只完成了单向注册。
配置 GVRP 双向注册
现需要在 SW4上也手工创建 VLAN 10 和 VLAN 20 ,并把相应的接口划到 VLAN 中
SW4:
vlan batch 10 20
int e0/0/1
port link-type access
port default vlan 10
int e0/0/2
port link-type access
port default vlan 20
q
在SW2 上查看 VLAN 信息,可以看到 SW2 的右侧也加入了 VLAN 10 和VLAN 20 ,因为从右侧也收到了 SW4 的GVRP 注册消息,此时完成了双向注册。
PC1 与 PC3 可以相互通信
PC>ping 192.168.1.3
如果现在公司网络整改,需要添加新的汇聚交换机,或者替换新款设备,或者增删 VLAN 配置,都可以通过 GVRP动态实现自动配置,不再需要手工配置。
配置 GVRP 的 Fixed 模式
将 SW3 的 g0/0/1 接口下的 GVRP 注册模式修改为 Fixed 模式
SW3:
int g0/0/1
gvrp registration fixed
q
在SW3上查看GVRP信息,display gvrp statistics
查看 SW3 的 VLAN 信息
发现 g0/0/1 接口已经无法动态学习到 VLAN 信息,这是由于 Fixed 模式下不允许动态 VLAN 在接口上注册,相应部门内跨交换机的两台 PC 就无法通信。
这时的解决办法有两种,一种是在SW3 上手工创建 VLAN 10 和 VLAN 20 ,另一种是恢复 g0/0/1 接口下的 GVRP 注册模式为 normal 模式。
配置 GVRP 的 Forbidden 模式
在SW2 的 g0/0/1 接口下将 GVRP 的注册模式修改为 Forbidden 模式
SW2:
int g0/0/1
gvrp registration forbidden
q
配置完成后,在SW2 上查看 VLAN 信息,可以看到此时 VLAN 10 和 VLAN 20 中都没有g0/0/1 接口加入
在SW2 上手工创建 VLAN 10 和 VLAN 20 ,再查看 VLAN 信息
SW2:
vlan batch 10 20
结果还是一样,接口 g0/0/1 仍然没有加入到 VLAN 10 和 VLAN 20 中,这是因为 g0/0/1 接口下的注册模式配置为 Forbidden模式后,将只允许 VLAN 1 通过。