一種動態管理虛擬區域網(VLAN)的協議:GVRP

小橘哇發表於2024-03-13

技術介紹:

在對交換機進行VLAN配置的時候,需要在每一臺交換機上手工建立該交換機需要涉及到的所有VLAN,並且需要手工將交換機上的各個埠加入到相應的VLAN中去。如果交換機及 VLAN 的數量太多,特別是 VLAN 的數量又經常變化時,這種手工配置方式既耗費時間和精力,又非常容易出錯。

為此,IEEE制定了一個名為GARP(Generic Attribute Registration Protocol,通用屬性註冊協議)的框架協議,該框架協議包含了兩個具體的協議,分別稱為

GMRP (GARP Multicast Registration Protocl,簡稱GMRP)和GVRP(GARP VLAN Registration Protocl,簡稱GVRP)。GVRP的應用,可以大大地降低VLAN配置過程中的手工工作量。

在涉及 GVRP 協議的應用時,我們通常將交換機上手工建立的 VLAN 稱為靜態VLAN,而將交換機利用GVRP協議自動建立的VLAN稱為動態VLAN。GVRP協議提供了一種在交換機之間傳遞 VLAN 屬性的機制,其主要作用是自動實現 VLAN 資訊在交換機上的動態註冊過程和登出過程。交換機上部署了GVRP協議後,使用者只需要對少量的交換機進行靜態 VLAN 配置,便可將這些 VLAN 配置資訊傳遞並應用到其他的交換機上。

一種動態管理虛擬區域網(VLAN)的協議:GVRP

如圖所示,PC1和PC2都被劃分到VLAN 10,因此所有的交換機上都要進行針對VLAN 10的配置。

假設交換機LSW1、LSW2、LSW3、LSW4都已經全域性使能了GVRP功能,並且相關的埠(LSW1的GE0/0/2LSW2的GE0/0/1和GE0/0/2LSW3的GE0/0/1和GE0/0/2LSW4的GE0/0/1)也都使能了GVRP功能,

那麼當使用者在交換機LSW1上手工建立了靜態VLAN 10,並且配置LSW1的GE0/0/1埠允許屬於VLAN 10的幀透過之後,LSW1的GE0/0/1埠便會向外傳送VLAN屬性的註冊報文。

LSW2透過其GE0/0/1埠接收到LSW1傳送過來的VLAN屬性註冊報文後,會自動建立動態VLAN 10,並將自己的GE0/0/1埠註冊到(加入進)動態VLAN 10中。然後, LSW2會透過其GE0/0/2埠向外傳送VLAN屬性註冊報文。需要注意的是,只有從鏈路上接收到VLAN屬性註冊報文的埠才會註冊到相應的VLAN中,所以LSW2的GE0/0/2埠現在並未註冊到動態VLAN 10中。

LSW3透過其GE0/0/1埠接收到LSW2傳送過來的VLAN屬性註冊報文後,會自動建立動態VLAN 10,並將自己的GE0/0/1埠註冊到動態VLAN 10中。然後,LSW3會透過其GE0/0/2埠向外傳送VLAN屬性註冊報文。需要注意的是,LSW3的GE0/0/2埠現在並未註冊到動態VLAN 10中。

LSW4透過其GE0/0/1埠接收到LSW3傳送過來的VLAN屬性註冊報文後,會自動建立動態VLAN 10,並將自己的GE0/0/1埠註冊到動態VLAN 10中。

一種動態管理虛擬區域網(VLAN)的協議:GVRP

在上述由LSW1向LSW4傳遞關於VLAN 10的資訊過程中,LSW2、LSW3、LSW4上自動建立了動態VLAN 10,並且LSW2的GE0/0/1埠、LSW3的GE0/0/1埠、LSW4的GE0/0/1埠已經註冊到VLAN 10中(這個過程稱為VLAN屬性的單向註冊過程)。但是,到目前為止,LSW2的GE0/0/2埠和LSW3的GE0/0/2埠還未註冊到VLAN 10中,所以,使用者還必須在S4上手工建立靜態VLAN 10,並配置LSW4的GE0/0/1埠允許透過屬於VLAN 10的幀。

如圖,在LSW4上手工建立靜態VLAN 10,並配置LSW4的GE0/0/1埠允許透過屬於 VLAN 10的幀。注意,所配置的靜態 VLAN 10的資訊會替換掉 S4上的動態VLAN 10的資訊。然後,LSW4的GE0/0/1埠會向外傳送VLAN屬性的註冊報文。

