局域网交换 : VTP

了解 VLAN 中继协议 (VTP)

2015 年 8 月 28 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 4 月 22 日) | 反馈


目录


简介

VLAN 中继协议 (VTP) 可简化交换网络中的管理。在一台 VTP 服务器上配置新的 VLAN 时,该 VLAN 将通过域中的所有交换机进行分发。这样可以减少在各处配置相同 VLAN 的需求。VTP 是一种 Cisco 专有协议,适用于大多数 Cisco Catalyst 系列产品。

注意: 本文档不涉及 VTP 版本 3。VTP 版本 3 与 VTP 版本 1 (V1) 及版本 2 (V2) 有所不同,并且只存在于 Catalyst OS (CatOS) 8.1(1) 或更高版本上。VTP 版本 3 加入了对 VTP V1 和 V2 所做的许多更改。在更改网络配置之前,请务必了解 VTP 版本 3 与更低版本之间的区别。参考VLAN中继协议(VTP)的这些部分之一欲知更多信息:

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档不限于特定的软件或硬件版本。

规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则

了解 VTP

注意: 本文档不涉及 VTP 版本 3。VTP 版本 3 与 VTP 版本 1 (V1) 及版本 2 (V2) 有所不同,并且只存在于 Catalyst OS (CatOS) 8.1(1) 或更高版本上。参考VLAN中继协议(VTP)的这些部分之一欲知更多信息:

VTP 消息详细说明

VTP 数据包以交换机间链路 (ISL) 帧或 IEEE 802.1Q (dot1q) 帧的形式进行发送。这些数据包发送到目标 MAC 地址 01-00-0C-CC-CC-CC,其中带有子网接入协议 (SNAP) 的逻辑链路控制 (LLC) 代码 (AAAA) 以及类型 2003(在 SNAP 标头中)。下面是封装在 ISL 帧中的 VTP 数据包的格式:

/image/gif/paws/10558/21b.gif

当然,可在 802.1Q 帧中包含 VTP 数据包。在这种情况下,由 dot1q 标记替代 ISL 标头和循环冗余校验 (CRC)。

现在,请考虑一下 VTP 数据包的详细情况。根据 VTP 消息的类型,VTP 标头的格式可能有所不同。但是,所有 VTP 数据包在标头中都包含以下这些字段:

  • VTP 协议版本:1、2 或 3

  • VTP 消息类型:

    • 汇总通告

    • 子集通告

    • 通告请求

    • VTP 加入消息

  • 管理域长度

  • 管理域名

配置修订版号

配置修订版号是一个 32 位数字,用以指示 VTP 数据包的修订级别。每个 VTP 设备都会跟踪分配给自己的 VTP 配置修订版号。大多数 VTP 数据包都包含发送者的 VTP 配置修订版号。

此信息用于确定收到的信息是否比当前版本的信息更新。在 VTP 设备中对 VLAN 每做一次更改,配置修订版号就加 1。若要重置交换机的配置修订版号,请更改 VTP 域名,然后将该名称改回原始名称。

汇总通告

默认情况下,Catalyst 交换机每五分钟发出一次汇总通告。汇总通告将当前 VTP 域名和配置修订版号告知相邻的 Catalyst。

交换机在收到汇总通告数据包时,会将 VTP 域名与自己的 VTP 域名做比较。如果名称不同,则交换机直接忽略该数据包。如果名称相同,交换机会将配置修订版号与自己的修订版号进行比较。如果自己的配置修订版号比收到的修订版号高或与之相同,则忽略该数据包。如果自己的配置修订版号较低,则发送通告请求。

/image/gif/paws/10558/21c.gif

下表解释了汇总通告数据包中各个字段的含义:

  • Followers 字段指示此数据包后面跟随一个子集通告数据包。

  • Updater 是最后一次递增配置修订版号的交换机的 IP 地址。

  • Update Timestamp 是最后一次递增配置修订版号的日期和时间。

  • 消息摘要 5 (MD5) 携带 VTP 口令(如果配置了 MD5 并用它验证 VTP 更新的有效性)。

