交换机技术和局域网接入
💻 网络接入 (Network Access)
1. 交换机技术和工作原理 (Switching Technology)
交换机在 OSI 模型的数据链路层(第二层)工作,其主要功能是根据数据帧中的 MAC 地址进行转发决策。
- **MAC 地址学习 (MAC Address Learning)**:
- 交换机初始化时,它的 MAC 地址表 (MAC Address Table) 是空的。
- 当交换机接收到一个数据帧时,它会检查数据帧的源 MAC 地址。
- 交换机将该源 MAC 地址与其进入的端口进行关联,并记录在 MAC 地址表中。
- 示例: 如果数据帧从 Gi0/1 端口进入,源 MAC 地址是 AA:AA:AA:AA:AAAA,交换机就记录:
AA:AA:AA:AA:AAAA对应Gi0/1。
- **转发决策 (Forwarding Decision)**:
- 交换机检查数据帧的目的 MAC 地址。
- 查找 MAC 地址表:
- 命中 (Match): 如果目的 MAC 地址在 MAC 地址表中,交换机将数据帧单播 (Unicast) 转发到对应的出端口。
- 未知 (Unknown): 如果目的 MAC 地址不在 MAC 地址表中(通常是第一次通信),交换机将数据帧泛洪 (Flood) 到除接收端口外的所有其他端口。
- 同一端口 (Same Port): 如果目的 MAC 地址在 MAC 地址表中,并且对应的出端口与接收端口相同,交换机将丢弃 (Drop) 该数据帧,避免环路。
- **过滤 (Filtering)**:通过地址学习,交换机能够只在需要的端口转发数据帧,减少冲突域和不必要的流量。
2. 二层交换机的配置与验证
在思科交换机上配置基础参数是 CCNA 的必备技能。
基本配置命令:
- 设置主机名:
hostname SW1 - 配置 Console 口密码:
line console 0->password cisco->login - 配置 VTY 远程管理密码(用于 Telnet/SSH):
line vty 0 15->password cisco->login
- 设置主机名:
配置管理 IP 地址 (SVI): 交换机本身不需要 IP 地址进行二层转发,但需要 IP 地址(通常在 VLAN 接口上配置,称为 SVI - Switch Virtual Interface)进行远程管理。
1
2
3
4
5SW1(config)# interface vlan 1
SW1(config-if)# ip address 192.168.1.10 255.255.255.0
SW1(config-if)# no shutdown
SW1(config-if)# ip default-gateway 192.168.1.1
! 配置默认网关,用于访问其他网络端口配置: 配置接口描述和速度/双工模式。
1
2
3
4
5SW1(config)# interface FastEthernet0/1
SW1(config-if)# description PC_Host_A_Port
SW1(config-if)# speed 100
SW1(config-if)# duplex full
SW1(config-if)# no shutdown验证命令:
show mac address-table:查看 MAC 地址表内容。show interface status:查看端口状态(连接状态、VLAN、双工等)。show version:查看交换机硬件和软件版本信息。
3. VLAN (虚拟局域网)
VLAN 是一种将物理上连接在同一交换机或多台交换机上的设备,逻辑上划分为不同广播域的技术。
核心概念
- 广播域 (Broadcast Domain): 在没有 VLAN 的情况下,一个交换机的所有端口都属于同一个广播域。这意味着任何一个端口发出的广播帧,所有其他端口都会收到。VLAN 的作用就是将一个物理交换机划分成多个独立的广播域。
- 隔离性: 不同 VLAN 之间的数据流是隔离的。VLAN 10 的设备无法直接与 VLAN 20 的设备通信,即使它们连接在同一个交换机上。这种隔离性提升了网络的安全性、稳定性和效率。
- VLAN ID: 每个 VLAN 都有一个唯一的标识符,称为 VLAN ID(范围 1 到 4094)。
- 普通范围 VLAN (Normal Range): 1 到 1005。VLAN 1 是默认的、不能删除的 VLAN。
- 扩展范围 VLAN (Extended Range): 1006 到 4094。
端口模式 (Port Modes)
交换机接口有两种基本模式来处理 VLAN 流量:
a. 接入端口 (Access Port)
作用: 仅属于一个 VLAN,用于连接终端设备(如 PC、服务器、打印机)。
数据帧: 接入端口接收和发送的数据帧是未标记 (Untagged) 的,这意味着数据帧中不包含 VLAN ID 信息。
配置示例:
1
2
3
4SW1(config)# interface FastEthernet0/1
SW1(config-if)# switchport mode access
SW1(config-if)# switchport access vlan 10
! 将该端口分配给 VLAN 10
b. 干道端口 (Trunk Port)
作用: 用于连接交换机与交换机之间,或者交换机与路由器之间,承载多个 VLAN 的流量。
数据帧: 干道端口发送的数据帧是标记 (Tagged) 的。
封装协议: CCNA 中主要学习 IEEE 802.1Q 封装标准,它会在数据帧的以太网头中插入一个 4 字节的标记字段,其中包含了 VLAN ID。
Native VLAN (本征 VLAN): 在 802.1Q 中,通常有一个特殊的 VLAN(默认为 VLAN 1)在 Trunk 链路上不打标签。如果 Trunk 端口接收到未标记的数据帧,它会将该帧分配给 Native VLAN。
配置示例:
1
2
3
4
5
6
7SW1(config)# interface GigabitEthernet0/2
SW1(config-if)# switchport mode trunk
! 设置为 Trunk 模式
SW1(config-if)# switchport trunk allowed vlan 10,20,30
! 允许这些 VLAN 的流量通过
SW1(config-if)# switchport trunk native vlan 99
! 更改 Native VLAN 为 99
跨 VLAN 通信 (Inter-VLAN Routing)
由于不同 VLAN 是独立的广播域,如果需要 VLAN 10 的 PC 访问 VLAN 20 的服务器,就必须通过三层设备(路由器或三层交换机)进行路由。
- 传统方式 (Router-on-a-Stick): 在路由器的一个物理接口上配置多个逻辑子接口,每个子接口配置一个 VLAN 的 IP 地址,并与交换机的 Trunk 端口连接。路由器负责在这些子接口之间进行路由。
配置与验证命令
创建 VLAN:
1
2
3
4SW1(config)# vlan 10
SW1(config-vlan)# name DATA_VLAN
SW1(config-vlan)# vlan 20
SW1(config-vlan)# name VOICE_VLAN验证 VLAN 状态:
1
2SW1# show vlan brief
! 查看所有 VLAN 及其对应的端口分配验证 Trunk 状态:
1
2SW1# show interface trunk
! 查看哪些端口是 Trunk 模式,使用的封装协议,以及允许通过的 VLAN
好的,我们继续深入学习 Trunking (干道) 和 **Router-on-a-Stick (单臂路由)**,这是实现跨交换机和跨 VLAN 通信的关键技术。
4. Trunking(干道)详解
封装协议:802.1Q
- 标准: 802.1Q 是当前主流的 VLAN 封装标准,由 IEEE 定义。
- 工作原理: 当数据帧通过 Trunk 链路传输时,802.1Q 协议会在原始的以太网帧头中插入一个 4 字节(32 位) 的标签字段。
- 这个标签字段包含最重要的信息是 **VLAN ID (VID)**,它是一个 12 位的字段,能够标识 $2^{12} = 4096$ 个 VLAN(即 0 到 4095)。
- 配置要点:
- 为了使 Trunk 链路正常工作,连接两端的交换机端口必须使用相同的封装协议(通常都是 802.1Q)。
- Native VLAN(本征 VLAN): Trunk 链路上有一类特殊的 VLAN,它的数据帧在传输时不被打标签。当一个 Trunk 端口接收到任何未打标签的数据帧时,它会将该帧分配给它的 Native VLAN。如果 Trunk 两端的 Native VLAN 设置不一致,会导致 VLAN 间流量泄漏或网络安全问题。
Trunk 端口配置
在思科 IOS 中,配置 Trunk 端口的命令如下:
1 | SW1(config)# interface GigabitEthernet0/1 |
5. Router-on-a-Stick(单臂路由)
正如之前所说,不同 VLAN 之间需要通过三层设备(路由器)才能通信。单臂路由是实现 VLAN 间路由 (Inter-VLAN Routing) 的一种经典且经济的方式。
工作原理
- 核心思想: 利用路由器上的单个物理接口与交换机的 Trunk 端口相连。路由器通过在这个物理接口上创建多个逻辑子接口 (Subinterfaces) 来实现对多个 VLAN 的支持。
- 映射关系: 每个子接口都配置一个 IP 地址,并封装(即设置
encapsulation dot1q [VLAN ID])特定的 VLAN ID。- 例如,
G0/0.10对应 VLAN 10 的网关地址。 G0/0.20对应 VLAN 20 的网关地址。
- 例如,
- 数据流转:
- PC A (VLAN 10) 发送数据包到路由器(网关)。
- 交换机通过 Trunk 链路将已打标签(VLAN 10)的数据帧发送给路由器。
- 路由器接收到 VLAN 10 的帧,由子接口
G0/0.10处理。 - 路由器查找路由表,发现目的地址在 VLAN 20。
- 路由器将数据包重新封装为已打标签(VLAN 20)的数据帧,并通过同一个物理接口发回给交换机。
- 交换机识别出 VLAN 20 的帧,将其发送给 VLAN 20 对应的端口。
路由器配置示例
假设 VLAN 10 的网络是 192.168.10.0/24,VLAN 20 是 192.168.20.0/24。
1 | Router> enable |
6. STP (Spanning Tree Protocol, 生成树协议)
STP 运行在二层交换网络中,其核心目标是**防止环路 (Loop Prevention)**。
为什么要防止环路?
在交换网络中,为了实现高可用性和冗余性,通常会在交换机之间部署多条物理链路。然而,这种冗余链路会导致以下两个严重的二层问题:
- 广播风暴 (Broadcast Storm):
- 当一个广播帧进入网络时,交换机将其泛洪到所有端口。
- 如果存在环路,这个广播帧会无限循环,不断在环路中被复制和转发。
- 随着时间推移,环路中的交换机和链路会被泛滥的广播流量完全占据,导致网络瘫痪。
- MAC 地址表不稳定 (MAC Address Table Instability):
- 当数据帧在一个环路中循环时,交换机可能从不同的端口收到带有相同源 MAC 地址的帧。
- 交换机 MAC 地址表中的记录会频繁错误地更新,导致数据帧被发送到错误的端口。
STP 的作用就是通过逻辑上阻塞 (Blocking) 某些冗余链路,消除环路,同时在一条活动链路失败时,快速将备份链路激活,恢复冗余。
STP 的工作原理
STP 的工作流程是通过选举机制来实现的,它使用一种特殊的帧——BPDU (Bridge Protocol Data Unit) 来交换信息和协商拓扑。
a. 根桥选举 (Root Bridge Election)
整个 STP 拓扑中,只有一个交换机被选举为**根桥 (Root Bridge)**。根桥是整个网络的逻辑中心,负责生成和发送 BPDU,并作为所有路径计算的参考点。
- 选举标准: 比较 **Bridge ID (桥 ID)**。
- Bridge ID 由两部分组成:
- **优先级 (Priority)**:默认值是 32768。取值范围 0-65535,步长为 4096。
- **MAC 地址 (MAC Address)**:交换机最低的 MAC 地址。
- Bridge ID 由两部分组成:
- 选举规则: Bridge ID 值最小 的交换机被选为根桥。
- 如果优先级相同,则比较 MAC 地址,MAC 地址最小的胜出。
- CCNA 实践: 通常建议手动将一台核心交换机的优先级设置为 0 或 4096,强制指定它为根桥,以便于控制拓扑。
b. 端口角色选举 (Port Role Election)
在根桥选举完成后,拓扑中所有非根桥交换机上的端口必须被赋予以下三种角色之一:
- **根端口 (Root Port, RP)**:
- 定义: 非根桥交换机上距离根桥最近的端口。
- 每个非根桥交换机 有且仅有一个 RP。RP 处于 转发 (Forwarding) 状态。
- 选举标准: 比较到达根桥的**最低根路径开销 (Lowest Root Path Cost)**。
- **路径开销 (Cost)**:由接口带宽决定(例如:10G 接口 Cost=2;1G 接口 Cost=4;100M 接口 Cost=19)。开销值越低越好。
- 打破平局 (Tie-Breakers): 如果路径开销相同,则比较以下三项:
- 1. 最低发送 BPDU 的邻居桥 ID (Lowest Sender Bridge ID)
- 最低发送 BPDU 的邻居端口 ID (Lowest Sender Port ID)
- 最低接收端口 ID (Lowest Receiving Port ID)
- **指定端口 (Designated Port, DP)**:
- 定义: 在每条链路(网段)上,只有一个端口被选举为 DP。
- 根桥上的所有端口 都是 DP,且处于 转发 (Forwarding) 状态。
- 非根桥选举标准: 在多台交换机共享的网段上,根路径开销最低的端口成为 DP。
- 作用: DP 负责在网段上转发流量到根桥。
- **阻塞端口 (Blocked Port, BLK)**:
- 定义: 既不是 RP 也不是 DP 的端口,它们处于 阻塞 (Blocking) 状态,不转发任何数据帧(但仍接收 BPDU)。
- 作用: 阻塞端口用于消除环路,只有当活动链路失效时,它才会转换为转发状态。
STP 端口状态
端口从禁用状态到转发状态必须经过以下转换过程:
- **禁用 (Disabled)**:管理员手动关闭端口 (
shutdown)。 - **阻塞 (Blocking)**:STP 启动时的默认状态,不转发数据帧,只接收 BPDU。
- **侦听 (Listening)**:端口开始发送和接收 BPDU,确定根桥和端口角色。(持续 15 秒)
- **学习 (Learning)**:端口开始填充 MAC 地址表,但不转发数据帧。(持续 15 秒)
- **转发 (Forwarding)**:端口正常转发数据帧。
❗ 总计延迟: STP 收敛需要 30 到 50 秒(两个 15 秒计时器 + 最大老化时间)。这是 STP 的主要缺点,也是 RSTP 出现的原因。
STP 配置与验证命令
查看 STP 状态:
1
2SW1# show spanning-tree
! 查看根桥 ID, 本地桥 ID, 所有端口角色和状态手动设置优先级(影响根桥选举):
1
2SW1(config)# spanning-tree vlan 1 priority 4096
! 将 VLAN 1 的优先级设置为 4096 (小于默认值 32768,使其更有可能成为根桥)
7. EtherChannel (以太通道)
EtherChannel 是一种将多条物理以太网链路捆绑(或聚合)成一个逻辑链路的技术。
核心优势
- 带宽增强 (Increased Bandwidth): 将 $N$ 条物理链路捆绑,逻辑上的带宽近似于 $N$ 倍单条链路的带宽。例如,捆绑两条 1Gbps 的链路,逻辑上可提供 2Gbps 的吞吐量。
- 冗余性 (Redundancy): 如果捆绑中的一条物理链路失效,EtherChannel 会自动使用其余链路传输数据,且不会造成拓扑变化(即不会像 STP 那样需要经历阻塞状态的收敛时间)。
- 负载均衡 (Load Balancing): 流量通过散列算法均匀地分配到捆绑中的所有物理链路上。
- STP 优化: STP 会将整个捆绑包视为一个单逻辑端口。这显著减少了 STP 必须监视和计算的端口数量,从而简化了拓扑并防止 STP 阻塞整个冗余链路组。
捆绑协议 (Aggregation Protocols)
要建立 EtherChannel,两端的交换机必须就捆绑过程达成协议。CCNA 主要关注以下两种:
a. PAgP (Port Aggregation Protocol)
- 特点: 思科私有协议。
- 模式 (Modes):
- Desirable (期望): 积极尝试建立 EtherChannel。
- Auto (自动): 被动地等待对端发起 PAgP 协商。
- 协商规则:
- Desirable + Desirable $\rightarrow$ 捆绑成功
- Desirable + Auto $\rightarrow$ 捆绑成功
- Auto + Auto $\rightarrow$ 捆绑失败
- Desirable 或 Auto 模式不能与静态配置模式(
on)兼容。
b. LACP (Link Aggregation Control Protocol)
- 特点: IEEE 标准协议 (802.3ad),可以在不同厂商的设备之间建立 EtherChannel。
- 模式 (Modes):
- Active (主动): 积极尝试建立 EtherChannel。
- Passive (被动): 被动地等待对端发起 LACP 协商。
- 协商规则:
- Active + Active $\rightarrow$ 捆绑成功
- Active + Passive $\rightarrow$ 捆绑成功
- Passive + Passive $\rightarrow$ 捆绑失败
c. On (静态配置)
- 特点: 无协议协商。需要两端都配置为
on。 - 风险: 如果两端配置不匹配,可能造成环路。通常只在实验室环境中使用。
配置步骤 (Cisco IOS)
配置 EtherChannel 涉及三个步骤:定义通道组、设置模式、配置逻辑接口。
假设我们捆绑 Fa0/1 和 Fa0/2:
在物理接口上定义通道组和模式:
1
2
3
4SW1(config)# interface range FastEthernet0/1 - 2
SW1(config-if-range)# channel-group 1 mode active
! 使用 LACP 协议的主动模式 (active) 建立通道组 1
! 如果使用 PAgP, 则使用 'mode desirable' 或 'mode auto'配置逻辑接口 (Port Channel):
系统会自动创建逻辑接口 Port-channel 1。所有配置(如 switchport mode trunk 或 switchport access vlan)都应该在逻辑接口上进行,以确保应用于捆绑中的所有物理链路。
1
2
3
4SW1(config)# interface Port-channel 1
SW1(config-if)# switchport mode trunk
! 例如,将该 EtherChannel 配置为 Trunk 链路
SW1(config-if)# switchport trunk allowed vlan all
验证命令
查看 Port Channel 摘要:
1
2SW1# show etherchannel summary
! 查看通道组的数量、使用的协议和状态 (Port-channel 状态应为 'SU' - Layer 2)查看 Port Channel 详细信息:
1
2SW1# show etherchannel port-channel
! 查看端口的负载均衡方法查看协议细节:
1
2SW1# show etherchannel 1 port
! 查看通道组 1 中各个物理端口的状态和协议信息
8. 无线局域网 (WLAN) 基础
a. WLAN 基础组件和标准
- 标准: WLAN 基于 IEEE 802.11 系列标准(例如 802.11a/b/g/n/ac/ax)。
- 组件:
- 无线终端设备 (Clients): 笔记本电脑、手机等,内置无线网卡。
- 接入点 (Access Point, AP): 将无线信号转换为有线以太网信号,是无线和有线网络之间的桥梁。
- 无线控制器 (Wireless LAN Controller, WLC): 在大型网络中,WLC 用于集中管理、配置和监控多个 AP,实现统一控制。
- SSID (Service Set Identifier): 无线网络的名称,用于识别特定的 WLAN。终端设备通过 SSID 连接到网络。
b. 基础工作模式
- 基础设施模式 (Infrastructure Mode):
- 这是最常见的模式,终端设备通过 AP 连接到有线网络。
- AP 广播其 SSID,允许无线客户端关联 (Associate) 进来。
- Ad-hoc 模式 (点对点模式):
- 无线设备之间直接通信,不经过 AP。
- 通常用于临时的小型网络。
c. CSMA/CA 冲突避免机制
由于无线介质(空气)是共享的,并且设备无法像有线以太网 (CSMA/CD) 那样在发送数据时同时侦听冲突,因此 WLAN 采用 CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance, 载波侦听多点接入/冲突避免) 机制。
- 工作原理:
- 侦听 (Sense): 设备在发送数据前会先侦听信道是否空闲。
- 避免 (Avoidance): 如果信道忙碌,设备会等待一段随机时间后再尝试发送。
- 可选的 RTS/CTS 握手 (Optional Request to Send/Clear to Send): 为了解决**隐藏终端问题 (Hidden Node Problem)**,发送方可以先发送一个 RTS 帧,接收方回复一个 CTS 帧,通知所有设备信道即将被占用,从而避免冲突。
d. 无线安全协议 (WLAN Security)
无线网络必须加密以保护数据和访问权限。
- WEP (Wired Equivalent Privacy): 已过时且极不安全。
- WPA (Wi-Fi Protected Access): 改进了 WEP。
- WPA2 (802.11i): 目前广泛使用的标准。它使用 AES (Advanced Encryption Standard, 高级加密标准) 作为主要加密算法,比 WPA 更安全。
- WPA3: 最新、最安全的标准,具有更强的加密和防止字典攻击的能力。
WPA2/WPA3 的两种认证方式:
| 认证方式 | 全称 | 适用场景 | 认证机制 |
|---|---|---|---|
| PSK | 预共享密钥 (Pre-Shared Key) | 家庭和小型办公室 (SOHO) | 所有客户端使用相同的密钥。 |
| Enterprise | 企业级 | 大型企业网络 | 使用 802.1X 协议,客户端需通过 RADIUS 服务器进行认证。 |