LSW3透過其GE0/0/2埠接收到LSW4傳送過來的VLAN屬性註冊報文後,會將自己的GE0/0/2埠註冊到已經被建立了的動態VLAN 10中。然後,LSW3會透過其GE0/0/1埠向外傳送VLAN屬性註冊報文。

LSW2透過其GE0/0/2埠接收到LSW3傳送過來的VLAN屬性註冊報文後,會將自己的GE0/0/2埠註冊到已經被建立了的動態VLAN 10中。然後,LSW2會透過其GE0/0/1埠向外傳送VLAN屬性註冊報文。

LSW1的GE0/0/1埠也會接收到LSW2傳送過來的VLAN屬性註冊報文。由於LSW1上以及LSW1的GE0/0/1埠上已經有了關於靜態VLAN 10的相關資訊,所以LSW1不會進行涉及動態VLAN 10的相關操作。

提示:

當網路中的VLAN數量需要增加時,我們可以利用GVRP協議來進行VLAN的自動建立和註冊。同樣,當網路中的VLAN數量需要減少時,我們也可以利用GVRP協議來進行VLAN的自動刪除和登出。

配置示例

一種動態管理虛擬區域網(VLAN)的協議:GVRP

如圖所示,PC1和PC2被劃分至VLAN 10中,我們希望GVRP協議來實現VLAN 10的自動建立和註冊。

LSW1配置:

[XJWS1]dis cu
#
sysname XJWS1
#
vlan batch 10
#
gvrp
#
cluster enable
ntdp enable
ndp enable
#
drop illegal-mac alarm
#
diffserv domain default
#
drop-profile default
#
aaa
 authentication-scheme default
 authorization-scheme default
 accounting-scheme default
 domain default
 domain default_admin
 local-user admin password simple admin
 local-user admin service-type http
#
interface Vlanif1
#
interface MEth0/0/1
#
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 10
#
interface GigabitEthernet0/0/2
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
 gvrp
#
interface GigabitEthernet0/0/3
#
interface GigabitEthernet0/0/4
#
interface GigabitEthernet0/0/5
#
interface GigabitEthernet0/0/6
#
interface GigabitEthernet0/0/7
#
interface GigabitEthernet0/0/8
#
interface GigabitEthernet0/0/9
#
interface GigabitEthernet0/0/10
#
interface GigabitEthernet0/0/11
#
interface GigabitEthernet0/0/12
#
interface GigabitEthernet0/0/13
#
interface GigabitEthernet0/0/14
#
interface GigabitEthernet0/0/15
#
interface GigabitEthernet0/0/16
#
interface GigabitEthernet0/0/17
#
interface GigabitEthernet0/0/18
#
interface GigabitEthernet0/0/19
#
interface GigabitEthernet0/0/20
#
interface GigabitEthernet0/0/21
#
interface GigabitEthernet0/0/22
#
interface GigabitEthernet0/0/23
#
interface GigabitEthernet0/0/24
#
interface NULL0
#
user-interface con 0
user-interface vty 0 4
#
return
[XJWS1]

LSW2配置:

[XJWS2]display gvrp status
 Info: GVRP is enabled
[XJWS2]display vlan summary
static vlan:
Total 1 static vlan.
  1 

dynamic vlan:
Total 1 dynamic vlan.
10

reserved vlan:
Total 0 reserved vlan.
[XJWS2]
[XJWS2]dis cu

sysname XJWS2

gvrp

cluster enable
ntdp enable
ndp enable

drop illegal-mac alarm

diffserv domain default

drop-profile default

aaa
authentication-scheme default
authorization-scheme default
accounting-scheme default
domain default
domain default_admin
local-user admin password simple admin
local-user admin service-type http

interface Vlanif1

interface MEth0/0/1

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

interface GigabitEthernet0/0/4

interface GigabitEthernet0/0/5

interface GigabitEthernet0/0/6

interface GigabitEthernet0/0/7

interface GigabitEthernet0/0/8

interface GigabitEthernet0/0/9

interface GigabitEthernet0/0/10

interface GigabitEthernet0/0/11

interface GigabitEthernet0/0/12

interface GigabitEthernet0/0/13

interface GigabitEthernet0/0/14

interface GigabitEthernet0/0/15

interface GigabitEthernet0/0/16

interface GigabitEthernet0/0/17

interface GigabitEthernet0/0/18

interface GigabitEthernet0/0/19

interface GigabitEthernet0/0/20

