VTP

VLAN中继协议(Vlan Trunking Protocol),是CISCO专用协议。VTP负责在VTP域内同步VLAN信息,这样就不必在每个交换机上配置相同的VLAN信息。VTP还提供一种映射方案,以便通信流能跨越混合介质的骨干。VTP最重要的作用是,将进行变动时可能会出现在的配置不一致性降至最低。不过,VTP也有一些缺点,这些缺点通常都与生成树协议有关。

VLAN中继协议(VTP)利用第2层中继帧,在一组交换机之间进行VLAN通信.VTP从一个中心控制点开始,维护整个企业网上VLAN的添加和重命名工作,确保配置的一致性。

  1. 工作原理

为了实现此功能,必须先建立一个VTP管理域,以使它能管理网络上当前的VLAN。在同一管理域中的交换机共享它们的VLAN信息,并且一个交换机只能参加到一个VTP管理域,不同域中的交换机不能共享VTP信息。

1)交换机间交换下列信息:

>管理域域名

>配置的修订号

>已知虚拟局域网的配置信息

2)交换机使用配置修正号,来决定当前交换机的内部数据是否应该接受从其他交换机发来的VTP更新信息.

>如果接收到的VTP更新配置修订号与内部数据库的修订号相同域者比它小,交换机忽略更新.

>否则,就更新内部数据库,接受更新信息.

3)VTP管理域在安全模式下,必须配置一个在VTP域中机惟一的口令.

4)VTP的运行有如下特点:

>VTP通过发送到特定MAC地址01-00-0C-CC-CC-CC的组播VTP消息进行工作.

>VTP通告只通过中继端口传递.

>VTP消息通过VLAN1传送.(这就是不能将VLAN1从中继链路中去除的原因)

>在经过了DTP自动协商,启动了中继之后,VTP信息就可以沿着中继链路传送.

>VTP域内的每台交换机都定期在每个中继端口上发送通告到保留的VTP组播地址

VTP通告可以封装在ISL或者IEEE802.1Q帧内.

对于VTP在交换机之间传送VLAN信息,必须知道下面3种需求:

1.两台交换机的VTP管理域名必须设置为一样的;

2.其中一台交换机必须配置为VTP服务器

3.不需要路由器

  1. 工作机制

通过使用VTP协议,交换机之间能够互相传递VLAN 信息,实现了VLAN 的统一配置和统一管理。

每个VTP 设备会纪录自己的VTP 配置修改编号;VTP 通告会包含发送者的VTP 配置修改编号,这一信息用于确认接受到的信息是否比当前的信息更新。每个VTP 通告从配置版本号0 开始。每当发生变化时,配置版本编号加1。

在交换机上配置VTP 口令,用于保证网络内交换机VLAN 配置的安全性。同一VTP域内的交换机,口令配置要一致。

VTP通过修剪来减少不必要扩散的通信量,提高中继链路的带宽利用率。

VTP只能学习通常范围的VLAN,即VLAN ID为1~1005。VLAN ID大于1005的VLAN称为扩展范围VLAN,这些VLAN不会保存在VLAN数据库中。当所创建的VLAN ID为1006~4094时,交换机必须处于VTP透明模式下,因此你几乎不会使用到这些VLAN。还有一件事情:VLAN ID 1以及1002~1005是在所有交换机上自动创建的,而且不能被删除。

  1. VTP域

VLAN管理域,由一个以上共享VTP域名的相互接连的交换机组成.

交换机缺省VTP域名为空.VTP信息只能在VTP域内保持.一台交换机可属于并且只属于一个VTP域.

默认情况下,思科交换机处于VTP服务器模式,并且不属于任何管理域,直到交换机通过中继链路接收了关于一个域的通告,或者在交换机上配置了一个VLAN管理域,交换机才能在VTP服务器上把创建或者更改VLAN的消息通告给本管理域内的其他交换机

如果在VTP服务器上进行了VLAN配置变更,所做的修改会传播到VTP域内的所有交换机上.

如果交换机配置为"透明"模式,可以创建或者修改VLAN,但所做的修改只影响单个的交换机

控制VTP功能的一项关键参数是VTP配置修改编号.这个32位的数字表明了VTP配置的特定修改版本.配置修改编号的取值从0开始,每修改一次,就增加1直到达到4294967295,然后循环归0,并重新开始增加.每个VTP设备会记录自己的VTP配置修改编号;VTP数据包会包含发送者的VTP配置修改编号.这一信息用于确定接收到的信息是否比当前的信息更新.

