交换机VLAN配置
- 在简单的网络环境中,当交换机配置完端口后,即可直接应用,但若在复杂或规模较大的网络环境中,一般还要进行VLAN的规划,因此在交换机上还需进行 VLAN 的配置。
- 交换机的VLAN配置工作主要有VLAN的建立与删除对交换机端口进行VLAN分配和VLAN Trunk的配置等。Cisco交换机还可以进行VTP协议的配置,以便对网络中的VLAN进行统一管理。
VLAN 的建立和删除
在交换机中,VLAN可用VLAN号(VLAN ID)和VLAN名称(VLAN name)进行识别,其中VLAN ID是0~4094 范围内的一个数值,但也并非可在这些数值之间任意使用,必须遵循如下规则:1是默认的VLAN,ID用户可以使用但不能删除该VLAN;2~1000用于以太网的VLAN,用户可以创建、使用和删除;1002~1005是预留给FDDI和令牌环网使用的;1006~1024仅限于系统保留使用,用户不能查看和使用;1025~4094属于扩展VLAN ID,但有的交换机只支持1~1005的VLAN ID。
VLAN name的配置要求为:1~32个字符,可以是字母和数字。
(1)Catalyst 3500(Cisco IOS系统)交换机的VLAN建立和删除配置。
①建立VLAN。
步骤一:进入VLAN配置模式
Switch-3528-TEST # vlan data
Switch-3528-TEST ( vlan)#
步骤二:建立VLAN。
命令格式:vlan <vlan_ID> name <vlan_name>
Switch-3528-TEST (vlan) # vlan 100 name vlanwork (建立VLAN 100,名称为vlanwork)
步骤三:退出并返回特权用户模式
Switch-3528-TEST(vlan)#exit (返回特权模式,保存 VLAN配置)
Switch-3528-TEST#
②删除VLAN。
Switch-3528-TEST # vlan database
Switch-3528-TEST (vlan) #no vlan 100 (删除 vlan 100)
③修改VLAN。
修改VLAN与建立VLAN步骤完全相同。例如将vlan 100的名称修改为vlangroup的命令如下:
Switch-3528-TEST (vlan) #vlan 100 name vlangroup
Switch-3528-TEST (vlan)#exit (返回特权模式,保存VLAN配置)
Switch-3528-TEST#
(2)Catalyst 6500(CatOS系统)交换机的 VLAN建立和删除配置
①建立VLAN
命令格式:set vlan <vlan ID> name <vlan name>。
Switch-6509-TEST> (enable) set vlan 100 name vlan100 (建立VLAN 100,名称为vlan100)
②删除VLAN。
命令格式:clear vlan <vlan_num>
Switch6509-TEST> (enable) clear vlan 100 (删除VLAN 100)
Switch-6509-TEST > (enable)
③修改VLAN。
同样修改VLAN命令和建立VLAN完全相同。例如,将vlan100的名称修改为v100的命令如下:
Switch-6509-TEST >(enable ) set vlan 100 name v100
Switch-6509-TEST > (enable)
分配交换机端口到VLAN中
(1)Catalyst 3500交换机的配置方法
步骤一:进入端口配置模式。
Switch-3528-TEST # configure terminal
Switch-3528-TEST ( config)#int f0/1
Switch-3528-TEST (config-if)#
步骤二:为端口分配VLAN
命令格式:switchport access vlan <vlan-num>
swich-3528-TEST (config-if)# switchport access vlan 100 (将端口f0/1分到VLAN 100中)
Switch-3528-TEST (config-if)#
(2)Catalyst 6500(Catos系统)交换机的配置方法。
命令格式:set vlan <vlan-num> <mod/port>。
switch-6509-TEST > (enable) set vlan 100 0/1 (将 0/1划分到VLAN 100中)
Switch-6509-TEST> (enable)
VLAN Trunk的配置
- VLAN Trunk的配置任务有:设置交换机端口的VLAN Trunk模式,为VLAN Trunk封装VLAN协议和设置VLAN Trunk允许中继的VLANS。
- 当交换机在汇聚链路上传输多个VLAN信息时,需要为每一个数据附加上一个VLAN帧标签,用于标志这个数据是属于哪一个VLAN的信息。VLAN标签会指定唯一的VLAN ID给每个帧,网络管理员在交换机配置中,会给每个VLAN指定一个VLAN ID,VLAN帧标记法被IEEE选为标准的Trunk机制。
- VLAN协议就是为VLAN标签定义的一组约定和规则。不同的VLAN协议定义了不同的VLAN帧标签格式和附加VLAN帧标签的方法。其中,最具代表性的是Cisco LSL和IEEE 802.1Q。Cisco LSL协议仅适用于Cisco设备,而IEEE 802.1Q(dotlg)可用于不同厂家的交换设备互联,是实现VLAN Trunk的唯一标准协议。需要注意的是,如果是不同厂家的交换机互连并且要实现 VLAN Trunk 功能时,必须在直接相连的交换机端口上封装 dotlq,保证协议的一致性,否则不能正确地传输多个VLAN的信息。
(1)Catalyst 3500交换机的VLAN Trunk配置。
步骤一:进入交换机端口配置模式。
Switch-3528-TEST # configure terminal
Switch-3528-TEST ( config) #int f0/24
Switch-3528-TEST (config-if)#
步骤二:配置VLAN Trunk模式。
Switch-3528-TEST ( config-if)# switchport mode trunk
Switch-3528-TEST ( config-if)#
步骤三:封装VLAN协议。
Swich-3528-TEST (config-if) # switchport trunk encapsulation dot1 q(配置VLAN Trunk的封装换式为802.1q)
Switch-3528-TEST (config-if)# switchport trunk encapsulation isl (封装ISL协议)
Switch-3528-TEST (config-if)# switchport trunk encapsulation negotiate P(自动协商)
步骤四:设置允许中继的VLAN。
Switch-3528-TEST (config-if) #switchport runk allowed vlan 1,10 (允许VLAN 1和VLAN 10通过此Trunk通路)
Switch-3528-TEST ( config-if) # switchport trunk allowed vlan 1-10
Switch-3528-TEST (config-if) # switchport trunk allowed vlan except 11-20
(注:except表示从允许的VLAN列表中去一些VLAN号,也就是参数中给出的是不允许中继的VLAN。例如,except11~20表示除去11~20 外,其余的所有VLAN都被添加到允许中继的VLAN列表中。)
(2)Catalyst 6500交换机的VLAN Trunk配置。
步骤一:配置VLAN Trunk模式,封装VLAN协议
命令格式:set trunk <mod/port> <mode > <type>
Switch-6509-TEST > (enable) set trunk 1/24 on dotl q Port(s) 1/24 trunk mode set to on(配置VLAN Trunk模式,封装VLAN协议)
步骤二:设置允许中继的VLAN。
命令格式:set trunk <mod/port> vlan <vlan>。
Switch-6509-TEST> (enable) set trunk 1/24 vlan 11-20 (在端口1/24 的允许VLAN列表中添加11-20号vlan)
命令格式:clear trunk <mod/port> <vlan>
Switch-6509-TEST> (enable) clear trunk 1/24 16-20 (将VLAN 16至VLAN 20从许 VLAN 列表中删除)
Switch-6509-TEST> (enable)
VLAN配置实例
终端设备(End Devices):8台PC-PT
网络设备(NetWoek Devices):2台2920交换机
交换机SW1的配置:
Switch>enable
Switch#configure terminal
Switch(config)#hostname SW1
SW1(config)#end
SW1#vlan database
SW1(vlan)#vlan 2 name VLAN2
SW1(vlan)#vlan 3 name VLAN3
SW1(vlan)#exit
SW1#configure terminal
SW1(config)#interface f0/1
SW1(config-if)#switch mode access
SW1(config-if)#switch access vlan 2
SW1(config-if)#exit
SW1(config)#interface f0/2
SW1(config-if)#switch mode access
SW1(config-if)#switch access vlan 2
SW1(config-if)#exit
SW1(config)#interface f0/3
SW1(config-if)#switch mode access
SW1(config-if)#switch access vlan 3
SW1(config-if)#exit
SW1(config)#interface f0/4
SW1(config-if)#switch mode access
SW1(config-if)#switch access vlan 3
SW1(config-if)#
交换机SW2的配置:
Switch>enable
Switch#configure terminal
Switch(config)#hostname SW2
SW2(config)#end
SW2#vlan database
SW2(vlan)#vlan 2 name VLAN2
SW2(vlan)#vlan 3 name VLAN3
SW2(vlan)#exit
SW2#configure terminal
SW2(config)#interface range f0/2 - 3
SW2(config-if-range)#switch mode access
SW2(config-if-range)#switch access vlan 2
SW2(config-if-range)#exit
SW2(config)#interface range f0/4 - 5
SW2(config-if-range)#switch mode access
SW2(config-if-range)#switch access vlan 2
SW2(config-if-range)#end
SW2#
查看信息
- show vlan
- show vlan brief
- ping测试连通性
各个交换机上的各个VLAN里的主机能够互相通信,SW1的VLAN2里的主机不能与SW2的VLAN2里的主机通信。跨交换机VLAN的通信,这时候需要使用Trunk技术。
Trunk配置步骤如下:
(1)可以采用802.1Q或者ISL封装之一,使用show port capabilities f0/1命令可以查看端口能够采用什么封装;默认时采用negotiate,即自动协商采用什么封装方式,如果两端都支持两种方式,那么将采用ISL。
SW1(config)#int f0/1
SW1(config-if)# switchport trunk encanpsulation {dotlq | isl | negotiate}
注意:有的交换机,例如2950只能封装dotlq,因此无须执行该命令,而自己需要步骤(2)的命令。
(2)把端口改为trunk模式或者其他方式。
SW1(config-if) # switeh mode {trunk | dynamic desirable | dynamic auto}
trunk:这个设置将端口置为永久trunk模式,由于不允许协商,另一端也应该采用同样设置,并且要手工配置封装。
dynamic desirable(默认模式):端口主动变为trunk,如果另一端为trunk、dynamic、desirable dynamic auto将成功协商。
dynamic auto:被动协商,如果另一端为trunk、dynamic desirable将成功协商。
注意:trunk的协商和DTP有关,switchport nonegotiate命令会关闭DTP的发送。
增加交换机SW1的配置:
SW1>enable
SW1#configure terminal
SW1(config)#interface range FastEthernet0/1 - 4
SW1(config-if)#switch mode trunk
增加交换机SW2的配置:
SW2>enable
SW2#configure terminal
SW2(config)#interface range FastEthernet0/2 - 5
SW2(config-if)#switch mode trunk
- 查看交换机端口的trunk状态
不同交换机上的相同VLAN,主机之间可以互相通信
VTP配置
- VTP(VLAN Trunking Protocol)是VLAN中继协议也被称为VLAN干道协议。它是一个工作在OSI参考模型第二层(数据链路层)的通信协议,主要用于管理在同一个域网络范围内VLAN的建立、删除和重命名。VTP有VTP Server、VTP Client和VTP Transparent三种工作模式。 通常情况下,一个VTP域内的整个网络只设一个VTP Server,它维护该VTP域中所有VLAN信息列表,VTP Server可以建立、删除或修改VLAN。VTP Client虽然也维护所有VLAN信息列表,但是它的VLAN信息是从VTP Server学习到的并且VTP Client不具有建立、删除或修改VLAN的功能。VTP Transparent相当于一个独立的交换机,它不参与VTP工作,不从VTP Server学习VLAN的配置信息,而只拥有本设备上自己的VLAN信息,因此它也只能建立、删除和修改本机上的VLAN信息。
(1)服务器模式(Server):VTP服务器能够为服务器所在的域创建、修改、删除VLAN,同时这些信息会通告给域中的其他交换机。默认情况下,交换机处于服务器模式,每个VTP域必须至少有一台服务器,域中的VTP服务器可以有多台。
(2)客户机模式(Client):VTP客户机不允许创建、修改、删除VLAN,但它会监听来自其他交换机的VTP通告并改相应的VLAN信息。事变上,这是一种被动的监听模式。接收到的VTP信息会在Trunk链路上向域中的其他交换机转发,因此这种交换机还充当VTP中继。
(3)透明模式(Transparent):这种模式的交换机不参与VTP。可以在这种模式的交换机上创建、修改、删除VLAN,但是这些VLAN信息并不会通告给其他交换机,它也不接收其他交换机的VTP通告而更新自己的VLAN信息。然而需要注意的是,它会通过Trunk链路转发接收到的VTP通告从而充当了VTP中继的角色,因此完全可以把该交换机看成是透明的。
VTP通告是以组播的方式发送的,VTP通告中有一个字段称为修正号(Revision),初始值为0。只要在 VTP Server上创建、修改、删除VLAN,通告的Revision就增加1,通告中还包含了VLAN的变化信息。为了防止交换机接收到被延迟的VTP通告,交换机只接收比本地保存的Revision号更高的通告。正因为如此,任何新加入到网络的交换机应该具有Revision号0。VTP Revision号保存在Flash中,关机也不会复位。可以采用下列方法进行复位:
(1)把交换机的模式改为透明模式,又改回服务器模式;
(2)改变交换机的VTP域域名
交换机VTP的配置较为简单,包括建立VTP域和设置VTP的工作模式两个部分。配置VTP需要注意的是同一个域中的交换机要配置相同的域名和相同的VTP版本。具体配置方法如下。
(1)Cisco IOS系统交换机的VTP配置
①配置 VTP 域名。
Switch-3528-TEST # conigure terminal (进入工作模式)
Switch-3528-TEST (config)# vtp domain TEST
(设置VTP域名为TEST,同一个域的所有交换机,必须设置相同的域名,同时VTP协议的版本号必须一致)
②配置VTP工作模式。
Switch-3528-TEST (config)# vtp mode server (设置为 VTP Server模式,默认值)
Switch-3528-TEST (config)# vtp mode client (设置为VTP Client模式)
Switch-3528-TEST (config)# vtp mode transparent (设置为VTP Transparent模式)
Switch-3528-TEST (config)#
(2)Catalyst OS交换机的VTP配置
①配置VTP域名。
Switch-6509-TEST> (enable) set vtp domain TEST (设置VTP域名为TEST)
②配置VTP工作模式。
Switch-6509-TEST>(enable) set ytp mode server (设置为 VTP Server模式,默认值)
Switch-6509-TEST> (enable) set vtp mode client (设置为 VTP Client模式)
Switch-6509-TEST > (enable) set vtp mode transparent (设置为VTP Transparent模式)
Switch-6509-TEST > (enable) set tp mode off (关闭VTP)
Switch-6509-TEST > (enable)
VTP配置实例
交换机SW1的VTP配置
SW1#vlan database
SW1(vlan)#vtp domain VTP-TEST
SW1(vlan)#vtp password CISCO
SW1(vlan)#vtp server
交换机SW2的VTP配置
SW2#vlan database
SW2(vlan)#vtp domain VTP-TEST
SW2(vlan)#vtp password CISCO
SW2(vlan)#vtp transparent
交换机SW3的VTP配置
SW3#vlan database
SW3(vlan)#vtp domain VTP-TEST
SW3(vlan)#vtp password CISCO
SW3(vlan)#vtp client
VTP修剪
当PC2(属于VLAN3)计算机发送广播包时。广播将沿着Trunk链路传输到 SW1上,又继续传输到SW2和SW4上,然而SW2上并没有属于VLAN3 的端口,这样就浪费了SW1和SW2之间Trunk链路的带宽。可以使用Trunk修剪技术来防止不必要的流量。Trunk修剪的配置非常简单,在VTP服务器(SW1)上执行如下命令:
SW1 # vlan database
SW1(vlan)# vlan pruning
SW1(vlan)#exit