interface GigabitEthernet0/0/21

interface GigabitEthernet0/0/22

interface GigabitEthernet0/0/23

interface GigabitEthernet0/0/24

interface NULL0

user-interface con 0
user-interface vty 0 4

return
[XJWS2]

LSW3配置:

[XJWS3-GigabitEthernet0/0/2]dis cu
#
sysname XJWS3
#
gvrp
#
cluster enable
ntdp enable
ndp enable
#
drop illegal-mac alarm
#
diffserv domain default
#
drop-profile default
#
aaa
 authentication-scheme default
 authorization-scheme default
 accounting-scheme default
 domain default
 domain default_admin
 local-user admin password simple admin
 local-user admin service-type http
#
interface Vlanif1
#
interface MEth0/0/1
#
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
#
interface GigabitEthernet0/0/4
#
interface GigabitEthernet0/0/5
#
interface GigabitEthernet0/0/6
#
interface GigabitEthernet0/0/7
#
interface GigabitEthernet0/0/8
#
interface GigabitEthernet0/0/9
#
interface GigabitEthernet0/0/10
#
interface GigabitEthernet0/0/11
#
interface GigabitEthernet0/0/12
#
interface GigabitEthernet0/0/13
#
interface GigabitEthernet0/0/14
#
interface GigabitEthernet0/0/15
#
interface GigabitEthernet0/0/16
#
interface GigabitEthernet0/0/17
#
interface GigabitEthernet0/0/18
#
interface GigabitEthernet0/0/19
#
interface GigabitEthernet0/0/20
#
interface GigabitEthernet0/0/21
#
interface GigabitEthernet0/0/22
#
interface GigabitEthernet0/0/23
#
interface GigabitEthernet0/0/24
#
interface NULL0
#
user-interface con 0
user-interface vty 0 4
#
return

LSW4配置:

[XJWS4]dis cu
#
sysname XJWS4
#
vlan batch 10
#
gvrp
#
cluster enable
ntdp enable
ndp enable
#
drop illegal-mac alarm
#
diffserv domain default
#
drop-profile default
#
aaa
 authentication-scheme default
 authorization-scheme default
 accounting-scheme default
 domain default
 domain default_admin
 local-user admin password simple admin
 local-user admin service-type http
#
interface Vlanif1
#
interface MEth0/0/1
#
interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
 gvrp
#
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 10
#
interface GigabitEthernet0/0/3
#
interface GigabitEthernet0/0/4
#
interface GigabitEthernet0/0/5
#
interface GigabitEthernet0/0/6
#
interface GigabitEthernet0/0/7
#
interface GigabitEthernet0/0/8
#
interface GigabitEthernet0/0/9
#
interface GigabitEthernet0/0/10
#
interface GigabitEthernet0/0/11
#
interface GigabitEthernet0/0/12
#
interface GigabitEthernet0/0/13
#
interface GigabitEthernet0/0/14
#
interface GigabitEthernet0/0/15
#
interface GigabitEthernet0/0/16
#
interface GigabitEthernet0/0/17
#
interface GigabitEthernet0/0/18
#
interface GigabitEthernet0/0/19
#
interface GigabitEthernet0/0/20
#
interface GigabitEthernet0/0/21
#
interface GigabitEthernet0/0/22
#
interface GigabitEthernet0/0/23
#
interface GigabitEthernet0/0/24
#
interface NULL0
#
user-interface con 0
user-interface vty 0 4
#
return
[XJWS4]

配置驗證:

1)可以使用命令display gvrp status,檢視全域性GVRP的使能情況。

[XJWS1]dis gvrp status 
 Info: GVRP is enabled

2)可以使用命令display gvrp statistics,檢視埠的GVRP統計資訊。

[XJWS3]display gvrp statistics 

GVRP statistics on port GigabitEthernet0/0/1
GVRP status : Enabled
GVRP registrations failed : 0
GVRP last PDU origin : 4c1f-cc30-75cd
GVRP registration type : Normal

GVRP statistics on port GigabitEthernet0/0/2
GVRP status : Enabled
GVRP registrations failed : 0
GVRP last PDU origin : 0000-0000-0000
GVRP registration type : Normal
[XJWS3]

[XJWS4]display gvrp statistics

  GVRP statistics on port GigabitEthernet0/0/1 
    GVRP status				: Enabled
    GVRP registrations failed		: 0
    GVRP last PDU origin		: 4c1f-cc87-1731
    GVRP registration type		: Normal
[XJWS4]

相關文章