要将交换机的配置修改号置为0,只需要禁用中继,改变VTP的名称,并再次启用中继.

VTP域的要求:

>域内的每台交换机必须使用相同的VTP域名,不论是通过配置实现,还是由交换机自动学动

>CATALYST交换机必须是相邻的,这意味着,VTP域内的所有交换机形成了一颗相互连接的树.每台交换机都通过这棵树与其他交换机相互.

>在所有的交换机之间,必须启用中继.

  1. VTP的运行模式

>服务器模式(SERVER 默认)

VTP服务器控制着它们所在域中VALN的生成和修改.所有的VTP信息都被通告在本域中的其他交换机,而且,所有这些VTP信息都是被其他交换机同步接收的.在VTP服务器模式下,VLAN配置保存在NVRAM中。

>客户机模式(CLIENT)

VTP客户机不允许管理员创建、修改或删除VLAN。它们监听本域中其他交换机的VTP通告,并相应修改它们的VTP配置情况.

>透明模式(TRANSPARENT)

VTP透明模式中的交换机不参与VTP,只转发VTP 通告消息,它可以创建和删除本地Vlan。当交换机处于透明模式时,它不通告其VLAN配置信息.而且,它的VLAN数据库更新与收到的通告也不保持同步.但它可以创建和删除本地的VLAN.不过,这些VLAN的变更不会传播到其他任何交换机上.

各种运行模式的状态

功能     服务器模式 客户端模式 透明模式

提供VTP消息 √ √ ×

监听VTP消息 √ √ ×

修改VLAN √ × √(本地有效)

记住VLAN √ × √(在不同的版本有不同的结果,本地有效)

  1. VTP的通告

1.VTP通告概述

使用VTP时,加入VTP域的每台交换机在其中继端口上通告如下信息.

>管理域

>配置版本号

>它所知道的VLAN

>每个已知VLAN的某些参数

这些通告数据帧被发送到一个多点广播地址(组播地址),以使所有相邻设备都能收到这些帧.

新的VLAN必须在管理域内的一台服务器模式的交换机上创建和配置.该信息可被同一管理域中所有其他设备学到

VTP帧是作为一种特殊的帧发送到中继链路上的.

有2种类型的通告:

>来自客户机的请求,由客户机在启动时发出,用以获取信息.

>来自服务器的响应

有3种类型的消息:

>来自客户机的通告请求

>汇总通告

>子集通告

VTP通告中可包含如下信息:

>管理域名称

>配置版本号

>MD5摘要--当配置了口令后,MD5是与VTP一起发送的口令.如果口令不匹配,更新将被忽略.

>更新者身份--发送VTP汇总通告的交换机的身份.

VTP通告处理以配置修订号为0为起点.每当随后的字段变更一项时,这个修订号就加1,直到VTP通告被发送出去为止.

VTP修订号存储在NVRAM中,交换机的电源开关不会改变这个设定值.要将修订号初始化为0,可以用下列方法:

>将交换机的VTP模式更改为透明模式,然后再改为服务器模式.

>将交换机VTP的域名更改一次,再更改回原来的域名.

>使用clear config all命令,清除交换机的配置和VTP信息.再次启动.

  1. 3种VTP消息类型

(1)汇总通告

用于通知邻接的CATALYST交换机目前的VTP域名和配置修改编号.默认情况下,CATALYST交换机每5分钟发送一次汇总通告.

当交换机收到了汇总通告数据包时,它会对比VTP域名:

>如果域名不同,就忽略此数据包;

>如果域名相同,则进一步对比配置修改编号

>如果交换机自身的配置修改编号更高或与之相等,就忽略此数据包.如果更小,就发送通告请求.

(2)子集通告

如果在VTP服务器上增加、删除或者修改了VLAN,"配置修改编号"就会增加,交换机会首先发送汇总通告,然后发送一个或多个子集通告.挂起或激活某个VLAN,改变VLAN的名称或者MTU,都会触发子集通告.

子集通告中包括VLAN列表和相应的VLAN信息.如果有多个VLAN,为了通告所有的信息,可能需要发送多个子集通告.

(3)通告请求

交换机在下列情况下会发出VTP通告请求:

>交换机重新启动后

>VTP域名变更后

>交换机接到了配置修改编号比自己高的VTP汇总通告

  1. VTP裁剪