子集通告

在 Catalyst 中添加、删除或更改 VLAN 时,进行更改的服务器 Catalyst 将递增配置修订版号并发出汇总通告。汇总通告后面跟随一个或几个子集通告。子集通告包含 VLAN 信息列表。如果有多个 VLAN,则为了通告所有 VLAN,可能需要不止一个子集通告。

21d.gif

此格式化示例显示每个 VLAN 信息字段都包含不同 VLAN 的信息。字段这样排序是为了让值较低的 ISL VLAN ID 首先发生:

/image/gif/paws/10558/21e.gif

此数据包中的大部分字段都很容易理解。以下是两点说明:

  • Code — 子集通告的此项的格式为 0x02。

  • Sequence number — 这是数据包在跟随汇总通告的数据包流中的顺序。序号从 1 开始。

通告请求

在以下情况下,交换机需要 VTP 通告请求:

  • 已重置交换机。

  • 已更改 VTP 域名。

  • 交换机收到具有较高配置修订版号的 VTP 汇总通告。

收到通告请求后,VTP 设备将发送一个汇总通告。汇总通告后面将跟随一个或多个子集通告。示例如下:

/image/gif/paws/10558/21f.gif

  • Code — 通告请求的此项的格式为 0x03。

  • Start-Value — 此字段用于存在多个子集通告的情况。如果已收到前 (n) 个子集通告,而尚未收到随后的一个(第 n+1 个),则 Catalyst 只从第 (n+1) 个子集请求通告。

其他 VTP 选项

VTP 模式

交换机经过配置可在以下任一 VTP 模式下操作:

  • 服务器 — 在 VTP 服务器模式下,可创建、修改和删除 VLAN,并为整个 VTP 域指定其他配置参数,例如 VTP 版本和 VTP 修剪。VTP 服务器将其 VLAN 配置通告至同一个 VTP 域中的其他交换机,并根据通过中继链路收到的通告将其 VLAN 配置与其他交换机同步。VTP 服务器为默认模式。

  • 客户端 — VTP 客户端的行为与 VTP 服务器相同,但不能在 VTP 客户端上创建、更改或删除 VLAN。

  • 透明 — VTP 透明交换机不参加 VTP。VTP 透明交换机不通告其 VLAN 配置,也不会根据收到的通告来同步其 VLAN 配置,但在 VTP 版本 2 中,透明交换机却可从中继端口转发它收到的 VTP 通告。

  • 关闭(仅可在 CatOS 交换机中配置)— 在上述三种模式下,只要交换机进入管理域状态,即会接收和传送 VTP 通告。在 VTP 关闭模式下,交换机的行为与 VTP 透明模式下基本相同,只是不转发 VTP 通告。

VTP V2

VTP V2 与 VTP V1 没有太大区别。主要区别是 VTP V2 引入了对令牌环 VLAN 的支持。如果使用令牌环 VLAN,则必须启用 VTP V2。否则,就没有必要使用 VTP V2。更改从1的Vtp version到2不会引起一交换机重新加载。

VTP 密码

如果为 VTP 配置口令,则必须在 VTP 域中的所有交换机上都配置该口令。所有交换机上的口令必须都相同。所配置的 VTP 口令由算法转换成 16 字节字(MD5 值),在所有汇总通告 VTP 数据包中传送。

VTP 修剪

VTP 确保 VTP 域中的所有交换机都识别所有 VLAN。然而,VTP 有时会造成不必要的流量。VLAN 中所有未知的单播和广播会在整个 VLAN 中泛洪。网络中的所有交换机都会收到所有广播,即使在只有极少数用户连接到该 VLAN 的情况下也是如此。VTP 修剪是一种用来消除或修剪 这种不必要流量的功能。

交换网络中未经修剪时的广播流量

/image/gif/paws/10558/21g.gif

