计算机三级网络技术知识汇总【6】
第六章 交换机及其配置
1. 交换机基础
1.1 基本概念
局域网交换机是一种基于 MAC 地址识别,完成转发数据帧功能的一种网络连接设备。
工作在数据链路层,根据进入端口数据帧中的 MAC 地址进行数据帧的过滤、转发(也是交换机的工作原理)。
交换机作为汇聚中心,能将多台数据终端设备连接在一起,构成星状结构的网络。
1.2 基本功能
-
建立和维护一个表示 MAC 地址与交换机端口对应关系的交换表。
-
在发送节点和接收节点之间建立一条虚连接**。 【即发送方所连接的交换机端口(源端口)到接收方所连的交换机端口(目的端口)之间建立虚连接】
-
完成数据帧的转发或过滤。**
-
交换机允许多对站点并发通信。**
2. 交换表
小型交换机的交换表(35 系列),交换机通过在超级用户模式下,使用“show mac-address-table”命令查看。
大型交换机的交换表(40/65 系列),交换机通过在超级用户模式下,使用“show cam dynamic”命令查看。
3. 交换机的交换模式
交换机的交换方式有静态交换和动态交换两种。
静态交换是由人工来完成端口之间传输通道的建立。
动态交换方式中依据目的 MAC 地址查询交换表,根据表中给出的输出端口来临时建立传输通道,这个传输通 道在一个数据帧传送完成后自动断开。
交换机最常采用的交换方式是动态交换方式。动态交换模式主要有存储转发和直通两种模式。而直通模式又有 快速转发交换和碎片丢弃交换两种方式。
归纳起来,交换机主要有快速转发、碎片丢弃和存储转发三种交换模式。
(1)快速转发交换模式
快速转发交换模式,也称作直通交换模式,它是在交换机接收了帧的前 14 个字节,即接收到帧中 6 个字节的 目的地址后便立即转发数据帧。该交换模式会在整个数据帧到之前就开始转发。
优点在于端口交换时间短、时延小,交换速度快;
缺点是不能进行检错纠错、速度匹配和流量控制,可靠性较差。因此,它适合于小型交换机。
(2)碎片丢弃交换模式
碎片丢弃交换模式也称为无分段交换模式。这种交换模式是在开始转发数据帧前,先过滤掉造成大部分数据报 错误的冲突片。采用这种交换模式的交换机在转发数据时,先检查数据包的长度是否够 64 字节。如果帧的长度小于 64,则被 视为碎片,交换机直接丢弃;而任何大于 64 字节的数据帧都被交换机视为有效帧,进行转发;
碎片丢弃交换模式的优点是过滤掉了冲突碎片,提高了网络传速的效率和带宽的利用率。
(3)存储转发交换模式
存储转发交换模式将接收到的整个数据帧保存在缓冲区中,然后进行循环冗余码校验检查,在对错误数据帧进 行处理后,才取出数据帧的目的地址,进行转发操作。
存储转发交换模式的不足之处在于其进行数据处理的延时大、交换速度相对较慢。但是它可以对数据帧进行链 路差错检验,可靠性较高,能有效地址改善网络性能;同时它可以支持不同速率的端口,保持高速端口与低速端口 之间的协同工作。
4. 虚拟局域网技术
4.1 VLAN 的基本概念
虚拟网 VLAN 是以交换式网络位基础,把用户的终端设备划分为若干个逻辑工作组,每个逻辑工作组就是一个VLAN。
4.2 VLAN 的特征
VLAN 工作在数据链路层,即 OSI 参考模型的第二层。
VLAN 可隔离广播信息,每个 VLAN 为一个广播域,VLAN 中的广播信息只能发送给这个 VLAN 内部的成员,并 不发送给其他 VLAN 成员。
一个 VLAN 就是一个独立的逻辑网络,每个 VLAN 都具有唯一的子网号。不同 VLAN 中的主机之间必须通过路 由器或者三层交换机,才能实现相互通信。(VLAN之间不可以直接通信)
4.3 VLAN 的标识
VLAN 通常用 **VLAN ID(Vlan 号)**和 **VLAN name(Vlan 名)**标识。
IEEE 802.1Q 协议规定,VLAN ID 用 12 位(bit)表示,可以支持 4096 个 VLAN。
其中 1~1005 是标准范围,1006~1024 为保留范围,1025~4096 是扩展范围,但并不是所有交换机都能支持4096 个 VLAN。
一部分交换机只支持标准范围 1~1005,其中能用于以太网(Ethernet)的 VLAN ID 为 1~1000,而 1002~1005 为 FDDI 和令牌环网使用的 VLAN ID。
**补充:**VLAN 1 是默认的管理VLAN,一般情况下它用于交换机的管理功能,所以一般VLAN ID从2开始 。
VLAN name 用 32 个字符表示,可以是字母和数字。
若创建一个 VLAN 时,没有给定名字,则系统按默认方式,自动给出命名,默认为 VLAN00 XXX(“XXX”即为 该 VLAN 的 VLAN ID),如 VLAN ID 为 111,其默认的 VLAN 名为 VLAN 00111。
划分 VLAN 的方法:
-
基于端口划分;
-
基于 MAC 地址划分;
-
基于第三层协议划分。
5. 交换机配置
5.1 配置交换机的系统信息
交换机的基本配置一般都是通过使用控制( Console) 端口配置方式完成,配置的主要内容有配置交换机的主机名、超级用户口令、设备管理地址和远程登录口令。
关于交换机配置命令语句,主要以 Cisco IOS(( 35 系列)和 Catalyst OS(( 65 系列)两种交换机操作系统来讲解。
那么常考的配置命令语句有设置系统时间、配置设备管理 IP 地址。
(1)设置系统时间
- Cisco IOS 系统(35 系列)
命令格式:clock set hh(时):mm(分):ss(秒) day(日) month(月) year(年);
设置系统时间为 2018 年 8 月 28 日 12 时星期三的命令如下:
Switch-3528-TEST # clock set 12:00:00 28 August 2018
Switch-3528-TEST #
- Catalyst OS(65 系列)
命令格式:set time [day_of_week] [mm/dd/yy] [hh:mm:ss] <月/日/年 时:分:秒>
设置系统时间为 2018 年 8 月 28 日 12 时星期三的命令如下:
Switch-6509-TEST #(enable) set time Wed 8/28/2018 12:00:00
Switch-6509-TEST #
(2)配置设备管理地址(IP 地址)与缺省路由
- Cisco IOS 系统(35 系列)
配置 IP 地址命令语句:ip address 地址> <子网掩码>;
配置缺省路由命令语句:ip default-gateway <缺省路由 IP 地址(子网内第一个可用IP地址)>;
**备注:**VLAN1用于设备管理的缺省VLAN ;
- Catalyst OS(65 系列)
配置 IP 地址命令语句: set interface sc0 地址> <子网掩码><直接广播地址>;
配置缺省路由命令语句: set route 0.0.0.0 <缺省路由 IP 地址(子网内第一个可用IP地址)>;
5.2 交换机端口配置
(1)Cisco IOS 系统(35 系列)
① 配置交换机的端口描述信息。
步骤一:进入端口配置模式。
Switch-3528-TEST(config) # interface f0/1(端口号)
eg:在同时配置两个交换机的时候若一个端口号是g5/1,另一个端口号是g5/12在配置的时候直接写成Switch-3528-TEST(config) # interface g5/1-12即可。
Switch-3528-TEST(config-if) #
步骤二:配置端口描述信息。
Switch-3528-TEST(config-if) #description To-Webserver
Switch-3528-TEST(config-if) #
② 配置交换机端口的关闭与开启。
步骤一:进入端口配置模式。
Switch-3528-TEST(config) # interface fastethernet0/1
Switch-3528-TEST(config-if) #
步骤二:关闭或开启端口。
Switch-3528-TEST(config-if) # shutdown(关闭端口)
Switch-3528-TEST(config-if) #no shutdown(开启端口,使端口处于工作状态)
③ 配置交换机端口的通信方式。
Switch-3528-TEST(config-if) #duplex auto(设置为自动协商(自适应),默认为此种方式)
Switch-3528-TEST(config-if) # duplex full(设置为全双工)
Switch-3528-TEST(config-if) # duplex half(设置为半双工)
④ 配置端口的传输速率。
Switch-3528-TEST(config-if) # auto(设置端口为自动速率配置)
Switch-3528-TEST(config-if) # speed 10(设置端口速率为 10Mbit/s)
Switch-3528-TEST(config-if) #speed 100(设置端口速率为 100Mbit/s)
(2)Catalyst OS(65 系列)
① 配置交换机的端口描述信息。
命令格式:set port name<mod/port><name> ,其中,name 为端口描述,字符数一般不超过 240 个。
Switch-6509-TEST(enable) # set port name 0/1 to-Webserver
Switch-6509-TEST(enable)
② 配置交换机端口的关闭与开启
命令格式:set port disable <mod/port> (关闭端口)
set port enable <mod/port> (打开端口)
Switch-6509-TEST(enable)set port disable 0/1(关闭 0/1 号端口)
Switch-6509-TEST(enable)set port enable 0/1(打开 0/1‘/’[[[[[[[[[[[[[[[[[[[[[[[[[ 号端口)
③ 配置端口的通信方式。
命令格式:set port duplex full(设置全双工)
set port duplex half(设置为半双工)
Switch-6509-TEST(enable)set port duplex 0/1 full(0/1 端口设置为全双工)
Switch-6509-TEST(enable)set port duplex 0/1 half (0/1 到 0/24 端口设置为半双工)
④ 配置端口的传输速率。
命令格式:set port speed auto(自适应)
set port speed (速率 10,100,1000)
Switch-6509-TEST(enable)set port speed 0/1 auto (设置端口的速率为自适应)
Switch-6509-TEST(enable)set port speed 0/1-24 10(设置端口 0/1 到 0/24 的速率为10Mbps)
6. 交换机 VLAN 配置
6.1 VLAN 的建立和删除
(1)Cisco IOS 系统(35 系列)
① 建立 VLAN。
命令格式:vlan<vlan_ID> name<vlan_name>
Switch-3528-TEST # vlan data
Switch-3528-TEST>(vlan) # vlan 100 name vlanwork
② 删除 VLAN。
Switch-3528-TEST>(vlan) # no vlan <vlan_ID>
修改 VLAN 与建立 VLAN 步骤完全相同
Switch-3528-TEST>(vlan) # vlan 100 name vlanwork
Switch-3528-TEST>(vlan) # vlan 100 name vlangroup
(2)Catalyst OS(65 系列)
① 建立 VLAN。
命令格式:set vlan <vlan_ID> name <vlan_name>
Switch-6509-TEST>(enable)set vlan 100 name vlan 100(建立 VLAN 100,名称为 vlan 100)
② 删除 VLAN。
Switch-6509-TEST>(vlan)# clear vlan 100(删除 vlan100)
修改 VLAN 与建立 VLAN 步骤完全相同
Switch-6509-TEST>(enable) set vlan 100 name vlan 100
Switch-6509-TEST>(enable) set vlan 100 name vlan 1000
6.2 为交换机端口分配 VLAN
(1)Cisco IOS 系统(35 系列)
步骤一:进入端口配置模式。
Switch-3528-TEST # configure terminal Switch-3528-TEST(config) # int f0/1
Switch-3528-TEST(config-if) #
步骤二:为端口分配 VLAN。
命令格式:switchport access vlan <vlan_ID>
Switch-3528-TEST(config-if) # switchport access vlan 100(将端口 f0/1 划分到 VLAN 100 中)
Switch-3528-TEST(config-if) #
(2)Catalyst OS(65 系列)
命令格式:set vlan<vlan_ID><mod/port>
Switch-3528-TEST(enable) set vlan 100 0/1(将端口 0/1 划分到 VLAN 100 中)
Switch-3528-TEST(enable)
6.3 VLAN Trunk 的配置
vlan trunk 的配置任务主要有:
设置交换机端口的 vlan trunk 模式、封装 vlan 协议,设置允许中继的 vlan。
主要功能:利用 vlan trunk 为交换机互联的汇聚链路上所传输的 vlan 数据帧打上标签,保证多个 vlan 数据帧的 传输,并起到区分作用。
主要协议:ISL(思科私有协议)
IEEE 802.1Q(dotlq:国际标准协议)
(1)Cisco IOS 系统(35 系列)
步骤一:进入交换机端口配置模式。
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 协议。
Switch-3528-TEST(config-if) #switchport trunk encapsulation dotlq(配置 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 trunk allowed vlan 1,10(允许 VLAN 1 和 10 通过此 Trunk 通路)
Switch-3528-TEST(config-if) # switchport trunk allowed vlan 1-10(允许 VLAN 1-10 通过此 Trunk 通路)
Switch-3528-TEST(config-if) # switchport trunk allowed vlan except 11-20(阻止 VLAN 11-20 通过此 Trunk 通 路)
(2)Catalyst OS(65 系列)
步骤一:配置 VLAN Trunk 模式,封装 VLAN 协议。
命令格式:set trunk<mod/port><mode><type>
Switch-6509-TEST>(enable) set trunk 1/24 on dotlq(配置 VLAN Trunk 模式,封装 VLAN 协议)
Port(s) 1/24 trunk mode set to on
步骤二:设置允许或删除中继的 VLAN。
命令格式:set trunk<mod/port> vlan<vlan id>
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 vlan 13-15(在端口 1/24 的允许 VLAN 删除 13~15 号 vlan)
7. 交换机 VTP 配置
7.1 VTP 的基本概念
VTP 是 VLAN 中继协议,也被称为 VALN 干道协议。
它是一个 OSI 参考模型第二层的通信协议,主要用于管理在同一个域的网络范围内 VLANs 的建立、删除和重 命名。
配置 VTP 的任务主要有两个:一是建立 VTP 域,二是设置 VTP 的工作模式;
注意:同一个域的所有交换机,必须运行相同版本的 VTP,并具有相同的域名;
VTP Server:一般一个 VTP 域内的整个网络只设一个 VTP Server,它维护该 VTP 域中所有 VLAN 信息列表,可以建立、删除或修改 VLAN。
VTP Client:也维护所有 VLAN 信息列表,但是它的 VLAN 信息是从 VTP Server 学习到的,并且不具有建立、 删除或修改 VLAN 的功能。
VTP Transparent:相当于一个独立的交换机,它不参与 VTP 工作,不从 VTP Server 学习 VLAN 的配置信息,而 只拥有本设备上自己的 VLAN 信息,因此它也只能建立、删除和修改本机上的 VLAN 信息。
6.7.2 VTP 的配置
(1)Cisco IOS 系统(35 系列)
-
配置 VTP 域名
Switch-3528-TEST # configure terminal(进入工作模式)
Switch-3528-TEST (config)# vtp domin nixixueba
(设置 VTP 域名为 nixixueba,同一个域的所有交换机,必须设置相同的域名,同时 VTP 协议的版本号必须一 致)
-
配置 VTP 工作模式
Switch-3528-TEST(config)# vtp mode server(设置 VTP Server 模式,默认值)
Switch-3528-TEST(config)# vtp mode client(设置为 VTP Clinet 模式)
Switch-3528-TEST(config)# vtp mode transparent(设置为 VTP Transparent 模式)
Switch-3528-TEST(config)#
(2)Catalyst OS(65 系列)
-
配置 VTP 域名。
Switch-6509-TEST>(enable) set vtp domain nixixueba (设置 VTP 域名为 nixixueba)
-
配置 VTP 工作模式。
Switch-6509-TEST>(enable) set vtp mode server(设置为 VTP Client 模式)
Switch-6509-TEST>(enable) set vtp mode client(设置为 VTP Clinet 模式)
Switch-6509-TEST>(enable) set vtp mode transparent (设置为 VTP Transparent 模式)
8. 生成树协议 STP
8.1 STP 的基本概念
生成树协议(STP)是一个二层链路管理协议。它主要功能是在保证网络中没有回路的。基础上,允许在第二层链路中提供冗余路径,以保证网络可靠、稳定地运行。
IEEE 802.1D 是最早的 STP 的标准,它提供了动态冗余切换机制,是目前最为流行、应用广法的 STP 标准。
STP运行在交换机和网桥设备上,通过计算建立一个稳定的树状结构网络,来避免网络中回路的产生。
8.2 网桥
STP 的工作过程为:通过在交换机之间传递网桥协议数据单元(BPDU),并**运用生成树算法(STA)**对其进行比 较计算。
(1)首先进行根网桥选择(根网桥为整个生成树拓扑结构的核心,所有数据传输均通过根网桥)。
(2)然后确定交换机冗余链路端口的工作状态,让一些端口进入阻塞工作模式,另一些端口进入转发工作模 式。
(3)其中设置为阻塞模式的端口不能进行数据流的转发和接收,但仍作为一个激活的端口,可进行 BPDU 的 接收和读取。
8.3 BPDU 相关内容
BPDU 中携带了实现生成树算法的有关信息,包括:Root ID、Root Path Cost、Bridge ID、Port ID、Hello time、Max Age。
BPDU 数据包有两种类型,一种是包含配置信息的配置 BPDU(不超过 35 个字节),另一个是包含拓扑变化信息的拓扑变化通知 BPDU(不超过 4 个字节)。
在配置 BPDU 包的 Bridge ID 信息,是选取根网桥或根交换机的主要依据。
一般情况下,Bridge ID 值最小的成为根网桥或根交换机。
Bridge ID 用 8 个字节标识,后 6 个字节为交换机的 MAC 地址,前 2 个字节为优先级值。
桥优先级(2 个字节) | 桥 MAC 地址(6 个字节) |
---|
优先级值越小,优先级越高(根网桥或根交换机)。
优先级取值范围为 0~61440,增值量为 4096,交换机的优先级一般默认为 32768,可以使用命令人工配置。
一台交换机的优先级设置为 8189,优先级高级其他交换机,会成为根交换机;
选择根网桥时,优先级相同,会根据 MAC 地址的值决定根网桥,MAC 的值最小的为根网桥;
默认情况下,交换机每 2 秒定时发送一次 BPDU,当检测到网络拓扑变化或故障发生时,也会发生新的 BPDU, 以及时进行生成树的更新
9. 生成树 STP 配置
9.1 配置 STP 优先级
(1)Cisco IOS 系统(35 系列)
命令格式:spanning-tree vlan<vlans>priority<0-61440>
Switch-3528-TEST(config)# spanning-tree vlan 3 priority 8192
Switch-3528-TEST(config)#
(2)Catalyst OS(65 系列)
命令格式:set spantree priority<0-61440>
Switch-6509-TEST>(enable)set spantree priority 8192
Switch-6509-TEST>(ebable)
9.2 配置生成树可选功能
(1)BackboneFast 配置 BackboneFast 的功能就是当间接链路(骨干链路)失效,阻塞端口不需要等待生成树最大存活时间。而是直接将端口由侦听和学习状态转换为转发状态;
① Cisco IOS 系统(35 系列)
命令格式:
spanning-tree BackboneFast(开启生成树的 BackboneFast 功能)
Switch-3528-TEST(config)# spanning-tree backbonefast(允许 BackboneFast 功能)
② Catalyst OS(65 系列)
命令格式:
set spantree backbonefast enable(开启生成树的 BackboneFast 功能)
set spantree backbonefast disable(关闭生成树的 BackboneFast 功能)
(2)UplinkFast 配置
UplinkFast 的功能是当生成树拓扑结构发生变化和在使用上连链路组的冗余链路之间完成负载平衡时,直接链路(上连链路)失效时,阻塞端口直接跳过侦听和学习,变成转发状态,提供快速收敛。
① Cisco IOS 系统(35 系列)
命令格式:spanning-tree uplinkfast
spanning-tree uplinkfast max-update-rate <0~32000>
其中,max-update-rate 的值在 0~32000 之间,单位是 packet/s(每秒更新的包数)。
② Catalyst OS(65 系列)
命令格式:set spantree uplinkfast enable
set spantree uplinkfast enable rate
其中,的默认值是 15packets/100ms,单位是 packet/ms。
(3)PortFast 配置
PortFast 用于在接入层交换机端口上跳过正常的生成树操作,加快终端工作站接入到网络中的速度。它的功能 是使交换机的端口跳过侦听和学习状态。直接从阻塞状态进入到转发状态;
1Cisco IOS 系统(35 系列)
命令格式:spanning-tree portfast default
Switch-3528-TEST # configure terminal
Switch-3528-TEST (config)# spanning-tree portfast default 2Catalyst OS(65 系列)
命令格式:set spantree portfast <mod/port> enable(打开 portfast)
set spantree portfast disable(关闭 portfast)
set spantree portfast default(默认启用 portfast)
(4)BPDU Filter 配置
BPDU Filtering 会使交换机在指定的端口上停止发送 BPDUs,对于进入这个端口的 BPDUs 也不做任何处理,同时立刻将端口状态转换为转发状态;
① Cisco IOS 系统(35 系列)
命令格式:spanning-tree portfast bpdufilter default
Switch-3528-TEST(config)#spanning-tree portfast bpdufilter default
② Catalyst OS(65 系列)。
命令格式:
set spantree portfast bpdu-filter enable(对所有端口启用 bpdu-filter)
set spantree portfast bpdu-filter disable(关闭 bpdu-filter)
set spantree portfast bpdu-filter <mod/port> enable(打开 bpdu-filter)
set spantree portfast bpdu-filter disable(关闭 bpdu-filter)
set spantree portfast bpdu-filter default(设置为缺省)