VTP修剪(VTP Pruning)是VTP的一个功能,它能减少中继链路上不必要的广播流量,默认情况下,某个VLAN的广播会从中继链路发送到每一个中继接口承载该VLAN的交换机上,即使交换机上没有那个VLAN的端口也是如此,这也就意味着,中继链路可能会传送最终被该交换机丢弃的广播流量。

VTP通过修剪减少没有必要扩散的流量,从而可以提高中继链路的带宽利用率,仅当中继链路接收端上的交换机在那个VLAN中有的端口时,才会将VLAN的广播和位置单播帧转发到该中继链路上。VTP修剪采用了附加的VTP报文类型,当Catalyst交换机连接到VLAN的端口时,它会给在该VLAN上有活动端口的邻接交换机发送通告。邻接交换机会保留这个信息,用它来帮助交换机确定来自一个VLAN的通信量是否应当使用终极端口转发。

S1(config-if)#switchport trunk pruning vlan 3-4

  1. 故障排查

很多时候按照常规配置完毕后,并不能学习到VLAN信息,通过show vtp status命来查看往前设备与VTP Server角色的交换机对比,重点排查以下点:

SW#show vtp status

VTP Version :2//VTP的版本是否一致,如果不一致需配置一下

Configuration Revision : 0

Maximum VLANs supported locally : 255

Number of existing VLANs : 5

VTP Operating Mode :Client//确认当前交换机的工作角色

VTP Domain Name :cisco//交换机所在域是否和Server模式的交换机一致

VTP Pruning Mode : Disabled

VTP V2 Mode : Disabled

VTP Traps Generation : Disabled

MD5 digest :0xAA 0xB9 0x0C 0xCD 0xD7 0xE8 0xA6 0xE0//交换机密码是否与Server模式的交换机一致,如果不一致请确认后重新配置

Configuration last modified by 0.0.0.0 at 0-0-00 00:00:00

确认以上信息一致后,再确认交换机之间的互联链路是否为Trunk模式,通过命令来查看:

SW#show int trunk

至此,仍然不能学习到VLAN信息,请首先关闭互联的Trunk链路

SW#conf t

Enter configuration commands, one per line. End with CNTL/Z.

SW(config)#int f0/1

SW(config-if)#shutdown

清理VTP同步计数:

Switch#clear vtp counters

再打开互联的Trunk链路,即可正常学习到VLAN信息。

10. VTP的优点

>保持配置的一致性;

>提供跨不同介质类型如ATM FDDI和以太网配置虚拟局域网的方法;

>提供跟踪和监视虚拟局域网的方法;

>提供检测加到另一个交换机上的虚拟局域的方法;

>提供从一个交换机在整个管理域中增加虚拟局域网的方法;

配置

  1. 如图,设置R1为VTP服务器。在VTP 服务器上配置VLAN,使配置为VTP 客户机的交换机(R3)能够学习到VLAN 信息,不能添加、删除和修改VLAN。

配置为透明模式的交换机(R2)可以自己添加、删除和修改VLAN,但是不学习VLAN 信息。

  1. 步骤

1)将交换机互联端口设置为trunk

2)设置VTP域名为test

3)在交换机R1上配置VLAN2和VLAN3;在R2上配置VLAN4、VLAN5.

Show vtp status查看

因为R2的VTP模式为Transparent,在此不同步Server 上的VLAN 配置

因为R3的VTP模式为Client,在此同步Server 上的VLAN 配置

4)配置交换机R1的VTP口令,添加VLAN6

R3同步Server 的VLAN2、VLAN3,配置修改该编号增加,但没有设置VTP 口令,针对Server 后两次动作没有同步,配置修改编号没有增加。修改口令后同步Server 的VLAN 信息导致配置修改编号增加,即可同步VLAN6.

5)设置交换机的VTP模式分别为server、trasparent、client

6)配置VPT修剪

