学习沉淀成长分享 二层交换基础 红茶三杯 http://weibo.com/vinsoney Latest update: 2012-08-01
Content 二层交换基础 VLAN 及 Trunk 二层交换的基本配置 实现 VLAN 间的互访
二层交换基础 园区网中的二层交换 二层交换机的主要功能 MAC 地址的概念 交换机的寻址
园区网 Internet Internet 接入层 (AS) 用户接入接入安全访问控制汇聚层 (GS) 流量汇聚链路冗余设备冗余路由选择核心层 (CO) 高速转发服务器接入路由选择出口层 (OR) 广域网接入出口策略带宽控制
二层交换机的主要功能 Internet 终端设备的接入 ; 以太网数据帧的交换, 根据目的 MAC 地址转发数据帧 ; 学习 MAC 地址, 并维护 MAC 地址表 ; 防止二层环路
MAC 地址 PC1 PC2 Fa0/1 Fa0/2 IP:192.168.1.1 MAC:0050-5600-0001 IP:192.168.1.2 MAC:0050-5600-0002 源 MAC 0050-5600-0001 目 MAC 0050-5600-0002 源 IP 192.168.1.1 目 IP 192.168.1.2 交换机查看数据帧的二层头部 ; 在自己的 MAC 地址表中查找目的 MAC; 随后将数据帧从特定的端口转发出去 源 MAC 0050-5600-0001 目 MAC 0050-5600-0002 源 IP 192.168.1.1 目 IP 192.168.1.2
MAC 地址 00e0.fc39.8034 00000000 11100000 11111100 00111001 1000000 00110100 OUI( 组织唯一标识 ) MAC 地址有 48 位, 通常被表示为点分十六进制数 ; MAC 地址全球唯一, 由 IEEE 对 OUI 进行管理和分配 ; 每个地址由两部分组成, 分别是供应商代码和序列号 其中前 24 位二进制代表该供应商代码 剩下的 24 位由厂商自己分配
MAC 地址表 switch#show mac-address-table Mac Address Table ---------------------------------------------------------------------------- Vlan Mac Address Type Ports ------ -------------------- ------------- ------- 1 0002.8502.def0 DYNAMIC Gi0/1 1 0015.f915.8e80 DYNAMIC Gi0/1 1 0030.b637.8e10 DYNAMIC Gi0/1 10 0027.450b.c00a STATIC Gi0/2 20 00d0.bbe4.da59 DYNAMIC Gi0/5 Catalyst 交换机默认情况下动态 MAC 表项的老化时间为 300s
二层交换机的寻址及数据交换 PC1 0026.ABCD.0001 FE0/1 FE0/3 PC3 0026.ABCD.0003 PC2 0026.ABCD.0002 FE0/2 FE0/4 MAC Address-Table MAC Address Port PC4 0026.ABCD.0004 1 初始情况下交换机的 MAC 地址表是空的
二层交换机的寻址及数据交换 2 PC1 发送一个数据帧给 PC4, 暂且假设 PC1 已经知道 PC4 的 MAC 地址 Src:0026.ABCD.0001 Dst:0026.ABCD.0004 Layer2 Frame Header IP Header DATA PC1 0026.ABCD.0001 FE0/1 FE0/3 PC3 0026.ABCD.0003 PC2 0026.ABCD.0002 FE0/2 FE0/4 MAC Address-Table PC4 0026.ABCD.0004
二层交换机的寻址及数据交换 Src:0026.ABCD.0001 Dst:0026.ABCD.0004 IP Header DATA PC1 0026.ABCD.0001 FE0/1 FE0/3 PC3 0026.ABCD.0003 PC2 0026.ABCD.0002 FE0/2 FE0/4 PC4 0026.ABCD.0004 MAC Address-Table MAC Address 0026.ABCD.0001 Port FE0/1 3 交换机在收到数据帧后, 将数据帧的源 MAC 地址学习到 MAC 地址表中, 并与接收该帧的接口 FE0/1 口关联
二层交换机的寻址及数据交换 Src:0026.ABCD.0001 Dst:0026.ABCD.0004 IP Header DATA PC1 0026.ABCD.0001 FE0/1 Flooding FE0/3 PC3 0026.ABCD.0003 PC2 0026.ABCD.0002 FE0/2 FE0/4 PC4 0026.ABCD.0004 MAC Address-Table MAC Address 0026.ABCD.0001 Port Fa0/1 4 交换机在 MAC 地址表中查询数据帧的目的 MAC 地址, 发现没有匹配的表项, 因此将数据帧从除了其入站接口之外的所有接口泛洪出去
二层交换机的寻址及数据交换 PC1 0026.ABCD.0001 FE0/1 FE0/3 PC3 0026.ABCD.0003 PC2 0026.ABCD.0002 FE0/2 FE0/4 PC4 0026.ABCD.0004 MAC Address-Table MAC Address Port Src:0026.ABCD.0004 Dst:0026.ABCD.0001 IP Header DATA 0026.ABCD.0001 FE0/1 5 PC2 及 PC3 收到数据帧后将其丢弃, 因为这些数据帧并非发送给自己 ; PC4 则收下数据帧 现在 PC4 要回复数据给 PC1
二层交换机的寻址及数据交换 PC1 0026.ABCD.0001 FE0/1 FE0/3 PC3 0026.ABCD.0003 PC2 0026.ABCD.0002 FE0/2 FE0/4 PC4 0026.ABCD.0004 MAC Address-Table MAC Address Port Src:0026.ABCD.0004 Dst:0026.ABCD.0001 IP Header DATA 0026.ABCD.0001 FE0/1 0026.ABCD.0004 FE0/4 6 交换机收到了数据帧, 将帧头中的源 MAC 地址学习到 MAC 表中, 并与接口 F0/4 关联
二层交换机的寻址及数据交换 PC1 0026.ABCD.0001 FE0/1 FE0/3 PC3 0026.ABCD.0003 PC2 0026.ABCD.0002 FE0/2 FE0/4 PC4 0026.ABCD.0004 MAC Address-Table MAC Address Port Src:0026.ABCD.0004 Dst:0026.ABCD.0001 IP Header DATA 0026.ABCD.0001 FE0/1 0026.ABCD.0004 FE0/4 7 随后交换机在 MAC 表中查找数据帧的目的 MAC 地址, 发现有一个匹配的表项, 出接口是 Fa0/1, 于是将数据帧转发到 Fa0/1 口
VLAN 及 Trunk VLAN 带来什么 VLAN 的概念 Trunk 的概念
为什么需要 VLAN Switch 1 2 23 24 192.168.1.1 192.168.1.2 192.168.1.3 192.168.1.4 交换机的所有接口属于一个广播域, 往往也是一个逻辑子网 ; 用户无法根据业务需要灵活的在交换机上进行广播域的隔离 ; 随着网络规模越来越大 数量越来越多, 广播风暴将给网络带来重大问题
为什么需要 VLAN Switch 1 2 23 24 VLAN10 VLAN20 192.168.1.1 192.168.1.2 192.168.2.1 192.168.2.2 VLAN(Virtual LAN) 技术提供了一种灵活的解决方案 ; 将交换机的接口根据业务需要添加到不同的 VLAN 中, 从而实现二层隔离
VLAN 的成员模式 Static VLAN Dynamic VLAN FE0/1 vlan10 FE0/2 MAC 0200-4C00-0050 静态 VLAN - 以手工的方式将接口加入特定的 VLAN; 动态 VLAN - 根据接入到交换机的客户端的 MAC 地址等信息, 动态地将交换机的 接口添加到特定的 VLAN
VLAN 知识点小结 一个 VLAN 中所有设备处于同一广播域内, 不同的 VLAN 为不同的广播域, 一个 VLAN 一般是一个 IP 网段, 不同的 VLAN 规划到不同的 IP 网段 ; 不同的 VLAN 之间二层隔离, 广播不能跨越 VLAN 传播, 因此不同 VLAN 之间的设备无法进行二层通信, 需通过三层设备实现互通 ; VLAN 中成员关系多基于交换机的接口进行静态地分配, 划分 VLAN 就是将交换机的接口添加到特定 VLAN; VLAN 工作于 OSI 参考模型的第二层, 是二层交换机的一个非常根本的工作机制
Access 接口 连接 PC 的接口, 设置为 Access 模式, 只能加入一个 VLAN, 默认加入 VLAN1 Access 是交换机二层接口的一种类型, 通常用于连接终端 ( 例如 PC 或服务 器 ) 或路由器 ; Access 接口只能加入一个 VLAN, 默认交换机上的二层接口都加入 VLAN1
Trunk 接口 Switch1 Switch2 VLAN10 财会部 VLAN20 技术部 VLAN10 财会部 VLAN20 技术部 当一条链路需要承载多个 VLAN 的流量时, 需使用 trunk 技术 ; Trunk 链路两端的交换机需采用相同的干道协议 (Dot1q 或 ISL); Trunk 技术使得 VLAN 能够跨交换机,Trunk 链路两端的接口需指定为 Trunk 类型
Trunk 协议类型 :ISL CISCO 私有封装协议, 通过硬件 (ASIC) 实现 在交换机或路由器与交换机之间, 在交换机与具有 ISL 网卡的服务器之间可以实现 ISL header 26 bytes Original Frame CRC 4bytes DA TYPE User SA LEN AAAA03 HSA VLAN BPDU INDEX RES 40bit 4 4 48 16 24 24 15 1 16 16
Trunk 协议类型 :802.1q 802.1q 是一种公有标准, 也称为 Dot1q Original Frame Dest Src Len/EType Data FCS Insert tag field Tagged Frame Dest Src Tag Len/EType Data FCS EtherType(0x8100) PRI VLAN ID 16bits 3bits 1bit 12bits Token Ring Encapsulation Flag
Trunk 协议类型 :802.1q 公有标准, 在数据帧头的源 MAC 字段后插入一个 802.1q 的头部 ; 默认情况, 在 802.1Q Trunk 上对所有的 VLAN 打 Tag, 除了 Native VLAN; Native VLAN, 也称为本征 VLAN, 是在 trunk 上无需打标签的 VLAN, 默认为 vlan1, 可手工修改,Trunk 链路两端所配置的 Native VLAN ID 必须一致 ; Tag 标记字段详细信息 : Tag 标记字段包含一个 2 bytes EtherType( 以太类型 ) 字段 一个 3bits 的 PRI 字段 1bit 的 CFI 字段 12bits 的 VLAN ID 字段
VLAN 的范围 VLAN ID 范围 用途 是否通过 VTP 传播 0 和 4095 保留 用户不能使用 不适用 1 常规范围 默认 VLAN, 不可删除 是 2-1000 常规范围 用户能够创建 使用和删除 是 1001 常规范围 用户不能创建 使用和删除 是 1002-1005 保留 FDDI 和令牌环 不适用 1006-1009 保留 不适用 1010-1024 保留 不适用 1025-4094 保留 有限使用 否
Case2 园区网中的楼层交换机 Switchport mode access Local Network Switchport mode trunk Local Network 楼层 3 楼层 3 楼层 2 级联的概念及问题 楼层 2 楼层 1 楼层 1
二层交换的基本配置
VLAN 的基本配置 创建 VLAN Switch(config)# vlan 2 Switch(config-vlan)# name TechDept 配置 Access 模式的接口用于连接终端设备, 并且将接口加入特定 VLAN Switch(config)# interface fa0/1 Switch(config-if)# switchport mode access Switch(config-if)# switchport access vlan 2
VLAN 的基本配置 配置 Trunk 封装方式 Switch(config)# interface fa0/15 Switch(config-if)# switchport trunk encapsulation {isl dot1q negotiate} 开启端口 trunk 模式 Switch(config-if)# switchport mode {dynamic {auto desirable} trunk}
二层交换实验 SW1 FE0/15 FE0/15 SW2 PC1 VLAN10 192.168.10.1/24 PC2 VLAN20 192.168.20.1/24 PC3 VLAN10 192.168.10.2/24 PC4 VLAN20 192.168.20.2/24 PC1 PC2 PC3 PC4 的 IP 地址及所属 VLAN 如图所示 ; 按照图示要求完成实验, 使得相同 VLAN 内的节点, 例如 PC1 与 PC3 能够互 访 ;PC2 与 PC4 能够互访
实现 VLAN 间的互访
VLAN 之间二层隔离 每个 VLAN 都是一个独立的广播域, 不同的 VLAN 之间二层就已经隔离, 因此属于不通 VLAN 的节点之间是无法直接互访的 Switch FE0/1 FE0/2 FE0/1 V10 FE0/2 V20 PC1 VLAN10 PC2 VLAN20
使用路由器物理接口实现 VLAN 间互访 路由器能够实现不同广播域之间的数据路由 ; PC1 VLAN10 每一个 VLAN 都需要有一个物理接口进行对接 ; 路由器端口资源有限, 这种方案扩展性不高 FE0/0 FE1/0 PC2 VLAN20
使用路由器子接口实现 VLAN 间互访 在路由器上基于物理接口来创建子接口, 通过 子接口与 VLAN 对接, 子接口是逻辑接口, 物 PC1 VLAN10 理上并不存在 ; 子接口能够识别打上 Tag 的数据帧 子接口 FE0/0.10 打 vlan10 的标签 FE0/24 FE0/0 PC2 VLAN20 子接口 FE0/0.20 打 vlan20 的标签
使用路由器子接口实现 VLAN 间互访 Interface fa0/0.10 encapsulation dot1q 10 ip address 192.168.10.254 255.255.255.0 Switch Router Vlan10 Vlan20 FE0/1 FE0/2 FE0/24 Trunk FastEthernet0/0 路由器子接口也被形象地称为 单臂路由 Interface fa0/0.20 encapsulation dot1q 20 ip address 192.168.20.254 255.255.255.0
单臂路由实验 GW FE0/0.10 192.168.10.254 FE0/0 FE0/0.20 192.168.20.254 FE0/14 SW1 FE0/15 FE0/15 SW2 PC1 VLAN 10 192.168.10.1/24 网关 :10.254 PC2 VLAN 20 192.168.20.1/24 网关 :20.254 PC3 VLAN 10 192.168.10.2/24 网关 :10.254 PC4 VLAN 20 192.168.20.2/24 网关 :20.254
Q&A 在本场景中, 这段链路是 否需要配置为 Trunk, 为 什么? VLAN10 192.168.10.1 VLAN10 192.168.10.22
Q&A Access Port Vlan 10 Access Port Vlan 20 Access Port Vlan 10 两个 PC 能互相通信么? Access Port Vlan 20 192.168.10.1 192.168.10.22
Switch Virtual Interfaces(SVI) 交换式虚拟接口 (SVI) VLAN 接口 ( 三层接口 ) interface vlan 10 或 20 路由模块 vlan10 vlan20 交换模块 VLAN10 VLAN20
使用 SVI 实现 VLAN 间互访 FE0/1 PC1 VLAN10 192.168.10.1/24 FE0/2 PC2 VLAN20 192.168.20.1/24 vlan 10 20! interface fastethernet 0/1 switchport mode access switchport access vlan 10 interface fastethernet 0/2 switchport mode access switchport access vlan 20! Ip routing Interface vlan 10 ip address 192.168.10.254 255.255.255.0 Interface vlan 20 ip address 192.168.20.254 255.255.255.0
学习沉淀成长分享 关注 @ 红茶三杯 :weibo.com/vinsoney Thank You