GVRP协议与动态、静态vlan

一、GVRP协议使用场景

1、当实际组网复杂到网络管理员无法短时间内了解网络的拓扑结构,或者是整个网络的VLAN太多时,工作量会非常大,而且非常容易配置错误。在这种情况下,用户可以通过GVRP的VLAN自动注册功能完成VLAN的配置。

2、GVRP特性使得不同设备上的VLAN信息可以由协议动态维护和更新,用户只需要对少数设备进行VLAN配置即可应用到整个交换网络,无需耗费大量时间进行拓扑分析和配置管理。

3、主干结构使用的是华为系列智能网管型交换机时。

4、网络覆盖范围较大时,不建议使用GVRP协议。当需要GARP动态注册的VLAN数量较多或网络半径较大时,使用缺省定时器值可能会导致VLAN震荡、设备CPU占用率偏高。

二、GVRP协议简介

(一)GVRP协议的三类消息

GVRP协议应用实体之间的信息交换借助于消息的传递来完成,主要有三类消息起作用,分别为Join消息、Leave消息和Leave All消息。

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

Join消息分为Join Empty和Join In两种,区别如下:

(1)Join Empty:声明一个本身没有注册的属性。

(2)Join In:声明一个本身已经注册的属性。

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

Leave消息分为Leave Empty和Leave In两种,区别如下:

(1)Leave Empty:注销一个本身没有注册的属性。

(2)Leave In:注销一个本身已经注册的属性。

3、Leave All消息:每个应用实体启动后,将同时启动Leave All定时器,当该定时器超时后应用实体将对外发送Leave All消息。

Leave All消息用来注销所有的属性,以使其它应用实体重新注册本实体上所有的属性信息,以此来周期性地清除网络中的垃圾属性(例如某个属性已经被删除,但由于设备突然断电,并没有发送Leave消息来通知其他实体注销此属性)。

每个GARP应用实体启动后,将同时启动Leave All定时器,当该定时器超时后GARP应用实体将对外发送Leave All消息,随后再启动Leave All定时器,开始新的一轮循环。

(二)GVRP协议的注册模式:

手工配置的VLAN称为静态VLAN,通过GVRP协议创建的VLAN称为动态VLAN。GVRP有三种注册模式,不同的模式对静态VLAN和动态VLAN的处理方式也不同。GVRP的三种注册模式分别定义如下:

1、Normal模式:允许动态VLAN在端口上进行注册,同时会发送静态VLAN和动态VLAN的声明消息。

2、Fixed模式:不允许动态VLAN在端口上注册,只发送静态VLAN的声明消息。

3、Forbidden模式:不允许动态VLAN在端口上进行注册,同时删除端口上除VLAN1外的所有VLAN,只发送VLAN1的声明消息。

(三)VLAN的注册和注销

1、GVRP协议可以实现VLAN属性的自动注册和注销:

(1)VLAN的注册:指的是将端口加入VLAN。

(2)VLAN的注销:指的是将端口退出VLAN。

2、GVRP协议通过声明和回收声明实现VLAN属性的注册和注销。

(1)当端口接收到一个VLAN属性声明时,该端口将注册该声明中包含的VLAN信息(端口加入VLAN)。

(2)当端口接收到一个VLAN属性的回收声明时,该端口将注销该声明中包含的VLAN信息(端口退出VLAN)。

3、说明:GVRP协议的属性注册和注销仅仅是对于接收到GVRP协议报文的端口而言的。

三、拓扑图:

四、配置过程:

配置命令理解参考:

https://blog.csdn.net/weixin_43075093/article/details/130466915

https://blog.csdn.net/weixin_43075093/article/details/130662938

https://blog.csdn.net/weixin_43075093/article/details/130893922

(一)LSW1:

System-view

sysname LSW1

Gvrp

vlan batch 10 20

interface GigabitEthernet0/0/1

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

interface Ethernet0/0/1

interface Ethernet0/0/2

port link-type access

port default vlan 10

interface Ethernet0/0/3

port link-type access

port default vlan 20

(二)LSW2:

System-view

sysname LSW2

Gvrp

interface GigabitEthernet0/0/1

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

interface GigabitEthernet0/0/2

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

(三)LSW3:

System-view

sysname LSW3

gvrp

interface GigabitEthernet0/0/1

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

interface GigabitEthernet0/0/2

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

interface GigabitEthernet0/0/3

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

(四)LSW4:

System-view

sysname LSW4

gvrp

vlan batch 30 40

