分析 三层接入组网中的接入层交换机为三层交换机 接入层交换机上面端口为三层,下面端口可以为二层,划入特定VLAN,并将VLAN虚接口的地址作为用户层设备的网关(例如PC1的网关是VLAN A的虚接口地址----SVI)。 接入层交换机启用OSPF,将上面三层端口所在网段和各VLAN对应的子网都纳入OSPF范围内,这样就实现了三层接入组网。此时VLAN终结于接入层。
接入层交换机下面的端口其实也可以直接配成三层端口,取消VLAN的使用。但如果这样,则每一个三层端口都要分配一个IP(每个用户PC一个IP地址,相连的接入层交换机下面的三层端口也要一个IP地址),而按划分VLAN实施时,只要为一个VLAN对应的虚接口指派一个地址即可(每个用户PC一个IP地址,而在交换机侧一个VLAN只要为其虚接口分配一个地址),所以后者更节省IP地址。
优缺点 优点: 缺点: 配置比较简单(主要是OSPF配置) 能够利用OSPF的负载均衡和对故障的路由自动调整机制 使用L3连接,则不会出现环路 缺点: 路由设计相对复杂,要求较高 每个三层端口都要分配一个IP地址,因而需要占用较多的IP地址 成本较高
分析 二层接入组网中的接入层交换机为二层交换机 汇聚层交换机上面端口为三层,下面端口为二层,划入特定VLAN,并将VLAN虚接口的地址作为用户层设备的网关(例如PC1的网关是VLAN 10的虚接口地址192.168.10.254)。 接入层交换机启用OSPF,将上面三层端口所在网段和各VLAN对应的子网都纳入OSPF范围内,这样就实现了三层接入组网。 此时VLAN终结于汇聚层。
VLAN配置 为了实现VLAN间路由,每个汇聚层交换机上要包含各接入层交换机上所有的VLAN,例如DS1和DS2上要包含VLAN10-40。 为方便配置,可以利用VTP,将DS1作为VTP Server,而DS2、AS1和AS2作为VTP Client。 因为AS1和AS2事实上不需要所有VLAN,所以可以启用VTP Pruning(裁剪)以减少不必要的流量。 VTP Pruning只要在作为VTP Server的DS1上启用即可,无须每台都分别启用。
优缺点 优点 成本相对较低 配置相对简单(生成树自动启动) 缺点 STP/RSTP可能带来复杂的计算和长时间收敛(如果避免了STP/RSTP,网络的收敛是可预测、可限制的,并能够进行可靠调试)
STP存在的问题 STP收敛速度过慢 一些动态路由协议如OSPF可提供1s以内的收敛时间 STP:收敛时间50s OSPF:收敛时间1s
MSTP+VRRP的优点 使用MSTP+VRRP来实现基于VLAN的链路冗余和网关冗余 MSTP:链路冗余、负载分担
从STP到RSTP STP:IEEE 802.1d IEEE 802.1w RSTP(Rapid Spanning Tree Protocol,快速生成树协议)对于STP技术的改进主要在于缩短网络的收敛时间。RSTP的收敛时间最快可以达到1s以内。 RSTP具有向下兼容的特性,如果网络中部分交换机运行STP,那么运行RSTP的交换机会自动以STP方式运行。
传统生成树的问题 STP和RSTP,在网络中进行生成树计算的时候都没有考虑到VLAN的情况 往往不具备负载分担的能力
RSTP的缺陷 无法实现负载分担 VLAN 20 VLAN 10 左边链路的端口处于fordwarding状态 右边链路的端口为backup状态 所有数据都从左边链路走,无法实现负载分担 Backup状态 图中,可能右侧链路对于VLAN10和VLAN20都是backup状态,如果要是能让VLAN 20的流量全走左边,VLAN 10的流量全走右边就好了。
RSTP的缺陷 有些VLAN可能会不通 10,20,30 10,30 20,30 10,20 10 20 30
RSTP的缺陷 有些VLAN可能会不通 VLAN 10和30的所有上行端口都是阻塞状态 10,20,30 10,20 20,30 10,30 由于RSTP的VLAN无关性,可能右下角的交换机上vlan10和vlan30的所有uplink端口都Discarding了,从而导致这两个vlan的下游交换机无法与上行设备通信。 10,30 10,30 20 30 VLAN 10和30的所有上行端口都是阻塞状态 10
Cisco的PVST Per VLAN Spanning-Tree 具备负载分担,单个VLAN间通信链路不会被阻断
MSTP IEEE 802.1s 思想:介于STP与PVST之间 STP、RSTP:只有一棵生成树 PVST:每VLAN一个棵成树 MSTP:多个VLAN映射成一棵生成树
多生成树协议(MSTP) 多生成树协议MSTP 20
多生成树实例 一个或若干个VLAN可以映射到同一棵生成树,但是每个VLAN只能在一棵生成树里 一个交换机可以跑多个生成树,为了区分,每一个生成树叫做一个MSTI(多生成树实例) Instance:一台交换机的一个或多个Vlan的集合 因为很多Vlan采用一个Vlan实例,可实现预期的负载均衡 交换机只运行二个实例,减少交换机系统的资源 21
网关级冗余技术 ——VRRP VRRP简介: 22
两台物理Router使用vrrp发现对方 10.1.1.1 比较优先级和IP 备用 主用 备用 主用 一台成为主路由器,另一台成为备用 10.1.1.2 hello 10.1.1.3 hello 用户网关指向虚拟路由器 主路由器出现故障后自动发生切换 23
一个虚拟路由器由一个主路由器和若干个备份路由器组成,主路由器实现真正的转发功能。当主路由器出现故障时,一个备份路由器将成为新的主路由器,接替它的工作 单VLAN的VRRP应用案例 24
多VLAN中的VRRP路由器负载分担 : 多个VLAN都使用同一 设备作为网关会造成 资源浪费。 园区网络 备用 主网关 网关 S3550-1 S3550-2 S2126G 园区网络 S3550-3 通过VRRP 虚拟成一台设备 主网关 备用 网关 10.0.0.1 10.0.1.1 VLAN 10 VLAN 20 25
建立两个组来对应不同VLAN,实现负载分担 多VLAN中的VRRP路由器负载分担 : 建立两个组来对应不同VLAN,实现负载分担 26
VRRP+MSTP案例分析:原始网络拓扑 S2126G 园区网络 10.0.0.22/24 OSPF VRRP+MSTP 10.0.1.22/24 VLAN10 VLAN20 用户希望能充分利 用网络资源,实现 设备及链路的冗余 和负载均衡。 27
VRRP+MSTP案例分析:分解成两个逻辑拓扑 S2126G 园区网络 OSPF VRRP+MSTP 主网关 + 根桥 10.0.1.22/24 VLAN 20 10.0.0.22/24 VLAN 10 备用 网关 28
VRRP+MSTP案例分析 通过VRRP和MSTP 的结合使用,最终 实现了用户的设想, 让VLAN10和20的 数据流量使用不同 S2126G 园区网络 10.0.0.22/24 OSPF VRRP+MSTP 10.0.1.22/24 VLAN10 VLAN20 通过VRRP和MSTP 的结合使用,最终 实现了用户的设想, 让VLAN10和20的 数据流量使用不同 的链路和网关设备
注意:在工程中实施VRRP+MSTP的配置,一定要注意在一个VLAN中根桥的位置和VRRP主网关的位置必须一致,否则会造成网络故障。 30
采用MSTP+VRRP的二层接入组网示例
可以参考35A、35B和35C的路由表
双核心配置实例(一)cont. !配置VLAN10的IP地址 !配置虚拟IP,即VLAN10的虚拟网关 RG-S35A(config)#interface vlan 10 RG-S35A(config-if)#ip address 192.168.10.254 255.255.255.0 !配置VLAN10的IP地址 RG-S35A(config-if)#standby 1 ip 192.168.10.250 !配置虚拟IP,即VLAN10的虚拟网关
双核心配置实例(一)cont. !设为抢占模式 抢占模式: RG-S35A(config-if)#standby 1 preempt !设为抢占模式 抢占模式: 正常状况下,VLAN10的数据由35A传输.当35A发生故障时,则由35B担负起传输任务.若不配置抢占模式,当35A恢复正常后, 数据仍由35B传输;配置抢占模式后,正常后的35A会再次夺取对VLAN10的控制权 RG-S35A(config-if)#standby 1 priority 254 !VLAN10的standby优先级设为254 优先级: 在同一个VLAN中,优先级较高的设备成为master,较低的设备成为backup, master的虚拟网关生效。Standby默认优先级为100. RG-S35A(config-if)#exit
双核心配置实例(一)cont. RG-S35A(config)#interface vlan 20 !VLAN20的standby不设优先级,默认为100 RG-S35A(config-if)#ip address 192.168.20.253 255.255.255.0 !配置VLAN20的IP地址 RG-S35A(config-if)#standby 2 ip 192.168.20.250 !配置虚拟IP RG-S35A(config-if)#standby 2 preempt !设为抢占模式 RG-S35A(config-if)#exit 同理,在35A和35B上做类似的配置
双核心配置实例(一)cont. 这样就实现了vlan10通过35A下行,vlan20通过35B下行 RG-S35A(config)#interface vlan 20 RG-S35A(config-if)#ip ospf cost 65535 RG-S35A(config-if)#exit !在35A上将vlan20的ospf开销值置为65535(>1即可) RG-S35B(config)#interface vlan 10 RG-S35B(config-if)#ip ospf cost 65535 RG-S35B(config-if)#exit !在35B上将vlan10的ospf开销值置为65535(>1即可) 这样就实现了vlan10通过35A下行,vlan20通过35B下行
双核心配置实例(一)cont. RG-S21A(config)#spanning-tree !开启生成树 RG-S21A(config)#spanning-tree mode mstp !配置生成树类型 RG-S21A(config)#spanning-tree mst configuration RG-S21A(config-mst)#instance 1 VLAN 10,30 !将vlan10、30放入实例1中 每个实例都会生成一个独立的生成树 RG-S21A(config-mst)#revision 1 !配置多生成树的版本号 RG-S21A(config-mst)#instance 2 vlan 20,40 !将vlan20、40放入实例2中 RG-S21A(config-mst)#revision 1 RG-S21A(config-mst)#exit
双核心配置实例(一)cont. RG-S35A(config)#spanning-tree mst 1 priority 4096 配置较高优先级是为了使35A被选作mst 1的根节点。 (查看具体配置)
汇聚层设备之间和核心层设备之间为什么要链路聚合? 汇聚层设备之间和核心层设备之间通常要连接起来,因为是为了实现双机热备份。 不仅要连接起来,还常常出现它们间的链路聚合,这样不仅保证设备之间的链路冗余连接,而且可以负载分担。 这种情况在图中最明显:接入与汇聚间双归、汇聚与核心间双归,汇聚层设备间链路聚合连接、核心层设备之间链路聚合连接,这样就保证每个环节都是有链路冗余的。
汇聚层设备间的网段按二层还是三层处理? 因此,当有VLAN跨越多个接入层交换机时可以考虑(一般需要)将汇聚层设备间的网段按二层处理,配成trunk,实现VLAN跨越多个接入层交换机的访问。 当没有这种需求时,或采用三层接入组网时,就要将汇聚层设备间的网段按三层处理,并考虑配置路由汇总。这也符合 “尽量将VLAN限制到边缘,其理念就是建议在接入交换机上终结VLAN”的原则。