[SRv6]《SRv6网络编程》SRv6网络的演进

概述

内容提要

  • SRv6的增量部署和平滑演进
  • 现网对SRv6的兼容
  • SRv6网络安全

SRv6网络演进面临的挑战

对设备能力的要求
随着对SRv6功能支持的覆盖度,对设备的能力要求不断提高
标签深度的要求高达10层或者更多,还需要支持IOAM的相关报文
[SRv6]《SRv6网络编程》SRv6网络的演进_第1张图片
SRv6网络面临的安全问题
因SRv6源路由特性带来的安全风险
比如,源路由机制允许入节点指定转发路径,给攻击者提供了定点攻击的手段

Routing Type 0即 RH0 类型的IPv6 Routing Header的主要问题也是SRv6 SRH需要解决的:

  • 远程网络发现:RH0可以插入指定的节点地址
  • 绕过防火墙:RH0可以替换目的地址
  • DoS攻击:RH0不限制插入重复地址

SRv6网络的增量部署

SRv6演进路线
SRv6的演进路线分为两条,如下图所示:
第一种较为简单的演进方式为实现IPv6的支持后,平滑升级到SRv6
第二种相对复杂,在该演进过程中,需要在很长时间内同时支持SR-MPLS和SRv6网络,有时还需要两者互通,这就需要专门的协议和标准的提出
在IPv6路线演进过程中,如果想要实现SR-TE的功能,则不能仅仅升级PE设备,而是需要中间的部分P设备的同时升级。最终全网升级SRv6后方可实现SRv6的端到端支持,充分利用网络编程的能力
[SRv6]《SRv6网络编程》SRv6网络的演进_第2张图片
SRv6网络的演进实践
场景1:在多个城域网之间快速建立或拆除VPN业务,实时地在专线中传输数据
场景2:跨省云专线的创建

现网设备兼容SRv6网络演进

现网设备若要克服SRv6升级的难点,需要提升硬件性能,且全网升级才能实现SRv6的端到端服务
当前的过渡方案包括:

  1. 使用Binding SID来弥补某些现网设备SRv6 SID栈深的短板
  2. 利用BGP或者PCE的Flowspec等技术,弥补SRv6全网覆盖度不足的短板

下面介绍如何利用SRv6加上Flowspec的流重定向功能实现端到端的流量调度
核心思想就是:
对于支持SRv6的节点,通过SRH实现流量调度;
对于不支持SRv6的节点,通过Flowspec的重定向功能实现流量疏导。
下图是一个方案示例:
[SRv6]《SRv6网络编程》SRv6网络的演进_第3张图片
组网中只有R1和R4是SRv6节点。先需要使流量沿着虚线所示的路劲传输。
基于这些限制条件,我们利用Flowspec作为辅助完成流量调度。
到达R2的流量将装载Flowspec表项,下一跳指向R6,按照这种方式,最终报文会沿着虚线的路劲到达目的地R4。
需要注意一点,Flowspec如果基于PCE,则路径信息和引流规则将一同发布给入节点,使路径信息和引流规则有机结合,利于自动化引流

SRv6网络安全问题

SRv6的网络安全问题包括两个重点:

  1. 通信源的可信性
  2. 传输过程中报文是否被篡改

基于这两点来指定网络安全方案

IPv6的安全措施

主要利用IPSec保证安全
该协议主要由以下3部分组成:

  1. AH(Authentication Header):数据完整性检查,数据源身份验证,防重放攻击保护
  2. ESP(Encapsulating Security Payload):加密,数据源身份验证,完整性验证,防重放攻击保护
  3. SA(Secure Association):通信两端传递算法和参数等信息,常用IKE协议

其中AH不支持加密,但是支持整个报文的完整性验证
ESP支持加密,也支持完整性验证,但是完整性验证范围仅限于ESP到ESP Trailer
IPSec分为两种模式
传输模式:
[SRv6]《SRv6网络编程》SRv6网络的演进_第4张图片
隧道模式:
[SRv6]《SRv6网络编程》SRv6网络的演进_第5张图片
隧道模式下,所有的安全封装都不会填在原始报文中间
注意:当前的SRH中的字段均为可变字段,这样一来 计算AH认证摘要时,需要跳过SRH,AH就无法确保SRH没有被篡改

源路由的安全措施

原则:防止将网络内部信息泄露给攻击者
解决源路由安全问题的两个关键:

  1. 可信网络的边界问题
  2. 来自可信网络域外流量的可信性问题
    [SRv6]《SRv6网络编程》SRv6网络的演进_第6张图片
    理论上我们防止SID发布到可信域之外,因此外部数据包就不可能包含可信域内的SID,解决了源路由安全问题。
    但是若必须将SID信息发布到域外,则需要在网络边缘和内部部署过滤规则(例如ACL)或安全检验(例如HMAC)

SRv6网络的安全解决方案

基础方案:基于ACL进行流量过滤,丢弃非法访问内部信息的流量

[SRv6]《SRv6网络编程》SRv6网络的演进_第7张图片
基础方案包括以下三方面:

  1. 对外接口上需要配置ACL规则。若SRv6报文 SIP和DIP来自域内,则丢弃报文
  2. 对外对内接口均需配置ACL规则。DIP是域内的,SIP是域外的,则丢弃报文
  3. 在域内未被声明为SID的IPv6地址被插入SegmentList,将不触发SID的处理操作。SL>0则被丢弃

增强方案:基于HMAC对通信源进行身份验证,并验证报文

为提高安全保障,解决泄露SID到外域时带来的风险,SRv6增加了HMAC机制对SRH进行验证,确保外域进来的报文来自可信数据源
SID泄露到外域的场景

  1. Binding SID场景
  2. 云数据中心中,赋予主机SRH封装能力,实现主机自主选路应用级别精细调优
    [SRv6]《SRv6网络编程》SRv6网络的演进_第8张图片
    解决方案:在边缘路由器上配置HMAC策略

SRv6网络安全总结

IPSec在IP协议层面提供了一定程度的安全保障。
在此基础上,通过配置ACL和HMAC保证SRv6报文来自可信数据源且无篡改
从整体上提供了对当前SRv6部署的充足安全保障

你可能感兴趣的:(云网,网络,安全,5g,SRv6)