interface GigabitEthernet0/0/1

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

gvrp registration fixed

interface Ethernet0/0/1

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

interface Ethernet0/0/2

port link-type access

port default vlan 30

interface Ethernet0/0/3

port link-type access

port default vlan 40

(五)LSW5:

System-view

sysname LSW5

gvrp

vlan batch 50

interface GigabitEthernet0/0/1

port link-type trunk

port trunk allow-pass vlan 2 to 4094

gvrp

gvrp registration forbidden

interface Ethernet0/0/1

port link-type access

port default vlan 50

五、结果验证:

(一)在不同的交换机上查看GVRP协议的工作模式和vlan运行状态

1、在LSW1上查看动态与静态vlan:

相对LSW1来说,vlan30和vlan40是动态的;vlan10和van20是自己创建的静态vlan。vlan50被forbidden模式抑制。如下图:

2、在LSW2上查看动态与静态vlan:

相对LSW2来说,van10、20、30、40都是动态vlan,在LSW2上的2个接口运行的GVRP协议都是normal模式。LSW4的接口运行的Fixed模式:不允许动态VLAN在端口上注册,只发送静态VLAN的声明消息,所以vlan30、40能声明后由LSW3和LSW2接收到。vlan 50仍然是被forbidden模式抑制。

3、在LSW3上查看动态与静态vlan:

相对LSW3来说,3个接口都开启了GVRP的normal模式,所以也能收到vlan1、 10、20、30、40的声明,能透传这几个vlan的数据。其中vlan10、20、30、40都不是在本地创建的静态vlan,所以都是dynamic动态vlan。

4、在LSW4上查看动态与静态vlan:

由于LSW4的G0/0/1接口开启GVRP协议时使用的是fixed模式,所以只声明自己创建的静态vlan30、40,不能传递LSW1创建的vlan10、20。相对LSW4来说,LSW1创建的vlan 10、20,在自己看来属于动态vlan,所以不声明,不透传。Vlan 50仍被LSW5的forbidden模式抑制,该模式只传递vlan1。

5、在LSW5上查看动态与静态vlan:

由于LSW5的上行接口G0/0/1开启的是GVRP协议的forbidden模式,该模式只传递vlan1的声明,所以LSW5只转发vlan1和自己创建的vlan50的数据,且vlan50的数据只在本交换机内转发。

(二)抓包查看不同的消息状态

1、join empty消息:声明一个本身没有注册的属性。

2、join in消息:声明一个本身已经注册的属性。

3、Leave Empty:注销一个本身没有注册的属性消息。当一个GARP应用实体希望其它设备注销自己的属性信息时,它将对外发送Leave消息;当收到其它实体的Leave消息注销某些属性或静态注销了某些属性后,它也会向外发送Leave消息。

4、Leave in消息:注销一个本身已经注册的属性。

(1)拓扑图中,LSW1与LSW3上都创建了静态vlan10时,在LSW2上查看vlan如下图:

两端(LSW1、LSW3)都会声明动态vlan10给LSW2,如上图。

(2)在LSW1上断开G0/0/1端口

(3)在LSW2的G0/0/1接口抓包可看到leave in消息,如下图:

5、Leave All消息:每个应用实体启动后,将同时启动Leave All定时器,当该定时器超时后应用实体将对外发送Leave All消息。

至此,本文运用的GVRP协议结束,不足之处敬请批评指正。

相关推荐
PyAIGCMaster15 分钟前
ubuntu装P104驱动
linux·运维·ubuntu
奈何不吃鱼15 分钟前
【Linux】ubuntu依赖安装的各种问题汇总
linux·运维·服务器
爱码小白21 分钟前
网络编程(王铭东老师)笔记
服务器·网络·笔记
zzzhpzhpzzz29 分钟前
Ubuntu如何查看硬件型号
linux·运维·ubuntu
蜜獾云31 分钟前
linux firewalld 命令详解
linux·运维·服务器·网络·windows·网络安全·firewalld
陌北v133 分钟前
Docker Compose 配置指南
运维·docker·容器·docker-compose
柒烨带你飞43 分钟前
路由器转发数据报的封装过程
网络·智能路由器
只会copy的搬运工1 小时前
Jenkins 持续集成部署——Jenkins实战与运维(1)
运维·ci/cd·jenkins
娶不到胡一菲的汪大东1 小时前
Ubuntu概述
linux·运维·ubuntu
阿里嘎多学长1 小时前
docker怎么部署高斯数据库
运维·数据库·docker·容器