此图显示一个未启用 VTP 修剪功能的交换网络。交换机 A 上的端口 1 和交换机 D 上的端口 2 分配到 Red VLAN。如果从连接至交换机 A 的主机发送广播,则交换机 A 将发生广播泛洪,网络中的每台交换机都会收到该广播,即使是在 Red VLAN 中没有端口的交换机 C、E 和 F 也会收到。

交换网络中经过修剪后的广播流量

/image/gif/paws/10558/21h.gif

此图显示启用 VTP 修剪功能的同一个交换网络。由于已在所示链路(交换机 B 上的端口 5 和交换机 D 上的端口 4)上修剪了 Red VLAN 的流量,因此不会将来自交换机 A 的广播流量转发至交换机 C、E 和 F。

如果在 VTP 服务器上启用 VTP 修剪,则对整个管理域都启用修剪。使 VLAN 可/不可进行修剪只影响该中继上的那些 VLAN(而非 VTP 域中的所有交换机)。VTP 修剪功能在启用几秒钟后开始生效。VTP 修剪功能对来自不可修剪的 VLAN 的流量不进行修剪。VLAN 1 和 VLAN 1002 到 1005 始终不可修剪;无法修剪来自这些 VLAN 的流量。扩展范围的 VLAN(VLAN ID 大于 1005)也不可修剪。

在网络中使用 VTP

默认情况下,所有交换机都配置为 VTP 服务器。此配置适用于小规模网络。在这种网络中,VLAN 信息量较小,并且在所有交换机中都比较容易存储信息(在 NVRAM 中)。在大型网络中,如果因每台交换机上都进行复制而使必要的 NVRAM 存储产生浪费情况,那么网络管理员必须适时作出主观评断。这时,网络管理员必须选择几台配置精良的交换机,使其成为 VTP 服务器。加入 VTP 的一切其他设备均可转变为客户端。应适当选择 VTP 服务器的数量,以便提供网络中所需的冗余度。

注意:

  • 如果将某交换机配置为没有 VTP 域名的 VTP 服务器,则无法在该交换机上配置 VLAN。

    注意: 这种情况仅适用于 CatOS。对于运行于 IOS 上的交换机,即使没有 VTP 域名也可以配置 VLAN。

  • 如果新的 Catalyst 连接在两个 VTP 域的边界上,则它将保留向其发送汇总通告的第一台交换机的域名。只能通过手动设定不同的 VTP 域名,才能将该交换机连接到另一个 VTP 域。

  • 动态中继协议 (DTP) 在 DTP 数据包中发送 VTP 域名。因此,如果链路两端分属不同的 VTP 域,则在使用 DTP 时中继不会激活。对这种特殊情况下,必须在两端都将中继模式配置为 on 或 nonegotiate,以使中继可以在 DTP 协商不一致的情况下激活。

  • 如果域中仅有的一个 VTP 服务器崩溃,那么恢复运行的最佳且最简便的方式是将该域中的任意一个 VTP 客户端变为 VTP 服务器。即使服务器崩溃,其余客户端中的配置修订版号仍保持不变。因此,VTP 将在域中正常运行。

配置 VTP

有关如何配置 VTP 的信息,请参阅配置 VLAN 中继协议 (VTP)

VTP 故障排除

有关如何排除 VTP 故障的信息,请参考 VLAN 中继协议 (VTP) 故障排除

结论

使用 VTP 也有一些缺点。必须在 VTP 管理的方便性与大型 STP 域的固有风险和 STP 潜在的不稳定性和风险之间进行权衡。最大的风险在于产生遍及整个园区的 STP 环路。使用 VTP 时,必须密切注意两件事:

  • 切记配置修改版号,以及每次在将新的交换机插入网络时如何重置该修改版号,以免影响到整个网络。

  • 尽量避免使 VLAN 跨整个网络。

相关的思科支持社区讨论

思科支持社区是您提问、解答问题、分享建议以及与工作伙伴协作的论坛。


相关信息


Document ID: 10558