APP下载

IRF虚拟化改造引发的准入问题研究与分析*

2022-06-14林阿玲杨志勇蒋永成

海峡科学 2022年4期
关键词:网关交换机数据包

黄 澎 陈 伟 林阿玲 杨志勇 蒋永成

(1.厦门市气象灾害防御技术中心,福建 厦门 361006;2.厦门市气象台,福建 厦门 361006;3.厦门海峡气象开放重点实验室,福建 厦门 361006)

为了解决VRRP(Virtual Router Redundancy Protocol)架构收敛缓慢、管理不便、热备机器利用率低等问题,近年来,越来越多的政府机关、企事业单位开始逐步采用以H3C公司的IRF(Intelligent Resilient Framework)虚拟化技术为代表的堆叠架构作为其骨干网络的核心[1]。

使用IRF虚拟化技术可将多台三层交换机虚拟化为一台“分布式设备”,形成分布式交换架构,并作为一个逻辑交换实体运行[2]。由于从VRRP到堆叠架构的改造涉及核心网络的调整,影响范围较广,因此实施人员在项目改造前必须充分考虑特定网络中的各种因素。本文讨论了在某次项目实施过程中,由VRRP到IRF虚拟化改造而引发的网络设备访问异常问题。该问题成因较为隐蔽,排查周期长,在类似的网络改造中需要予以重视。本文首先介绍本次网络改造的网络概况,然后描述了改造后产生的问题现象,接着通过抓包方式分析了盈高准入控制器MVG工作模式以及问题成因,最后提出了针对性的解决方案。出于保密需要,下文中涉及到的IP地址皆非真实网络环境地址,同时不对抓包结果进行截图展示。

1 网络概况

本节主要介绍改造前后核心网络概况并简要说明在准入控制下的几种PC入网方式。项目中的核心交换机、接入交换机均为H3C的某型号产品,准入控制器为盈高科技公司ASM系列类型。

1.1 改造前的网络

如图1所示,项目改造前,接入交换机以VRRP方式接入两台核心交换机,准入设备旁挂于核心交换机2上,以MVG(Multi Vendor Virtual Gateway)方式对设备进行准入控制(盈高准入控制器的MVG工作模式将在后续章节详细介绍)。

在MVG模式下,准入控制器将以脚本方式登录到接入交换机上,对接入交换机的端口进行管控。对准入控制器来说,接入交换机的端口可分为管理端口和非管理端口,非管理端口即不受准入控制器管控的端口,其下的设备可不经准入设备管控而直接入网,而管理端口又分为直连设备的端口和下联HUB的端口。管理端口下的PC必须符合准入条件才能入网,入网前,PC访问任意网址均会由准入控制器推送准入认证页面以提示用户进行手动认证,认证通过后,PC即可入网。在图1中,PC1所属的交换机端口在准入控制器上被配置为非管理端口,因此PC1可不经过准入直接入网。PC2、PC3、PC4均为管理端口下的PC,需要符合准入条件才能入网。在实施改造前,PC3不符合准入条件,因此无法入网。PC2以及PC4符合准入条件,入网状态正常。值得一提的是,准入不通过的设备除了能够访问准入控制器10.1.13.100外,无法访问其余跨网段地址。

图1 改造前的网络拓扑

1.2 改造后的网络

如图2所示,改造后两台核心交换机通过H3C的IRF技术虚拟化成一台,实现设备之间的冗余,同时删除各个业务接口上的VRRP配置并修改相应SVI(Switch Virtual Interface)接口IP作为各个业务的网关。而针对二层链路使用链路聚合以增加链路之间带宽并实现链路的冗余。图2中,虚拟化后的核心交换机实际承载着网关流量的处理与转发,核心交换机与接入交换机、准入等接口的其余配置保持不变。理论上,改造后PC以及其他客户端设备的入网情况应与改造前一致。

图2 改造后的网络拓扑

2 故障描述

在项目改造完成后,有用户反映此前入网状态正常的PC2无法访问内网,并且无法弹出准入认证页面。经现场检测,此时PC2无法访问准入控制器10.1.13.100,也无法访问网关10.1.13.254,而改造前入网状态正常的PC1以及PC4改造后仍然可正常上网。经确认,改造前后,用户并未做过任何软硬件层面的变更,同时网络的物理线路、接口等状态皆正常,各级别的路由交换设备上也未发现异常配置。

值得注意的是,在排查故障的过程中,有PC4类型的用户由于变更了软件配置导致其准入不合格而被断网。在断网后用户无法访问准入认证页面(正常情况下,因准入不达标而断网的用户,在准入合格后仍可通过访问准入认证页面来重新认证上网)。该现象与PC2无法上网一致。

