配置局域网交换

发布时间 2023-07-14 10:48:03作者: 柠萌吖

1_MAC地址表

记录交换机每个端口和所连接的设备的MAC地址的映射关系
交换机学习MAC地址时,需要遵守:

  • 一个MAC地址只能被一个端口学习
  • 一个端口可以学习多个MAC地址
    老化时间:300秒

1.2_工作机制

  • 交换机学习数据帧的源MAC地址,来获得端口和设备MAC地址的映射关系,写入MAC地址表中
  • 交换机检查数据帧的目的MAC地址,从MAC地址表中的映射关系来判断把数据帧从哪个端口发出
  • 交换机对于目的MAC地址不存在于MAC地址表中的数据帧进行广播处理

2_交换机对数据帧的转发和过滤

2.1_数据的传输模式

  • 单播:接收者是某一种设备
  • 广播:接收者是所有设备
  • 组播:接收者是某一部分设备

2.2_数据帧的转发方式

  • 对于目的MAC地址已知的单播帧,交换机查询MAC地址表进行转发
  • 对于目的MAC地址未知的单播帧,交换机进行广播处理
  • 对于广播帧,交换机继续广播处理
  • 数据过滤:接收到帧时,交换机查找MAC地址表,发现帧的目的关联到接收端口上,则丢弃此帧

2.3_广播域

  • 网络中所能接收到的同样广播信息的设备的集合
  • 默认情况下,交换机的所有端口属于统一广播域

3_VLAN

3.1_VLAN技术

  • 广播风暴:设备发出的广播帧在广播域中传播,占用网络带宽,降低设备性能
  • 路由器隔离广播:但是价格比交换机搞,提高了部署成本,大部分中低端路由用软件转发,性能不高,任意造成性能瓶颈
  • VLAN隔离广播:虚拟局域网,用来在二层网络中隔离广播域,把一个LAN划分多个逻辑的LAN----VLAN,每个都是单独的广播域,不同VLAN之间不能直接通信,只能通过路由器等三层设备互通
    • VLAN的优点
      • 有效控制广播范围
      • 增强局域网的安全性
      • 灵活构建虚拟工作组

3.2_VLAN类型

3.2.1_基于端口的VLAN

  • 端口固定属于某个VLAN
  • 是最简单最有效的VLAN划分方法,按照设备端口来定义vlan成员
  • 指定端口加入指定的vlan之后,该端口就可以转发指定vlan的数据帧

