数据来源
1、广播与广播域
广播:将广播地址做为目标地址的数据帧
广播域:网络中能接收到同一个广播所有节点的集合(广播域越小越好,收到的垃圾广播越少,这样通信效率更高)
MAC地址广播
广播地址为:FF-FF-FF-FF-FF-FF
255.255.255.255
广播IP地址为IP地址网段的广播地址,如:192.168.1.255 /24
2、广播的危害
增加网络/终端(PC)负担,传播病毒,安全性
3、如何控制广播?( 控制广播 = 隔离广播域)
1)路由器隔离广播(物理隔离广播)
缺点:成本高、不灵活(比如IT部的人把他电脑插上财务部的网线他就变成财务部的人了)
2)采用新的技术VLAN来控制广播,VLAN技术是在交换机上实现的,且是通过逻辑隔离划分的广播域。
VLAN技术就是通过将交换机的端口划分为不同的频段,不同的频段之间不能通信,如:频段1不能跟频段2的设备通信,只能跟同一频段的人通信(频段1也可以称为VLAN1),一般只有企业级交换机才有VLAN技术。
如下图:
PC1(连接在交换机的Fa0/2接口)和PC2(Fa0/3接口)属于同一网段,在配置VLAN之前他们之间是可以互相通信的(使用命令:ping 目标地址),以前只要检查数据帧头的目标MAC地址转发就可以了。
但是在配置VALAN之后PC1的交换机接口是VLAN1,PC2是VLAN2,PC1和PC2通信时交换机会先查看帧头的源MAC地址看需不需要学习,添加进交换机的MAC地址表,要转发出去时再看目标MAC地址是要转发给谁的,发现是要给Fa0/3接口上的PC2的,然后检查VLAN表判断Fa0/3接口(PC2的接口)和Fa0/2接口(PC1的接口)是否是同一VLAN,不是交换机就会把这个帧给丢弃,就无法进行通信,是,就转发数据,就能正常通信。
注意:就算是同一VLAN但是不同IP网段的话,还是无法通信的,如下图中的PC1和PC3
VLAN表的格式:
VLAN 接口
VLAN1 Fa0/2、FA0/3
VLAN2 Fa0/3、FA0/1
注意:VLAN技术属于2层技术,工作在交换机上。
4、一个VLAN = 一个广播域 = 一个网段
1)静态VLAN(常用)
* 手动配置
* 基于端口划分的VLAN(VLAN和端口绑定,和插上那台PC没关系,比如:fa0/0被设置为VLAN1那以后无论是谁的电脑插在这个接口内,他都是VLAN1)
优点:工作量少,一般情况下配置一次就行
2)动态VLAN
* 手动配置
* 基于MAC地址划分的VLAN / 采用802.1x端口认证基于账户来划分VLAN(每台PC的MAC地址都是全球唯一的,在交换机上基于MAC地址划分的VLAN,比如:给PC1绑定了VLAN2那么无论这台电脑连接该交换机的那个端口,他都是属于VLAN2)
优点:灵活性更高(如给PC1绑定了VLAN2,无论PC1连接那个端口,他都属于VLAN2)
缺点:工作量大,因为如果员工是自带电脑,无论是入职或离职都要配置一下交换机
5、静态VLAN命令:
1)创建VLAN
命令:
cong t # 进入全局配置模式
vlan ID,ID,ID-ID # 创建VLAN,可选一个或多个
name 自定义名称 # 给VLAN定义别名
exit # 退到上一级
2)查看VLAN表
show vlan brief(brief 简写:b) # 如果不是在特权模式下,要加 do
3)将端口加入VLAN
cong t # 进入全局配置模式
int f0/x # 进入需要配置的端口
switchport access vlan ID # 将端口加入VLAN
注意:交换机一般由5个默认的VLAN
6、实验一(思科/锐捷):使用VLAN隔离广播区域
(1)准备一天2960型号交换机,两台PC ,并把PC1配置IP地址为:10.1.1.1/24,PC2配置IP地址为:10.1.1.2/24,然后使用命令:ping 目标地址 # 测试PC1和PC2的网络连通性
(2)现在使用VLAN技术不让PC1和PC2通信
en # 进入特权模式
conf t # 全局配置模式
ho sw1 # 设置交换机名称
vlan ? # 查看可选的ID
vlan id # 创建VLAN
name 名称 # 给VLAN起个名称,方便识别,可选
exit # 退出到上一级,回到全局配置模式
(3)查看VLAN表检查有没有配置成功 do show vlan brief(brief 简写:b),
(4)将端口加入到VLAN内(将PC1对应的交换机端口,加入VLAN10,PC2加入20)
en # 进入特权模式
conf t # 全局配置模式
注意如果你已经在全局配置模式下,上面的命令省略
int fx/x # 进入需要配置的端口
switchport access vlan ID # 将端口加入到需要的VLAN内
exit # 退出到上一级,回到全局配置模式
(5)使用PC1使用密命令ping一下PC2
结果是ping不通,因为他们属于不同的VLAN
(6)可以新加一台PC配置IP为:10.1.1.3 /24 和其它两台PC处于同一网段,那他们之前能通信?
答案是不能,因为交换机所有没分配VLAN的端口都是属于VLAN1,所以新加的和原来的两台PC不能通信,虽然IP网段一样,但是VLAN不一样
实践才是检验真理的唯一标准,测试一下
在查看VLAN表
(7)可以将新加的PC加入VLAN10里面,让他可以和PC1通信
switchport access vlan 10
7、实验二、测试多台交换机对VLAN的影响
在原来的基础上再买一台交换机、两台PC,进行实验
注意:每台交换机都是独立的,在之前交换机配置的东西,到新的交换机是没有的,他们只是用网线连通,但是配置不共享。
1) 设置交换机名称和创建VLAN10和20
ho sw1 # 设置交换机名称
vlan 10,20 # 创建VLAN,现实中可以这样批量创建,但是这里模拟软件不支持
创建VLAN10和20
vlan 10
vlan 20
2)将PC4和PC5对应的交换机接口分别加入到VLAN10和20
int fx/x # 进入需要配置的端口
switchport access vlan ID # 将端口加入到需要的VLAN内
查看VLAN表检查一下
3)然后给PC4和PC5配置IP让这5台PC都在同一网段,PC4的IP:10.1.1.4 /24 PC5的IP:10.1.1.6
4)到这里所有的IP和VLAN都配置好了,然后使用第一台交换机PC1去ping一下第二台交换机的PC4,这里台PC都是VLAN1的,IP和是同一网段,正常来说是可以ping通的
但事实是ping不通
ping不通的原因:虽然PC1和PC2都是属于VLAN10,ip网段也相同但是他们是属于不同的交换机,两台交换机之间还连着网线,网线还有这对应的端口,之前讲了没有配置的端口默认是VLAN1,数据要从PC1到达PC2就要经过交换机的转发,那就要经过下面这条网线,但是交换机sw1连sw2交换机的端口是VLAM1和PC的VLAn10不是同一个。
解决方法一:
把这根网线的两边端口配置成VLAN10,
缺点:如果频段多,连接两台交换机的网线又要增加,太浪费资源。
解决方法二: 使用 trunk
8、trunk
1)trunk 介绍
把交换机之间的连接端口配置成公共端口(中继端口 / trunk),不属于任何VLAN。
作用:允许所有VLAN数据通过trunk链路
方法:通过在数据帧上加标签,来区分不同的VLAN的数据
详细过程:
所有要经过公共端口的数据帧,都需要打标签,用来区分来自那个VLAN。如:sw1交换机下PC1要和sw2交换机下的PC4通信,PC1把数据帧发送个sw1交换机,sw1交换机都到数据帧后,查看帧中的目标MAC地址,确定转发路线,发现要经过公共端口,就会给该数据帧打上标签:10(表示这个数据帧是来自VLAN10的),然后转发个PC4的交换机(sw2),sw2交换机收到帧后会查看帧的标签,发现是10(要转发给VLAN10的端口)就会把标签拿掉(还原PC1的数据帧,PC不认识标签),然后根据帧头内的目标MAC地址进行转发(转发给PC4)
注意:标签是交换机加的且需要经过公共端口的帧才加表签,到达目标交换机后,目标交换机会把标签拿掉再转发给目标MAC地址的PC
2)trunk标签:
1. ISL标签:Cisco(思科)私有的,标签大小30字节26+4(帧前面加26字节,帧尾后面加4字节)不破坏帧结构。
2. 802.1q标签(常用):公有协议,所有厂家都支持,标签大小4字节。属于内部标签。(把帧拆分成两半加上标签拼接)
3)交换机端口链路类型:
1. 接入端口:也称为access端口,一般用于连接pc,只能属于某1个vlan,也只能传输1个vlan的数据
2. 中继端口:也称为trunk端口,一般用于连接其他交换机,属于公共端口,允许所有vlan的数据通过
4)配置trunk命令:
注意网线的两边端口都要配置才能正常通信
en # 进入特权模式
conf t # 进入全局配置模式
int f0/x # 进入要配置的接口
switchport trunk encapsulation dotlq/isl (常用dotlq 802.lq标签)# 这个端口如果作为trunk 需要封装成dotlq或isl (可选,模拟器不支持这命令)
switchport mode access/trunk (这里用trunk,要还原用access) # 设置端口为中继或接入端口配置trunk 简写:sw m t
exit # 退到上一级
继续完成实验二:
1)查看一下交换机的VLAN表,会发现连接两台交换机的端口都是VLAN1(默认的),如果一个端口配置成trunk,那该端口就会从VLAN表中消失
2)把交换机之间的连接端口都配置成trunk
检查一下VLAN表
3)最后测试一下,PC1 ping PC4使用命令:ping 10.1.1.4
到这里就成功解决了使用VALA技术隔离PC产生的广播域因为不同交换机,不能通信的问题。以后不过有多少台交换机,同一个VLAN与IP网段之间就能通信,不同VLAN之间不能通信。