根据以上现象,扩大排查面积后对全网故障初步总结如下:经过IRF虚拟化改造后,只要接入交换机的某个接口下有PC因不符合准入条件而被断网,那么该接口下的所有PC无论准入条件是否合格都将无法入网,同时无法访问准入控制器以及网关。即便后续该接口下的所有PC均达到准入条件,故障仍将维持。

3 故障原因分析

由于改造前准入状况并无异常,实施方将网络拓扑和配置回滚到原来的状态后用户能正常入网,因此故障原因应与准入控制器本身无关。而实施方将网络中的准入控制器剔除后,改造后的网络又能正常运行。为此,多方工程师耗时数日亦未找出问题成因,后来通过多个节点抓包分析,在剖析了盈高准入控制器MVG模式原理基础上,找到了上述问题的原因。

3.1 盈高准入控制器MVG工作模式

准入控制技术已经在高校、企事业单位的办公网中得到了广泛应用。这使得网络管理员对终端设备的约束力大大增强,网络的安全性与可控性得到进一步提升[3]。虽然不同品牌的准入控制器在工作原理上存在一定差异,但主流的准入控制器都是采用介入数据转发流程的方式来实现对终端的准入控制[4]。因此,为了解决与准入相关的网络问题,必须全面了解其介入数据转发的原理。本次改造环境中采用的准入控制方式为盈高准入控制器的MVG模式,在对多个节点进行抓包分析的研究基础上,本文对其大致的工作原理简述如下:

当准入控制器接入网络后,管理员首先在准入控制器上添加需进行管控的交换机信息,然后在控制器上描述交换机的哪些端口需要进行准入管控。此外,管理员还要在被准入控制的交换机上为每个业务VLAN多设置一个隔离VLAN。在图1中,4台PC对应的正常业务VLAN为VLAN23,而VLAN123则是为了实现VLAN23下设备的准入控制所额外设置的隔离VLAN。

准入系统运作后,准入控制器会在后台以SSH方式登录到被管控的交换机上,将这台交换机上需要进行管控的端口全部切换到其对应的隔离VLAN下,以此来实现对未进行准入验证的PC的隔离。被切换到隔离VLAN下的PC符合准入条件后会被重新切换回正常VLAN,从而实现入网。

MVG模式下,图1中的PC1处于非管理端口,其数据转发流程与准入控制器无关,而处于管理端口下的PC2、PC3、PC4的数据转发流程则与准入控制器密切相关。此外,由于PC2、PC3与接入交换机之间级联着一台HUB,其数据转发方式比PC4更为复杂。

PC4与接入交换机之间为直连关系,当其初次接入网络时,所在的交换机端口处于隔离VLAN下,此时PC4仅能访问准入控制器的MGMT口(管理口)。不过,经过抓包发现,处于隔离VLAN时,PC4虽然无法对其网关发起访问,但可以通过ARP协议获得其网关的MAC地址。获取过程的数据流如图3中的蓝色箭头所示。

图3 改造前的数据流向

首先由PC4发出ARP请求,请求其网关MAC地址,虽然在隔离VLAN123内并无网关对其进行响应,但是此时数据包会从隔离VLAN经过TRUNK链路到达准入控制器的UNTRUST口,准入控制器收到该ARP请求后将该ARP请求重新打上VLAN23的标签,并从TRUST口经TRUNK链路送至核心交换机,核心交换机收到后立即进行ARP响应,将网关的MAC地址发送给准入控制器,准入控制器再沿原路将该ARP请求回送给PC4。通过这种迂回的方式,PC4最终获取到其网关10.1.23.254的MAC地址。当PC4准备访问其他地址时,准入控制器会拦截该数据包,并沿着隔离VLAN推送认证页面给PC4,若认证通过,则准入控制器会将其所在的端口切回正常VLAN23。切回正常VLAN后,PC4的数据转发流程与准入控制器无关。

PC2与 PC3通过HUB与接入交换机连接。对于MVG模式而言,只要HUB下有一台PC准入异常,该HUB的上联口将始终处于隔离VLAN下。不过此时HUB下准入通过的PC仍可经准入控制器的转发而正常上网。例如,图3中的PC2,虽然与PC3同处于隔离VLAN下,但是在准入通过后,其依然可以正常入网。此时的数据流向与PC4准入不合格时通过ARP请求其网关MAC地址的流向基本类似,也是由准入控制器做迂回转发。PC2准入合格后的数据流向见图3中的黄色箭头部分。PC3由于准入不通过,当其数据包到达准入控制器后会被直接拦截并丢弃。

3.2 问题分析

如上文所述,若将准入控制器或者核心交换机上的IRF独立配置,二者都不存在配置问题。因此推测可能是进行了IRF改造后,某个环节切断或者改变了准入系统数据流的走向。在对PC2进一步分析后发现,虽然网络改造后PC2无法ping通其网关,但是查看其ARP表,却发现PC2上能正常学习到网关MAC地址。随后,本文在PC2的转发路径上设置了三个镜像抓包点,分别位于接入交换机、核心交换机、准入控制器UNTRUST口。通过抓包跟踪发现:PC2发往网关的ICMP数据包(ping包)到了核心交换机后就无法继续向准入控制器的UNTRUST口进行转发,同时PC2对外网段数据以及准入控制器10.1.13.100进行访问的数据包也在核心交换机处被截断。正是由于该截断动作导致了PC2在准入符合要求的情况下无法访问网关和准入控制器。

为了找出改造后核心交换机截断隔离VLAN内数据包的原因,本文还原了改造前的网络环境,并在核心交换机处继续进行数据抓包,然后与改造后同样节点的数据包进行比对分析。通过对比,改造前后从PC2发往外网的数据包目的MAC地址(网关MAC地址)发生了改变。进一步地对核心交换机进行查看后发现,经过IRF虚拟化改造后,核心交换机上所有VLAN的MAC地址都统一成一个地址,而正是这种改变触发了核心交换机对数据包的丢弃。

改造前,由于核心交换机做了VRRP配置,故业务VLAN的网关MAC地址为VRRP虚拟MAC地址,与对应的隔离VLAN的MAC地址不同。当PC2要通过隔离VLAN发送去往外网的数据包时,会按IP数据包的基本封装流程将数据包中的目的MAC地址封装为业务网关MAC地址,核心交换机在隔离VLAN内收到数据包后检查其MAC地址,发现与该隔离VLAN MAC地址不同,因此仅做二层转发操作而将数据包发往准入控制器的UNTRUST口,所以数据能够继续正常流转。

改造后,由于隔离VLAN的MAC地址与业务VLAN相同,因此当核心交换机在隔离VLAN收到带有业务VLAN MAC地址的数据包时会误认为该数据包的目的MAC地址就是此隔离VLAN的MAC地址,于是将数据包接收下来。随后,由于隔离VLAN并未做相关的三层地址配置,因此核心交换机不会对该数据包做三层转发而是直接丢弃。所以,最终处于隔离VLAN下的PC无法将数据包发向准入控制器,因此造成隔离VLAN下的PC无法入网也无法访问准入控制器。

4 解决方案

为了解决上述问题,首先可以考虑改变准入控制器的接入模式,例如从MVG模式改为桥接等其他模式。变更准入模式后,可以不用在交换机上设置隔离VLAN,规避了改造后隔离VLAN与业务VLAN上MAC地址一致的问题。但是这种解决方式会引起较大的网络调整,而且导致无法利用MVG模式本身的一些优点。除此之外,人为调整改造后的VLAN MAC地址也是一种解决思路。不过,通过咨询H3C原厂得知,无法在核心交换机上通过手动配置对VLAN 的MAC地址做单独变更。

基于此,在统筹考虑成本、效率等多方面因素的基础上,本文提出了另一种解决方案:在已实施IRF虚拟化的情况下,继续在核心交换机的VLAN接口下保留VRRP的虚拟网关配置,但不让VRRP协议实际生效。这种做法的目的是为了利用虚拟网关与隔离VLAN的 MAC地址不同的特点来解决问题,而且从用户的角度来看这种做法是完全透明的。经过测试,采用该方法后,网络故障得到成功解决,并且仍然保留了IRF虚拟化以及准入控制器MVG模式的优势。

5 结束语

本文通过抓包实验、逻辑分析等方法,解决了工程项目中因IRF虚拟化改造导致的网络准入问题。该问题成因隐蔽,排查过程耗费了较多人力与时间。因此,在进行网络改造前,除了需要注意路由交换设备的配置以外,还要特别留意网络中是否存在其他影响数据包转发的设备,并弄清其数据转发原理,这样才能避免在改造后给生产环境带来不必要的影响。

猜你喜欢

网关交换机数据包
二维隐蔽时间信道构建的研究*
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
基于地铁交换机电源设计思考
信号系统网关设备的优化
SmartSniff
修复损坏的交换机NOS
使用链路聚合进行交换机互联
LTE Small Cell网关及虚拟网关技术研究
应对气候变化需要打通“网关”
一种实时高效的伺服控制网关设计