Vlan:
Vlan是一种通过将局域网内的设备逻辑的划分成多个互不相干的子网络
可以防止网络风暴的发生对整个网络造成危害,就是分隔广播域,分隔广播域有两种方法。
1)物理分隔,使用能隔离广播的路由设备将不同的网络连接起来实现通信
2)逻辑分隔,使用Vlan技术把网络从逻辑上分成若干个广播域
但是使用物理分隔有很多缺点,缺乏灵活性,不能将连接在不同交换机上的用户划分到一个网络中。
而通过Vlan可以弥补这一缺陷,因为在每个Vlan中的所有用户同属一个广播域,而且还可以跨交换机实现。
Vlan具有灵活性和可扩展性等特点,Vlan的优势有以下几点:
1)控制广播:
每个Vlan都是一个独立的广播域,可以减少广播对网络带宽的占用,提高传输速率,防止网络风暴对整个网络造成危害。
2)增强网络安全性:
不同的Vlan之间不可能直接访问,因此可以限制个别主机访问服务器等资源,从而提高网络安全。
3)简化网络管理:
如果对某些用户重新进行网段分配时,不需要在物理结构上重新进行调整,通过Vlan可以把不同地理位置上的用户划分到一个逻辑网络中,不用改动物理网络,从而减轻网络管理和维护工作的负担。
Vlan的种类:
根据Vlan的使用和管理的不同,可以把Vlan分为两种,静态Vlan和动态Vlan。
1)静态Vlan:
目前最常见的Vlan实现方式,针对端口的,需要手工把端口加入到Vlan中,当主机连接到该端口时,就被分配到了相应的Vlan中,静态Vlan只对本地生效,交换机不共享这一信息。
2)动态Vlan:
实现动态Vlan有多种方法,普遍的是基于MAC地址的动态Vlan,优点是当用户从一台交换机移动到另一交换机时,Vlan不用重新进行配置,缺点就是初始化时所有的用户都必须重新进行配置,不适用于大型网络。
静态Vlan的配置:
1)Vlan范围:
0、4095为保留,仅限系统使用,不能查看和使用
1 为正常,默认的VLAN,能使用,但不能删除
2 ~ 1001为正常,用于以太网的VLAN,可以创建、使用和删除
1002~1005正常,用于FDDI和令牌环的Cisco默认VLAN,不能删除
2)Vlan的基本配置步骤:
创建Vlan。
将交换机的商品加入到相应的Vlan中。
验证Vlan。
(1)创建Vlan
Vlan的创建方法分为两种,分别是Vlan数据库模式、全局配置模式。
Vlan数据库配置模式:
Switch> en
Switch# vlan database //进入vlan配置状态
Switch(vlan)# vlan 20 name caiwu //创建vlan 20并命名为caiwu
Switch(vlan)# exit //更新vlan数据库并退出
全局配置模式:
Switch>en
Switch# configure terminal //进入配置状态
Switch(config)# vlan 20 //创建vlan 20
Switch(config-vlan)# name caiwu //将vlan20命名为caiwu
Switch(config-vlan)# exit //退出
删除Vlan,需要使用no vlan vlan-id命令:
Switch# configure terminal
Switch(config)# no vlan 20 //删除vlan 20
(2)将交换机端口加入到相应的Vlan中:
Switch> en
Switch# configure terminal //进入配置状态
Switch(config)# interface f0/1 //进入要分配的端口f0/1
Switch(config-if)# switchport mode access //定义f0/1端口为接入模式
Switch(config-if)# switchport access vlan 20 //把f0/1端口分配给vlan 20
Switch(config-if)# exit //退出
还可以通过range参数,对连续的多个交换机端口进行分配,例如要把f0/4、f0/5、f0/6三个端口一次全部加入到vlan 20中,可以这样做:
Switch(config)# interface range f0/4 -6 //进入要分配的端口f0/4,f0/5,f0/6
Switch(config-if)# switchport mode access //定义f0/4、f0/5、f0/6端口为接入模式
Switch(config-if)# switchport access vlan 20 //把f0/4~6端口分配给vlan 20
Switch(config-if)# exit //退出
(3)验证Vlan配置:
可以通过show vlan brief 查看vlan信息
Switch# show vlan brief //查看vlan信息
也可以通过show vlan vlan-id命令来查看某个vlan的信息
Switch# show vlan 20 //查看vlan 20信息
VLAN Trunk:
Trunk的作用:
Trunk 又被称为干道链路或中继链路,其作用是使同一个vlan能够跨交换机通信
在交换机网络中,链路有两种类型:接入链路和中继链路
接入链路:接入链路连接的一般是属于某个VLAN的终端或主机
中继链路:可以承载多个vlan,常用来将一台交换机连接到其他交换机或 路由器上
Vlan的标识:
在以太网上实现中继,可使用如下两种封装类型。
1)ISL
ISL是Cisco的私有标准,只适用于Cisco设备,ISL只是对帧进行封装,不修改帧中的任何内容,ISL会在帧的头部加上26字节尾部加上4字节
2)IEEE802.1q
IEEE802.1q是国际标准,所有厂商都支持,IEEE802.1q使用内部标识机制,将4字节插入到数据帧内,并重新计算FCS,
IEEE802.1q的帧格式:
目的地址源地址类型数据FCS
目的地址源地址TAG类型数据FCS
TPIDPriorityCFIVLAN ID
TCI
这4个字节的标记头包含以下内容:
2字节标记协议标识符(TPID)包含一个0x8100的固定值,这个特定的TPID值指明了该帧带有802.1q的标记信息
2字节标记控制信息(TCI)包含了下面的元素
3位的用户优先级(Priority):802.1q不使用该字段
1位的规范格式标示符(CFI):CFI常用于以太网和令牌环网,在以太网中,CFI的值通常设置为0
12位VLAN标识符(VLAN ID):标示了帧所属的VLAN
Trunk 的模式:
Trunk分为五种模式,分别是:
1)接入(Access)
a) 将接口设定为永久的非中继模式,
2)干道(Trunk)
a) 将接口设定为永久的中继模式
3)动态企望(Dynamic desirable)
a) 使得接口主动尝试将链路转换为中继链路
4)动态自动(Dynamic auto)
a) 允许接口将链路路转换为中继链路
5)非协商(Nonegotiate)
a) 禁止接口产生DTP帧
Trunk的配置
配置步骤和命令:
1)进入接口配置模式,命令如下
Switch(config)# interface {FastEthernet | GigabitEthernet} slot/port
2)选择封闭类型,命令如下:
Switch(config-if)# switchport trunk encapsulation {isl | dot1q | negotiate}
如果选择negotiate,就是指明端口和邻接端口进行协商,根据邻接端口的
配置,本地端口可以协商成为ISL或802.1q干道
3)将接口配置为Trunk,命令如下
Switch(config-if)#switchport mode {dynamic {desirable |auto} | trunk}
4)(可选)指定Native VLAN,命令如下:
Switch(config-if)# switchport trunk native vlan vlan-id
如果不需要Trunk传送某个VLAN的数据,可以从Trunk中删除这个 VLAN, 命令如下
Switch(config-if)# switchport trunk allowed vlan remove vlan-id
也可以在Trunk上添加某个VLAN,命令如下:
Switch(config-if)# switchport trunk allowed vlan add vlan-id
使用show命令验证接口模式,命令如下:
Switch# show interface interface-id switchport
例如将f0/24接口配置为Trunk模式,使用802.1q封闭协议,但不允许vlan 3的数据通过,另外还要添加vlan 6,可以这样配置
Switch>en
Switch#configure terminal
Switch(config)# interface f0/24 //进入接口进行配置
Switch(config-if)# switchport trunk encapsulation dot1q //选择IEEE802.1q封装
Switch(config-if)# switchport mode trunk //将接口设置为trunk模式
Switch(config-if)# switchport trunk allowed vlan remove 3 //删除vlan 3
Switch(config-if)# switchport trunk allowed vlan add 6 //添加vlan 6
Switch(config-if)#end
Switch# show interface f0/24 switchport //查看接口配置模式
Trunk的排错:
VLAN之间不能跨越Trunk链路而通信,一般要验证以下配置,是否正确:
1)接口模式
使用show interface interface-id trunk命令查看接口的Trunk模式,确保至少一端为Trunk或desirable
2)封闭类型
确保链路两端的Trunk封装类型兼容
3)Native VLAN
如果使用IEEE802.1q封装,要确保Trunk链路两端的Native VLAN配置相同
交换机端口协商对应表
SW1端口模式SW2端口模式SW1协商结果SW2协商结果trunkdynamic autotrunktrunktrunkdynamic desirabletrunktrunkdynamic autodynamic autoaccessaccessdynamic autodynamic desirabletrunktrunkdynamic desirabledynamic desirabletrunktrunktrunk、nonegotiatetrunktrunktrunktrunk、nonegotiatedynamic autotrunkaccesstrunk、nonegotiatedynamic desirabletrunkaccess