VTP的更多相关文章

  1. 【转】不同VLAN之间相互通信及VTP、STP、EtherChannel概念

    厘清最后一个概念. 转了网上两个相关帖子: http://www.net130.com/CMS/Pub/Tech/tech_zh/2009_03_12_97386_3.htm http://blog. ...

  2. vtp——vlan trunk protcal

    server模式——服务器模式,在该模式下可以建立vlan,删除vlan,该模式下的vlan可以下发到其他的交换机 client模式——客户端模式,被动模式.交换机可以接受从server模式下传来的v ...

  3. 交换机VLAN、 TRUNK 、VTP 配置

    交换机VLAN. TRUNK .VTP 配置 1. 配置 CISCO 二层交换机的IP 地址(catalyst 2950 为例) SW1(config)#int vlan 1 //进入管理接口inte ...

  4. 自制VTP实验总结

    (packet tracer模拟器) 6.1)实验拓扑 //绿色:通:橙色:不通 //sw0是根桥:全通 Pc0:ip 192.168.1.1 Pc1: ip 192.168.1.2 Pc2:ip 1 ...

  5. 交换知识 VLAN VTP STP 单臂路由

    第1章 交换基础 1.1 园区网分层结构 层次 作用 出口层 广域网接入 出口策略 带宽控制 核心层 高速转发 服务器接入 路由选择 汇聚层 流量汇聚 链路冗余 设备冗余 路由选择 接入层 用户接入 ...

  6. 局域网安全-生成树攻击-ARP攻击-MAC攻击-VTP攻击-动态VLAN的攻击

    一.MAC layer attacks 1.CAM表的OVERLOAD 第三方设备不断发送变化的MAC地址,填满CAM表,对于后来合法的MAC地址不能学习到从而泛洪,这时攻击者将学习到合法者的数据包. ...

  7. Cisco VTP中继协议配置

    VTP协议: VLAN中继协议,VTP,VLAN TRUNKING PROTOCOL,是CISCO专用协议,大多数交换机都支持该协议.VTP负责在VTP域内同步VLAN信息, 这样就不必在每个交换上配 ...

  8. VTP管理交换机的VLAN配置

    实验要求:将Switch1设置为VTPserver.Switch2设置为VTPtransparent.Swtich3和4设置为VTPclient 拓扑如下: 涉及内容: 1.VTP的创建 2.VTP的 ...

  9. [CISCO] VLAN、TRUNK 和 VTP 简介

    VLAN.TRUNK 和 VTP 简介 VLAN 如图,虚拟局域网 VLAN ( Virtual LAN ) 是交换机端口的逻辑组合. VLAN 工作在 OSI 的第 2 层(数据链路层),一个 VL ...

随机推荐

  1. C# 调用 C++ 的 DLL 返回值为 bool 时,值混乱

    现象:C++ 导出函数的返回值为 false,C# 调用该函数获取的返回值却为 true . 原因:C++ 导出函数返回 false 时,采取的方式是: 将 C# 定义的用来接收返回值的 bool 所 ...

  2. shell脚本运行springboot项目jar包

    #!/bin/bash APP_NAME=AutomationGuide-0.0.1-SNAPSHOT.jar #使用说明,用来提示输入参数 usage() { echo "please e ...

  3. TCP连接异常断开检测(转)

    TCP是一种面向连接的协议,连接的建立和断开需要通过收发相应的分节来实现.某些时候,由于网络的故障或是一方主机的突然崩溃而另一方无法检测到,以致始终保持着不存在的连接.下面介绍一种方法来检测这种异常断 ...

  4. Lazarus下改变DBGrid记录的颜色,与Delphi不同了。

    功能:根据一条记录满足特定条件,使用不同的颜色进行显示. 来源:http://www.aliyagoo.com/blog 主要事件是在PrepareCanvas 不是DrawColumnCell 而且 ...

  5. C++复习:异常

    异常处理机制专题 前言 1)异常是一种程序控制机制,与函数机制独立和互补     函数是一种以栈结构展开的上下函数衔接的程序控制系统,异常是另一种控制结构,它依附于栈结构,却可以同时设置多个异常类型作 ...

  6. Bash:精华

    # 声明索引数组(以从0开始的整数做索引的数组).以下三种等效. declare -a array declare array=(this is numeric array ) array=(this ...

  7. 使用karma做多浏览器的UI测试

    avalon1.6开发得差不多,这次使用先进的开发理念进行开发,比如模块化,单元测试什么... ui测试是重要的一环,之前用阿里的totoro,但打开浏览器不方便.于是从webdrieverio, n ...

  8. 遍历DOM树,each()遍历

    在<jQuery教程/理解选取更新范围>一节中,我们知道:当选择器返回了多个元素时,可以使用一个方法来更新所有的元素,不再需要使用循环. 然后有的时候需要遍历元素,怎么办? 使用each( ...

  9. 循环取到json中的字段数据,加到html中

    $.ajax({ type:'post', data:{specialName:specialName,count:count}, url:"admin/pcAdminGetArticleL ...

  10. for嵌套

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...