什么是 VTP 模式?
VLAN 中继协议是一种 Cisco 专有协议,用于由 Cisco 交换机传达 VLAN 信息。通过VTP,用户可以同步VLAN名称、VLAN ID等VLAN信息;与同一域内的 Cisco 交换机。这些 VTP 域是一组具有类似 VTP 域名、版本、密码和一些其他 VTP 设置的中继交换机。同一域内的所有 Cisco 交换机彼此共享其 VLAN 数据。
VTP 共有三个版本,即V1、V2 和V3。 V1 和 V2 版本相似,只是 V2 支持令牌环 VLAN,而 V3 则完全不同,因为它增加了以下功能:
- V3 支持扩展 VLAN(1006 到 4094)。而 V1 和 V2 只能广播 VLAN 1 到 1005。
- V3 支持私有 VLAN。
- V3 支持 VTP 主服务器和辅助服务器。
- 它还支持增强的身份验证。
- V3 向后兼容 V1 和 V2。
- V3 能够基于每个端口进行配置。
VTP 模式:
用户可以将交换机配置为在以下任一 VTP 模式下工作:
- 服务器 -
在 VTP 服务器模式下,用户可以创建 VLAN、修改和删除 VLAN,还可以为整个域指定额外的配置约束,例如 VTP 修剪和 VTP 版本。这些服务器将其 VLAN 配置提升到存在于同一域中的其他交换机,并且它们还根据中继链路上确认的公告将其配置与其他交换机同步。 VTP 中的默认模式是服务器。 - 客户 -
VTP 客户端的行为方式与 VTP 服务器类似,但用户无法更改、创建或删除 VLAN。 - 透明 -
VTP 透明交换机不参与 VTP。 VTP 透明交换机不会提升其 VLAN 配置,也不会根据确认的公告同步其 VLAN 配置,但是,这些交换机会传输它们从 VTP 版本 2 中的中继端口接收的 VTP 公告。 - VTP 模式关闭 –
在上述三种模式中,一旦交换机进入管理域状态,就会确认并转发 VTP 公告。在关闭模式下,交换机的行为方式与它们在 VTP 透明模式下的行为类似,但是有一个区别是不转发 VTP 公告。
当交换机处于透明模式或 VTP 服务器时,用户可以在 Catalyst 1900、2820 和 4500 系列交换机上配置 VLAN。当交换机处于透明模式或服务器时,用户可以使用 MIB(管理信息库)、CLI 或控制台菜单来修改 VLAN 配置。
配置为 VTP 服务器模式的交换机将 VLAN 配置提升到其中继上的相邻交换机,并从这些相邻交换机学习新的 VLAN 配置。用户还可以使用服务器模式添加或删除 VLAN,并使用 CLI、VTP MIB 或控制台修改 VLAN 信息。例如,每当用户添加 VLAN 并且服务器和客户端都准备在其中继端口上接收流量时,VTP 会提升新的 VLAN。
随后,交换机自动切换到 VTP 客户端模式,转发公告并从公告中学习新数据。但是,用户不能通过控制台、CLI 或 MIB 添加、修改或删除 VLAN。 VTP 客户端不在 NVM(非易失性内存)中保存 VLAN 信息;因此,一旦启动,它就会通过从中继端口获取通知来学习配置。
在 VTP 透明模式下,交换机不会从网络中学习或提升 VLAN 配置。只要交换机处于透明模式,用户就可以通过 CLI、MIB 或控制台添加、修改或删除 VLAN。
VTP 配置:
为了交换 VTP 消息,需要满足一些基本条件。
- 两台交换机上的 VTP 域名应该相同。
- VTP 版本应该相同。
- VTP 域密码应该相同。
- 交换机应配置为 VTP 客户端或 VTP 服务器。
- 交换机之间应使用中继链路。
在上图中,三个交换机通过中继链路连接。在交换机 1 上,将使用“vtp domain”命令配置 VTP 域名,并使用“vtp password”命令配置 VTP 密码。
Switch1(config)#vtp domain mlkjr
Changing VTP domain name from NULL to mlkjr
Switch1(config)#vtp password kjtmkcbb
Setting device VLAN database password to kjtmkcbb
现在将 Switch2 和 Switch3 配置为 VTP 客户端。
Switch2(config)#vtp mode client
Setting device to VTP CLIENT mode.
Switch2(config)#vtp domain mlkjr
Changing VTP domain name from NULL to mlkjr
Switch2(config)#vtp password kjtmkcbb
Setting device VLAN database password kjtmkcbb
Switch3(config)#vtp mode client
Setting device to VTP CLIENT mode.
Switch3(config)#vtp domain mlkjr
Changing VTP domain name from NULL to mlkjr
Switch3(config)#vtp password kjtmkcbb
Setting device VLAN database password kjtmkcbb
现在在 Switch1 上创建一个新的 VLAN,VTP 将被发送到 Switch2 和 Switch3,在 Switch2 和 Switch3 上自动创建一个新的 VLAN。
Switch1(config)#vlan 30
Switch2 和 Switch3 将自动创建 VLAN 30。现在检查它是否已创建。
Switch2#show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -----------------------------
1 default active Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/10, Fa0/11, Fa0/12
Fa0/13, Fa0/14, Fa0/15, Fa0/16
Fa0/17, Fa0/18, Fa0/19, Fa0/20
Fa0/21, Fa0/22, Fa0/23, Fa0/24
2 Accounting active Fa/05
30 VLAN0030 active
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup
现在检查 Switch3
Switch3#show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -----------------------------
1 default active Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/10, Fa0/11, Fa0/12
Fa0/13, Fa0/14, Fa0/15, Fa0/16
Fa0/17, Fa0/18, Fa0/19, Fa0/20
Fa0/21, Fa0/22, Fa0/23, Fa0/24
2 Accounting active Fa/05
30 VLAN0030 active
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup