基于IPSec技术实现LAN侧异网段设备互联

文摘   科技   2024-07-29 12:00   北京  

编者荐语:



企业专线作为一种高速、稳定、安全的网络连接方案,对于提升企业网络性能和工作效率具有重要意义。SD-WAN作为一种低成本、快速部署的企业专线技术,不仅可广泛应用于政企市场,还可以为5G专网提供连接。SD-WAN方案中,数据安全是关键IPSec协议有效保障数据安全通过对IPSec技术的探讨和应用,本文将帮助读者更好地理解和应用这一强大的网络工具,为企业网络安全和高效运作提供有力支持。


基于IPSec技术实现LAN侧异网段设备互联
亚信科技(中国)有限公司
摘要在利用IPSec协议创建隧道时,为实现企业内部网络的互通,需要实现异网段设备的互联互通。本文重点介绍了如何将路由成功导入IPSec隧道,结合IPSec隧道和静态路由,实现LAN侧异网段设备的互联互通,从而实现SD-WAN的灵活组网,达到企业网络灵活分配和部署的目的。

引言
(一)研究背景


业务的变化推动着企业专线的发展,在云时代的当下,企业业务的云化给传统企业专线互联带来了一些新的挑战:


· 传统专线架构太封闭,多云互联难实现

未来几年,云化是大势所趋,大多数企业都会将业务部署到云端。为了访问云端应用,企业专线要与公有云、私有云和 SaaS 云互联,封闭的传统 专线架构难以满足多云的互联诉求。而且企业业务向云端迁移,必然会使企业专线承载越来越多和云相关的应用流量,传统专线 网络也难以承载激增的WAN流量。


· 组网越来越灵活,多样化互联难满足

全球化使企业的分支分布越来越广泛,不同的分支对网络的要求也不同。例如,有些需要多层网络,有些需要扁平化网络,有些需要多上行链路的分支站点网络(5 条以上),有些需要多 HUB 的网络(4 个以上)。面对如此繁杂的网络,传统WAN网络难以实现灵活组网,满足企业多样化互联的诉求。


· 应用数量急剧增长,应用体验难保障

在云和数字化的时代,大量与云计算紧密结合的企业新兴业务蓬勃发展,企业应用的数量和种类也呈爆发式增长,如语音、视频、文件传输、电子邮件、SaaS应用等。不同的应用对链路质量有着不同的要求。传统的企业专线无法区分业务;新加入的 Internet 网络也无法保障服务质量。因此,当突遇流量拥塞或链路质量劣化时,关键业务的体验无法保障。

· 网络运维难度大,手工配置易出错

传统模式下,业务开通需要网络工程师到现场手工配置;网络运维、故障定位也需要专人到现场操作,因此,业务开通和网络运维的效率低、成本高。在数字化和全球化的大潮中,企业 WAN 网络的分支分布更广、数量更多,承载的业务更复杂,运维难度也更大。传统的手工配置及运维方式难以满足业务快速发展的需要。

企业专线对于企业来说是必不可少的基础设施,但是企业专线的上述缺点,使得开通变更灵活、低成本的SD-WAN专线得到了广泛应用。SD-WAN要在某些场景取代企业专线,对数据进行加密是必不可少,在使用了加密隧道的前提下如何保障网络打通是基本功能,即本文标题所提到的LAN侧异网段设备互联。


(二)IPSec对SD-WAN的价值


IPSec(Internet Protocol Security)是为IP网络提供安全性的协议和服务的集合,用于在不安全的网络上(一般是互联网),建立安全的网络通信, 它是SD-WAN专线用于实现加密传输的重要技术。如无特殊需求,大部分SD-WAN厂商都采用IPSec作为其加密隧道的技术。因此,研究SD-WAN组网的基本功能必须基于IPSec技术。


基于IPSec技术实现LAN侧异网段设备互联,可实现SD-WAN网络中设备的互联互通,基本满足SD-WAN的组网需求,对SD-WAN/智连网关产品开发有非常重要意义。

IPSec简介
(一)IPSec定义

IPSec是IP Security的简称,它的目的是为IP提供高安全性特性,VPN则是在实现这种安全特性的方式下产生的解决方案。IPSec是一个框架性架构,具体由两类协议组成:


· AH协议(Authentication Header,使用较少):可以同时提供数据完整性确认、数据来源确认、防重放等安全特性;AH常用摘要算法(单向Hash函数)MD5和SHA1实现该特性。

· ESP协议(Encapsulated Security Payload,使用较广):可以同时提供数据完整性确认、数据加密、防重放等安全特性;ESP通常使用DES、3DES、AES等加密算法实现数据加密,使用MD5或SHA1来实现数据完整性。


IPSec隧道可以帮助开发者安全的从互联网的两端传递数据,主要依靠4大特点:


· 保密性(Confidentiality):传输的数据是加密的;

· 完整性(Integrity):传输的数据是无法被无感知的篡改,我一眼能看出数据有没有人改过;

· 认证性(Authentication):发生和接收方互相能够认证,明确的知道对端是对的人;

· 防重放Anti-Replay):每个包都是独一的,会有一个SPI序号,如果攻击方将我们的请求原封不动地再发送一次,企图骗过认证服务器,这是绝对不可能的。


(二)IPSec的工作流程


IPsec的工作流程大致可以分为4个阶段:


· 识别“感兴趣流”

网络设备接收到报文后,通常会将报文的五元组等信息和IPsec策略进行匹配来判断报文是否要通过IPsec隧道传输,需要通过IPsec隧道传输的流量通常被称为“感兴趣流”。


· 协商安全联盟(Security Association,以下简称SA)

SA是通信双方对某些协商要素的约定,比如双方使用的安全协议、数据传输采用的封装模式、协议采用的加密和验证算法、用于数据传输的密钥等,通信双方之间只有建立了SA,才能进行安全的数据传输。

识别出感兴趣流后,本端网络设备会向对端网络设备发起SA协商。在这一阶段,通信双方之间通过IKE协议先协商建立IKE SA(用于身份验证和密钥信息交换),然后在IKE SA的基础上协商建立IPsec SA(用于数据安全传输)。


· 数据传输

IPsec SA建立成功后,双方就可以通过IPsec隧道传输数据了。IPsec为了保证数据传输的安全性,在这一阶段需要通过AH或ESP协议对数据进行加密和验证。加密机制保证了数据的机密性,防止数据在传输过程中被窃取;验证机制保证了数据的真实可靠,防止数据在传输过程中被仿冒和篡改。


图1:IPSec加密验证过程

如图所示,IPsec发送方会使用加密算法和加密密钥对报文进行加密,即将原始数据“乔装打扮”封装起来。然后发送方和接收方分别通过相同的验证算法和验证密钥对加密后的报文进行处理得到完整性校验值ICV。如果两端计算的ICV相同则表示该报文在传输过程中没有被篡改,接收方对验证通过的报文进行解密处理;如果ICV不相同则直接丢弃报文。


· 隧道拆除

通常情况下,通信双方之间的会话老化(连接断开)即代表通信双方数据交换已经完成,因此为了节省系统资源,通信双方之间的隧道在空闲时间达到一定值后会自动删除。


(三)IPSec的两种应用模式

IPSec有两种应用模式:传输模式和隧道模式。


· 传输Transport模式

图2:传输模式封装


传输模式在AH、ESP处理前后IP头部保持不变。在传输模式下,外部头、下一个头以及下一个头支持的任何端口都可用于确定 IPsec 策略。实际上,IPsec 可在一个端口不同粒度的两个 IP 地址之间强制实行不同的传输模式策略。例如,如果下一个头是 TCP(支持端口),则可为外部 IP 地址的 TCP 端口设置 IPsec 策略。类似地,如果下一个头是 IP 数据包头,外部头和内部 IP 数据包头可用于决定 IPsec 策略。

· 隧道Tunnel模式
图3:隧道模式

隧道模式则在AH、ESP处理之后再封装了一个外网IP头。在隧道模式下,IPsec 策略强制实施于内部 IP 数据报的内容中。可针对不同的内部 IP 地址强制实施不同的 IPsec 策略。也就是说,内部 IP 数据包头、其下一个头及下一个头支持的端口,可以强制实施策略。与传输模式不同,在隧道模式下,外部 IP 数据包头不指示其内部 IP 数据报的策略。


本文中因为需要使用GRE Over IPSec隧道,因此需要采用传输模式,否则无法往GER隧道中导入路由。


SD-WAN的LAN侧异网段互联方案
(一)SD-WAN的常见组网方式

SD-WAN的组网非常灵活,支持多种组网应用。


· Hub-Spoke

企业总部+分支(Hub-Spoke组网),适用于企业拥有1~2个数据中心,业务主要在总部和数据中心,分支通过WAN集中访问部署在总部或者数据中心的业务。分支之间无或者有少量的互访需求,分支之间通过总部或者数据中心绕行。


· Full-Mesh

适用于站点规模不多的小企业,或者在分支之间需要进行协同工作的大企业中部署。大企业的协同业务,如VoIP和视频会议等高价值的应用,对于网络丢包、时延和抖动等网络性能具有很高的要求,因此这类业务更适用于分支站点之间直接进行互访。

· 分层组网

适应于网络站点规模庞大或者站点分散分布在多个国家或地区的大型跨国企业和大企业,网络结构清晰,网络可扩展性好。


· POP组网

当运营商/MSP面向企业提供SD-WAN网络接入服务时,企业一时间不能将全部站点改造为SD-WAN站点,网络中同时存在传统分支站点和SD-WAN站点这两类站点,且这些站点间有流量互通的诉求。一套IWG(Interworking Gateway,互通网关)组网能同时为多个企业租户提供SD-WAN站点和已有的传统MPLS VPN网络的站点连通服务。


(二)SD-WAN组网介绍


SD-WAN解决方案中使用的核心组网技术是Overlay,Overlay网络是通过网络虚拟化技术,在同一张Underlay网络上构建出的一张或者多张虚拟的逻辑网络。不同的Overlay网络虽然共享Underlay网络中的设备和线路,但是Overlay网络中的业务与Underlay网络中的物理组网和互联技术相互解耦。Overlay网络的多实例化,既可以服务于同一租户的不同业务(如多个部门),也可以服务于不同租户。了解SD-WAN组网,需要简要介绍Overlay和Underlay网络。


· Underlay网络


Underlay网络是由多个类型设备互联而成的物理网络,负责网络之间的数据包传输。在Underlay网络中,互联的设备可以是各类型交换机、路由器、负载均衡设备、防火墙等,但网络的各个设备之间必须通过路由协议来确保之间IP的连通性。


Underlay网络可以是二层也可以是三层网络。其中二层网络通常应用于以太网,通过VLAN进行划分。三层网络的典型应用就是互联网,其在同一个自治域使用OSPF、IS-IS等协议进行路由控制,在各个自治域之间则采用BGP等协议进行路由传递与互联。随着技术的进步,也出现了使用MPLS这种介于二三层的WAN技术搭建的Underlay网络。


然而传统的网络设备对数据包的转发都基于硬件,其构建而成的Underlay网络也产生了如下的问题:


1.由于硬件根据目的IP地址进行数据包的转发,所以传输的路径依赖十分严重。

2.新增或变更业务需要对现有底层网络连接进行修改,重新配置耗时严重。

3.互联网不能保证私密通信的安全要求。

4.网络切片和网络分段实现复杂,无法做到网络资源的按需分配。

5.多路径转发繁琐,无法融合多个底层网络来实现负载均衡。


· Overlay网络


为了摆脱Underlay网络的种种限制,现在多采用网络虚拟化技术在Underlay网络之上创建虚拟的Overlay网络。在Overlay网络中,设备之间可以通过逻辑链路,按照需求完成互联形成Overlay拓扑。


相互连接的Overlay设备之间建立隧道,数据包准备传输出去时,设备为数据包添加新的IP头部和隧道头部,并且被屏蔽掉内层的IP头部,数据包根据新的IP头部进行转发。当数据包传递到另一个设备后,外部的IP报头和隧道头将被丢弃,得到原始的数据包,在这个过程中Overlay网络并不感知Underlay网络。


Overlay网络有着各种网络协议和标准,包括VXLAN、NVGRE、SST、GRE、NVO3、EVPN等。


随着SDN技术的引入,加入了控制器的Overlay网络,有着如下优点:


1.流量传输不依赖特定线路。Overlay网络使用隧道技术,可以灵活选择不同的底层链路,使用多种方式保证流量的稳定传输。

2.Overlay网络可以按照需求建立不同的虚拟拓扑组网,无需对底层网络作出修改。

3.通过加密手段可以解决保护私密流量在互联网上的通信。

4.支持网络切片与网络分段。将不同的业务分割开来,可以实现网络资源的最优分配。

5.支持多路径转发。在Overlay网络中,流量从源传输到目的可通过多条路径,从而实现负载分担,最大化利用线路的带宽。


本文使用GRE的方式来实现SD-WAN的Overlay组网。


(三)实现方案


1.基于IPSec打通Overlay

IPsec 处理通常是基于策略的。在完成常规路由查找后,操作系统内核会查询其 SPD(安全策略数据库)以查找匹配的策略,如果找到与 IPsec SA(安全关联)相关的策略,就会对数据包进行处理(例如加密并作为 ESP 数据包发送)。


因为策略的配置过于复杂,因此配置基于路由的IPSec VPN更为简易。在这种情况下,IPsec 处理不仅取决于协商好的策略,也可以通过将数据包路由到特定接口等方式进行控制,这样可以更方便的实现网络的设计。为了实现基于路由的IPSec方案,一般有3种选择:VTI方式、XFRM方式和GRE方式。这三种方式都可以支持,本文建议第三种GRE方式。


GREGenetic Routing Encapsulation)是一种隧道技术,它规定了如何将一种网络协议下的数据报封装在另外一种网络协议中,使这些被封装的数据报能够在另一个网络层协议中传输。系统收到需要进行封装和路由的某网络层协议(如IPX)数据时,将首先对其加上GRE报文头,使之成为GRE报文,再将其封装在另一协议(如IP)中。这样,此报文的转发就可以完全由IP协议负责。封装后的报文的格式如下图所示:


图4:GRE报文格式


2.GRE Over IPSec介绍


GRE over IPSec可利用GRE和IPSec的优势,通过GRE将组播、广播和非IP报文封装成普通的IP报文,通过IPSec为封装后的IP报文提供安全地通信,进而可以提供在总部和分支之间安全地传送广播、组播的业务,例如视频会议或动态路由协议消息等。


当网关之间采用GRE over IPSec连接时,先进行GRE封装,再进行IPSec封装。GRE over IPSec使用的封装模式为可以是隧道模式也可以是传输模式。因为隧道模式跟传输模式相比增加了IPSec头,导致报文长度更长,更容易导致分片,所以推荐采用传输模式GRE over IPSec。


图5:GRE over IPSec报文封装和隧道协商过程


IPSec封装过程中增加的IP头即源地址为IPSec网关应用IPSec安全策略的接口地址,目的地址即IPSec对等体中应用IPSec安全策略的接口地址。


IPSec需要保护的数据流为从GRE起点到GRE终点的数据流。GRE封装过程中增加的IP头即源地址为GRE隧道的源端地址,目的地址为GRE隧道的目的端地址。


3.具体实现方案


实现SD-WAN组网中基于IPSec的LAN测异网段设备互联,步骤如下:


1)打开系统IP转发功能

2)创建IPSec隧道,需采用传输模式

3)创建GRE隧道,隧道的两端地址要路由可达

4)导入路由到GRE隧道 。如果采用Hub-Spoke组网,同一个“Hub”下挂的设备需要路由打通,不同Hub下挂的设备要隔离,可采用路由隔离;如果是“Full_Mesh”组网,需要将所有网关路由打通。


按具体组网完成上述配置后,可通过设备的LAN侧网关互Ping来测试是否已经实现设备互联。


结论

基于IPSec方式实现LAN侧异网段的设备互联,是实现SD-WAN组网功能的重要技术,可以在此基础上完成分支互联、远程接入、企业上云等多种应用。本文介绍方案在汇聚网关也采用静态路由配置,后续可考虑应用OSPF、BGP等动态路由协议,进一步加强大型网络的组网能力。


IPSec技术之外,也可以考虑应用WireGuard等新型VPN协议,用更加轻量的方式来实现组网。

参考资料

[1RFC 2406 IP Encapsulating Security Payload (ESP)
[2] Red Hat Documentation
[3Key and Sequence Number Extensions to GRE
[4] StrongswanDocumentation
[5]RFC 3442: The Classless Static Route Option for Dynamic Host Configuration Protocol (DHCP) version 4
[6] RFC 4301: Security Architecture for the Internet Protocol
[7]SD-WAN方案介绍,华为云

亚信科技新技术探索
亚信科技的ICT前沿技术观点与行业洞见。展现亚信新技术与产品行业实践成果。
 最新文章