3.2.2_基于协议的vlan

  • 三层协议绑定到vlan,统一协议的报文,无论从那个端口接收,vlan归属不变
  • 根据端口接收到的报文所属的协议(族类型来给报文分配不同的vlan id
  • 可用来划分vlan的协议族有ip,ipx
  • 主要用于将网络中提供的协议类型与vlan绑定,方便管理和维护
  • 端口类型需要配置为Hybrid

3.2.3_基于MAC地址的vlan

  • MAC地址绑定到vlan,同一mac地址的设备,无论在那个端口,vlan归属不变
  • 端口类型需要配置为Hybrid

3.2.4_基于子网的vlan

  • IP网段绑定到vlan,同一ip子网的设备,无论连接在那个端口,vlan归属不变
  • 主要用于将指定网段或IP地址发出的数据在指定的vlan中传送
  • 端口类型需要配置为Hybrid

3.2.5_vlan的优先级

MAC地址 >>> ip子网 >>> 协议 >>> 端口

3.3_vlan的工作原理

3.3.1_802.1Q

  • 带vlan标签的帧:添加了4个字节的802.1Q标签
  • 未打标签的帧:没有携带802.1Q标签

802.1Q标签头包含两个字节的标签协议标识(TPID)和2个字节的标签控制信息(TCI)
TPID是IEEE定义的新的类型,封装了一个802.1Q标签的帧,包含一个固定值0x8100
TCL包含的是帧的控制信息

  • Priority:着3位指明数据帧的优先级,一共有8种优先级,0一7
  • CFI(Canonical Format Indicator):CFI值为0说明是规范格式,1为非规范格式,它被用在令牌环/源路由FDDI介质访问方法中来指示封装帧中所带地址的比特次序信息
  • VLAN ID(VLAN Identifier):共12比特,指明VLAN的编号,VLAN编号一共4096个,每个支持802.1Q协议的交换机发送出来的数据帧都会包含这个域,以指明自己属于哪一个VLAN

3.3.2_单交换机vlan标签操作

  • 在进入交换机端口时,附加缺省vlan标签
  • 出交换机端口时,去掉vlan标签

3.3.4_Access链路类型端口

  • 必须加入到一个vlan,且只能加入一个vlan中
  • 从access端口收到的帧,会打上该端口所属的vlan的tag
  • 从access端口发出的帧,会剥离tag
  • 对终端主机透明,所有通常用在连接不需要识别802.1Q协议的设备,一般用来连接PC或路由器
  • H3C交换机默认的所有端口都是access类型属于vlan1,华为的是hybrid

3.3.5_跨交换机vlan标签操作

  • 带有vlan标签的以太网帧在交换机间传递
  • valn跨越交换机时,需要 交换机之间传递的以太网数据帧带有802.1Q标签

3.3.6_Trunk链路类型端口

  • 可以允许多个vlan的数据通过
  • 从trunk端口发出的帧保留vlan tag,但是缺省vlan除外
  • trunk端口收到未打tag的帧,会重新打上缺省vlan的tag
  • 一般在交换机之间互联

3.3.7_Hybrid链路类型端口

  • 可以允许多个vlan的数据通过,可接受和发送多个vlan的数据帧
  • 可以手动配置从Hybrid端口发出的帧,哪个vlan保留tag,哪个vlan剥离tag
  • 缺省vlan必定剥离tag
  • Hybrid收到未打tag的帧,会重新打上缺省vlan的tag
  • 既可以连接PC/路由器,也可以连接交换机

3.3.8_PVID

  • 定义:
    • 表示某个端口的缺省vlan
    • 任何类型的端口转发tag中vlan id和pvid一致的帧,都会剥离tag
  • 特征:
    • Access端口所属的vlan就是pvid,不用配置,默认是vlan1
    • Trunk端口需要手动配置pvid,默认是 vlan1
    • Hybrid端口需要手动配置pvid,默认是vlan1
  • 总结:
    • 任何端口收到未打tag的帧,都会被打伤缺省vlan的标签
    • 任何端口转发携带缺省vlan标签的帧,都会剥离标签

3.4_vlan的基本配置

  • 在系统视图下创建vlan并进入:vlan [vlan-id]
  • 是vlan视图下更改vlan的名字:vlan [name]
  • 在vlan视图下将指定端口加入到vlan中:port [interface-list]
  • 在以太网端口下指定端口链路类型为Trunk/access/hybrid:port link-type {trunk/access/hybrid}
  • 默认情况下,trunk只允许vlan1的数据通过,需要在以太网端口下指定通过当前trunk端口的数据帧:port trunk permit vlan [vlan-id | all]
  • 在以太网端口视图下配置trunk的缺省vlan:port trun pvid vlan [vlan-id]
  • 默认情况下,所有的Hybrid端口只允许vlan1通过,所以在以太网端口视图下指定通过Hybrid的数据帧:port hybrid vlan [vlan-id-list] {tagged | untagged}
  • 在以太网端口视图下配置Hybrid的缺省vlan:port hybrid pvid [vlan-id]
  • 注:Trunk端口不能直接设置为Hybrid端口,只能先设置为Access端口,再设置Hybrid

  • 任意视图查看当前vlan:display vlan
  • 具体某个vlan所包含的端口:display vlan [vlan-id]
  • 具体端口的vlan信息:display interface [interface-type interface-number]

4_生成树协议

一个局域网通常由多台交换机互连而成,所以为了避免广播风暴,为了保证网络中不存在路径回环,交换机上的STP(生成树协议)就实现了这个功能

桥接网络中,网桥不会对以太网数据帧做任何修改,帧中也不会记录经过几个网桥,所有存在环路的话,会不断循环和增生,从而造成网络拥塞

STP作用

  • 通过阻断冗余链路来消除桥接网络中可能存在的路径回环
  • 当前路径发生故障时,激活冗余备份链路,恢复网络连通性

4.1_STP定义

  • STP:是用在局域网中消除数据链路层物理环路的协议
  • 通过在桥之间交换BPDU(Bridge Protocol Data Unit桥协议数据单元)来保证设备完成生成树的计算过程
  • BPDU分类:
    • 配置BPDU:用来进行数生成计算和维护生成树拓扑的报文
    • TCN BPDU:当拓扑结构发生变化时,用来通知相关设备网络拓扑结构发生变化的报文

4.1.2_配置BPDU的生成和传递

  • 配置BPDU包含以下重要信息,完成生成树计算
    • 根桥D(RootID):由根桥的优先级和MAC地址组成
    • 根路径开销(Root Path Cost):到根桥的路径开销
    • 指定桥ID(Designated Bridge ID):根端口选举时,所连接桥ID最小的端口被选举为根端口
    • 指定端口ID(Designated Port ID):根端口选举时,所连接端口ID最小的端口被选举为根端口
  • 各台设备的各个端口在初始时生成以自己为根桥(RooCBridge)的配置消息,向外发送自己的配置消息
  • 网络收敛后,根桥向外发送配置BPDU,其他的设备对该配置BPDU进行转发

4.2_STP的选举机制

  • 在所有交换机中选举一台作为根网桥(Root bridge):
    • 选举规则:Bridge-id小的优先
    • Bridege-id
      • 定义:桥ID,BID,用来标识交换机身份
      • 格式
        • 优先级+Mac地址
        • 优先级默认为32768,必须是4096的倍数
  • 每台非根网桥(交换机)选举出一个根端口(Root port):
    • 选举规则
      1. 到达根网桥开销小的优先
      2. 对端交换机BID小的优先
      3. 端口ID小的优先
    • 开销:Cost,代表路径耗费的代价和成本,带宽越大,开销越小
  • 每个物理段上选举出一个指定端口(Designated port)
    • 选举规则
      1. 到达根网桥开销小的优先
      2. 本机BI小的优先
      3. 端口ID小的优先
  • 剩下没有角色的端口就是闭塞端口(Blocked Port)

4.3_端口状态

  1. disable:禁用状态,被关闭的端口
  2. blocking:闭塞状态,接受BPDU,但不发送BPDU,不学习mac地址,不转发数据
  3. listening:监听状态,接受并发送BPDU,不学习mac地址,不转发数据,持续15秒
  4. learning:学习状态,接受并发送BPDU,学习mac地址,不转发数据,持续15秒
  5. forwarding:转发状态,接受并发送BPDU,学习mac地址,转发数据

4.4_STP计时器

  • Hello time:2秒,配置BPUD的发送周期
  • Max age:20秒,判断链路故障的时间,10个Hello time周期
  • Forwarding delay:15秒,状态切换延迟

4.5_STP拓扑变更机制

  1. Max age超时/有接口变更为转发状态,判断为拓扑发生变更,向根网桥发起TCN BPDU
  2. 收到TCN BPDU的交换机继续向根网桥转发TCN BPDU,到达根网桥为止
  3. 根网桥收到TCN BPDU后,向所有端口发起TC置位的配置BPDU
  4. 交换机收到TC置位的配置BPDU后,Mac地址表的老化时间缩短到15秒

4.6_STP的问题

  • 收敛速度慢,故障切换时间长
  • 网络中大量主机频繁上下线,会导致TCN BPDU大量发送

4.7_RTSP

RTSP(Rapid Spanning Tree Protocol快速生成树协议)是STP协议的优化版,能实现树的所有功能,不同之处在于,某些情况下,当一个端口被选为根端口或指定端口后,RSTP减小了端口从阻塞到转发的时延,尽可能快的恢复网络连通性,提供更好的用户服务

  • 端口状态减少到三种
  • 端口角色增加到四种:
    • 根端口和指定端口不变
    • 闭塞端口细分两种
      • 替代端口(Alternata port)
      • 备份端口(Backup port)
  • 边缘端口机制
    • 当链路激活,边缘端口立即进入转发状态,不参与STP计算
    • 边缘端口UP/DOWN不会触发拓扑变更
    • 建议把连接PC的端口配置为边缘端口

4.8_STP、RSTP的不足

  • Trunk链路上实际运行着多个vlan
  • 所有vlan共用一课生成树
  • 无法实现不涂vlan在多条trunk链路上的负载分担

4.9_PVST

4.10_MSTP

4.11_四种协议书的比较


4.11_生成树协议的基本配置

  • 在系统视图开启STP:stp global enable
  • 在系统视图关闭STP:undo stp global enable
  • 系统视图开启生成树,所有端口都默认参加,端口视图关闭STP:undo stp enable
  • 系统视图配置STP工作模式:stp mode {stp | rstp | pvst | mstp}
  • 视图视图设置当前设备优先级:stp [instance instance-id] priority [priority]
  • 设置端口位边缘端口:stp edged-port



5_端口隔离技术

5.1_802.1x

  • 定义:起源于vlan协议802.11,解决局域网终端的接入认证问题

5.1.1_端口认证

  • 认证方式
    • 本地认证:由设备内置本地服务器对客户端进行认证
    • 远程集中认证:由远程的认证服务器对客户端进行认证

使用802.1X的系统为典型的客户端/服务器体系结构,包括三个实体,分别为:客户端(Supplicant System)、设备端(Authenticator System)以及认证服务器(Authentication Server System)

  • 客户端:安装有802.1X客户端软件的用户终端设备
    • 用户通过客户端软件发起802.1X认证。客户端必须支持EAPOL(Extensible Authentication Protocol over LANs,局域网上的可扩展认证协议)
  • 设备端:通常为支持802.1X协议的网络设备,它为客户端提供接入局域网的端口,如支持802.1X协议的交换机
    • 认证通过后,设备端开放端口,客户端能够访问网络
  • 认证服务器:能够对用户实现进行认证、授权和计费功能

认证服务器可分为本地认证服务器和远程集中认证服务器,分别适用于不同场合:

  • 本地认证服务器通常集成在设备端上
    • 设备端内置的认证服务器对客户端进行认证,认证通过后开放端口,本地认证方式适用于网络规模小
    • 客户端数量不多的情况下:但用户信息数据库分散在设备本地上,维护管理不便
  • 远程集中认证服务器通常是一台专门的认证服务器
    • 设备端把客户端信息发送到远程认证服务器,由服务器查找用户信息数据库后返回消息给设备端
    • 在远程集中认证方式下,用户信息数据库能够集中管理,维护管理方便,适用于较大规模网络中

5.2.2_端口接入控制方式

  • 基于端口的认证方式
  • 基于MAC的认证方式

5.2.3_基本配置

  • 开启全局的802.1x特性:dot1x
  • 开启端口的802.1x特性:在端口视图下输入dot1x

5.3_端口隔离技术及其配置

  • 用于在vlan内部隔离用户
  • 统一隔离组端口不能通讯,不同隔离组端口可以通讯
  • 创建隔离组:port-isolate group 1
  • 指定端口加入隔离组,端口称为隔离组的普通端口:port-isolate enable grpup 1

6_链路聚合

定义:将多个以太网链路聚合在一起形成一个逻辑上的聚合端口组

  • 增加链路带宽:避免了STP计算,聚合组内物理端口不会被闭塞
  • 提供链路可靠性:聚合组内只要还有物理端口存活,链路就不会中断

负载分担:也称负载均衡,聚合后的链路会基于流自动负载分担

6.1_链路聚合的分类

  • 静态聚合:双方不会协商聚合参数
  • 动态聚合:双方通过LACP协议聚合参数
  • LACP(Link Aggregation Control Protocol,链路聚合控制协议)是一种基于IEEE802.3ad标准的、能够实现链路动态聚合与解聚合的协议
    • LACP协议通过LACPDU(Link Aggregation Control Protocol Data Unit,链路聚合控制协议数据单元)与对端交互信息

6.2_链路聚合的基本原理

  • 在系统视图模式下创建聚合端口:interface bridge-aggreation [interface-number]
  • 在接口视图下把物理端口加入到创建的聚合组中:port link-aggregation group [number]
  • 查看链路聚合状态:display link-aggreation summary