华为HCIE课堂笔记第十七章 广域网互联技术

2024-01-31 09:28

本文主要是介绍华为HCIE课堂笔记第十七章 广域网互联技术,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第十七章  广域网互联技术

17.1 GRE VPN

GRE VPN用于分支与分支通过私网地址互联,通过在私网报文上添加一个GRE的头部,以及添加一层外层的IP头部,通过外层头部中的目IP地址使得报文到达隧道对端接口,并解封装得到原始的私网报文。隧道的两个源目IP地址就相当于是形成了一个隧道。

17.1.1 报文格式

格式:外层的帧头+外层IP头部+GRE头部+内层的IP头部+载荷部分

外层帧头:由报文外层目的IP地址及查找路由的下一跳决定。

外层IP头部:Tunnel接口中配置的隧道远端IP地址和隧道目的端IP地址决定

GRE头部:

  1. 1、C bit位:如果置1,表示该头部中携带校验和字段(可变字段),置0不携带
  2. 2、K bit位:如果置1,表示该头部中携带Key字段(主要是用于隧道通信时进行隧道合法性验证),置0不携带。
  1. Recursion:该字段表示报文经过了几层GRE的封装,防止报文进行无限次数封装。GRE头部最多3层,设备收到超过3层GRE的封装的报文,则丢弃。
  2. Protocol type字段:乘客协议,是指GRE报文内部中封装的私网报文是何种协议。

私网IP头部:源目IP地址是互访的两条私网设备自身地址。

GRE隧道是承载3层数据通信的L3VPN,支持广播、组播、单播、因此该隧道中可以传递动态路由协议,可以承载IPv4和IPv6报文。

17.1.2 GRE功能

1、Keepalive机制

GRE默认不开启Keepalive 机制,手动开启后,设备将按照默认5s的周期发送Keepalive报文给隧道对端的接口,如果重传3次,对端仍为未回复Keepalive报文,则认为隧道Down。

2、校验和机制

GRE头部中Cbit位置1,表示携带校验和字段,校验和根据载荷部分报文hash计算得来,一起发送给对端,对端收到报文之后,对载荷部分重新按照相同算法再进行一次校验,得出校验值与报文GRE头部中的校验和进行比较,相同则接受,不同则丢弃。

  1. Key功能

GRE隧道两端设备都隧道接口都设置相同的关键字(key),收发报文关键字必须一致,否则就丢弃报文。Kbit位置1,携带Key字段。

  1. 动态路由:支持IGP协议直接通过隧道学习分支路由表
    1. 在私网的IGP中通告GRE Tunnel接口的本身的IP地址,但是不同通告隧道的源地址。
    2. 如果通告了隧道的源地址(公网地址),公网地址也通过隧道封装,会导致报文重复进行GRE封装,而封装失败。(隧道接口网络层协议平繁的up和down)
  2. 应用场景:MPLS VPN 中CE设备和PE设备非直连,通过GRE隧道在CE和PE之间建立GRE VPN,PE上创建实例在Tunnel 接口下绑定。

17.2 L2TP VPN

  1. 概念:
    1. NAS:网络接入服务器,连接的终端的拨号网络(也是LAC)
    2. LAC:网络接入客户端,发起L2TP连接的设置(一般为出差员工的终端设备)
    3. LNS:L2TP网络服务器,与LAC是一对,接收L2TP的连接请求的服务器。(一般总部的出口设备)
  2. 组网模型:三种,常用远程办公连接
    1. 远程办公设备作为LAC直接向LNS进行拨号
    2. 分支的出口设备作为LAC向总部LNS进行拨号
    3. 分支的终端设备通过PPPoE向ISP的NAS进行拨号,NAS作为LAC向总部的LNS进行L2TP拨号连接。
  3. 消息类型:控制消息和数据消息
    1. 控制消息:主要是用于隧道建立,会话建立拆除等
      1. 公网IP头部+UDP头部+L2TP头部+控制消息部分
    2. 数据消息
      1. 公网IP头部+UDP头部+L2TP头部+PPP头部+私网IP头部+数据部分
    1. IPsec VPN

17.3.1 IPsec的功能:

      1. 加密、认证,提供报文的安全
      2. 防重放机制:防止恶意大量复制IPsec报文并发送给IPsec目标设备,消耗目标设备系统资源
      3. 不可否认性:通过对通信双方身份进行信息认证。

17.3.2 加密方式

对称加密:用于数据传输过程中对报文的加密,加密和解密使用相同的密钥进行。

加解密需要用密钥算法和密钥(密码)。DES、3DES算法,AES算法。

非对称加密:用于身份认证,保护对称密钥,加密和解密使用不同的密钥进行。DH算法,RSA算法。公钥和私钥,公钥是公开的,所有人可以得到该用户的公钥,私钥用户自己保存,不能泄露。

  1. 数据认证:主要作用是报文被篡改后能够及时发现
    1. A将报文和报文hash计算之后的hash值一起发送给B
    2. B将报文的内容重新进行hash计算,得出的hash值与报文携带的hash值进行比较,相同则说明报文未被修改,接收。不同则说明报文被篡改,丢弃不接受。

17.4 IPsec 工作原理

  1. 加密思路:
    1. 通信报文通过对称密钥A进行加解密,需要保障密钥A交互的过程中必须要安全
    2. 使用对端的公钥B1进行加密对称密钥A,得到密钥A的密文X
    3. 对端收到密文X后,通过自己的私钥B2进行解密,得到对称密钥A,用于数据通信加密。
  2. IPsec SA(安全联盟):用于隧道建立的一些要素的约定,包含了加密算法、认证算法、封装的类型(隧道模式封装,传输模式封装)。两个方向,对于同一个通信的两个点,本端设备上会存在两个IPsec SA(inbound和outbound方向)。Ipsec隧道的建立过程,就是SA的建立过程。两种方式:手工和IKE自动建立。
  3. IPsec加密和认证
    1. 认证:本端根据加密算法,将自己的报文A加密得到A1,在根据认证算法将A1进行hash计算,得到hash值ICV,ICV与A1一起发送给对端。
    2. 对端将根据相同的认证算法,对报文进行hash计算,得到ICV与报文后携带ICV进行比较,相同则进行解密,不同,则丢弃。
    3. 解密:对端根据解密算法,将报文A1进行解密得到原始报文A
  4. 两种传输协议:AH(支持认证)、ESP(认证、加密)
  5. 两种封装模式:隧道封装、传输模式封装
    1. 隧道封装报文:AH
      1. 原报文:私网IP+Data部分
      2. AH封装后报文:外层IP+AH头部(ICV)+私网IP头部+Data部分
      3. AH认证的部分:外层IP头部到Data部分(包含这两个部分)
    2. 隧道封装报文:ESP
      1. 原报文:私网IP头部+Data部分
      2. ESP封装后的报文:外层IP头部+ESP头部+私网IP头部+Data部分+ESP尾部+ESP认证数据
      3. ESP加密后的报文:私网IP头部+Data部分+ESP尾部
      4. ESP认证范围:ESP头部+私网IP头部+Data部分+ESP尾部
      5. 对加密后的报文进行认证,将认证后计算的Hash值放入到ESP认证数据部分,报文格式:外层IP头部+ESP头部+私网IP头部+Data部分+ESP尾部+ESP认证数据
    3. 传输模式封装报文:AH
      1. 原报文:私网IP+Data部分
      2. AH封装后:私网IP+AH头部+Data部分
      3. 认证范围:私网IP+AH头部+Data部分
    4. 传输模式封装报文:ESP
      1. 原报文:私网IP+Data部分
      2. ESP封装后:私网IP头部+ESP头部+数据部分+ESP尾部+ESP认证数据
      3. 认证范围:ESP的头部+数据部分+ESP的尾部,认证数据放到报文尾部ESP认证数据字段
      4. 加密范围:数据部分+ESP尾部
    5. 总结:AH的认证范围是包含外层IP头部;ESP的加密范围是ESP头部之后的数据(隧道模式包含内层的IP头部)+ESP尾部;ESP认证范围是ESP的头部到ESP尾部中间(包含头尾)。

17.5 IPsec 隧道动态建立过程

17.5.1 IKE 协议动态建立IPsec SA

IKE两个版本:v1版本和V2版本

  1. IKE V1版本:两种模式,主动模式和野蛮模式,两个阶段
  2. 主动模式:第一阶段,6个报文,三次交互
    1. 1,2个报文进行IKE提议的交互,确定IKE SA
    2. 3,4个报文交互密钥材料,生成相同的密钥,生成飞对称密钥。
    3. 5,6个报文使用第2步生成密钥对身份认证和过程的认证报文交互进行加密保护
  3. 野蛮模式:第一阶段,3个报文
    1. 1,2个携带IKE 提议、身份和验证信息,交互报文确定IKE SA
    2. 发送验证数据
  4. 快速模式:第二阶段,主要的任务协商IPsec SA,该过程使用第一阶段生成的密钥进行加密保护。
    1. 1,2报文进行IPsec 提议的交互,协商IPsec SA
    2. 发送方发送确认信息,确认与响应方可以通信,协商结束。

17.5.2 IKE v2

除了初始交换过程开始两个报文不加密,其他报文均加密

1、初始交换:用于协商IPsec SA的,4个报文,其中两个报文用于交互IKE参数,2个报文用于进行身份和过程认证。

2、子SA交换过程,如果需要协商过个IPSec SA,每增加一个SA,增加一次子SA交换过程即可

3、通知交换过程:用于交换查错信息,消息信息等。

17.6 IPsec NAT穿越

AH协议由于要对报文的外层IP头部进行认证,经过了NAT设备后,IP头部发生改变,会导致对端接受到报文后,认证失败,因此AH不支持NAT穿越

ESP协议,新增加封装UDP头部,则可以支持NAT穿越。

NAT-T 功能,开启NAT-T,检测数据包的源IP地址和端口号,将源IP地址与源端口号hash计算,传递给对端,对端收到报文后,将报文的IP源IP地址和与源端口再次hash计算,得出的结果不同,则认为报文经过了NAT设备。

NAT穿越只能通过分部发起IPsec协商,如果需要总部发起IPsec协商可以在NAT设备上,将端口500和4500一起映射到公网。总部发起IPsec协商的地址是分部的公网地址。如果不映射,分部发起IPsec协商,总部采用策略模版配置。

NAT-T场景,IPsec网关在分支的NAT设备后面,分支访问总部,在NAT设备上创建NAT会话表,总部回包根据NAT会话,NAT设备进行向内部转发。总部无法主动访问分支,因为NAT设备上不存在NAT会话表。但是如果存在NAT会话表,总部也可以主动访问分支IPsec网关。

NAT会话保活:分支IPsec网关周期默认20s一次发送NAT保活报文,用于保留NAT设备上的NAT映射表,此时总部和分支都可以主动任意互访。

17.7 NAT穿越

17.7.1 NAT的类型

  1. 圆锥型:同一个内部tuple转换为同一个外部tuple
  1. 完全圆锥型:收到报文检查报文的目的地址与映射表中的外部tuple是否相同,相同则转发
  2. 限制圆锥型:收到报文之后,检查报文的目的地址与映射表中的外部tuple是否相同,还检查报文的源地址是否与映射表中的目的tuple是否相同。
  3. 端口限制圆锥型:收到报文之后,检查报文的目的地址与因设备表的外部tuple是否相同,还检查报文的源地址与端口号是否与目的tuple相同。
  1. 对称型:同一个内部tuple加上同一个目的tuple转为同一个外部tuple,否则不同的外部tuple;收到报文后检查项和端口限制圆锥型相同。

17.7.2 映射表

存在三个tuple:

    1. 内部tuple:私网IP地址和私网端口号(转换前的IP地址和端口号)
    2. 外部tuple:转换后的IP地址和端口号(公网IP地址和端口号)
    3. 目的tuple:私网设备经过NAT设备访问公网设备,报文的目的IP地址和端口号。

17.7.3 NAT穿越

NAT ALG技术:对应用层报文的内容进行识别,并修改应用层报文的内容,提前建立映射表。实现NAT穿越。典型应用是FTP协议。

参考命令:

[Huawei]nat alg all enable     //使能所有可以支持的应用层协议支持ALG功能。

STUN技术:作用主要适用于获取NAT地址转换映射关系

  1. 内网设备发送绑定请求消息,给到STUN服务器,服务器收到请求消息后,从消息中读取设备的源地址(私网地址和端口号),以及报文的源地址(公网地址和端口号)的映射关系。将绑定关系回复给内网设备(客户端)
  2. 通过BGP协议相互学习对方的NAT信息,从而或者对方的映射信息,私网之间设备通信访问映射消息中的公网地址和端口号即可。
  3. 必须是要完全圆锥型NAT才能支持。

这篇关于华为HCIE课堂笔记第十七章 广域网互联技术的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/663279

相关文章

乐鑫 Matter 技术体验日|快速落地 Matter 产品,引领智能家居生态新发展

随着 Matter 协议的推广和普及,智能家居行业正迎来新的发展机遇,众多厂商纷纷投身于 Matter 产品的研发与验证。然而,开发者普遍面临技术门槛高、认证流程繁琐、生产管理复杂等诸多挑战。  乐鑫信息科技 (688018.SH) 凭借深厚的研发实力与行业洞察力,推出了全面的 Matter 解决方案,包含基于乐鑫 SoC 的 Matter 硬件平台、基于开源 ESP-Matter SDK 的一

Tolua使用笔记(上)

目录   1.准备工作 2.运行例子 01.HelloWorld:在C#中,创建和销毁Lua虚拟机 和 简单调用。 02.ScriptsFromFile:在C#中,对一个lua文件的执行调用 03.CallLuaFunction:在C#中,对lua函数的操作 04.AccessingLuaVariables:在C#中,对lua变量的操作 05.LuaCoroutine:在Lua中,

AssetBundle学习笔记

AssetBundle是unity自定义的资源格式,通过调用引擎的资源打包接口对资源进行打包成.assetbundle格式的资源包。本文介绍了AssetBundle的生成,使用,加载,卸载以及Unity资源更新的一个基本步骤。 目录 1.定义: 2.AssetBundle的生成: 1)设置AssetBundle包的属性——通过编辑器界面 补充:分组策略 2)调用引擎接口API

一份LLM资源清单围观技术大佬的日常;手把手教你在美国搭建「百万卡」AI数据中心;为啥大模型做不好简单的数学计算? | ShowMeAI日报

👀日报&周刊合集 | 🎡ShowMeAI官网 | 🧡 点赞关注评论拜托啦! 1. 为啥大模型做不好简单的数学计算?从大模型高考数学成绩不及格说起 司南评测体系 OpenCompass 选取 7 个大模型 (6 个开源模型+ GPT-4o),组织参与了 2024 年高考「新课标I卷」的语文、数学、英语考试,然后由经验丰富的判卷老师评判得分。 结果如上图所

持久层 技术选型如何决策?JPA,Hibernate,ibatis(mybatis)

转自:http://t.51jdy.cn/thread-259-1-1.html 持久层 是一个项目 后台 最重要的部分。他直接 决定了 数据读写的性能,业务编写的复杂度,数据结构(对象结构)等问题。 因此 架构师在考虑 使用那个持久层框架的时候 要考虑清楚。 选择的 标准: 1,项目的场景。 2,团队的技能掌握情况。 3,开发周期(开发效率)。 传统的 业务系统,通常业

《offer来了》第二章学习笔记

1.集合 Java四种集合:List、Queue、Set和Map 1.1.List:可重复 有序的Collection ArrayList: 基于数组实现,增删慢,查询快,线程不安全 Vector: 基于数组实现,增删慢,查询快,线程安全 LinkedList: 基于双向链实现,增删快,查询慢,线程不安全 1.2.Queue:队列 ArrayBlockingQueue:

通信系统网络架构_2.广域网网络架构

1.概述          通俗来讲,广域网是将分布于相比局域网络更广区域的计算机设备联接起来的网络。广域网由通信子网于资源子网组成。通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网构建,将分布在不同地区的局域网或计算机系统互连起来,实现资源子网的共享。 2.网络组成          广域网属于多级网络,通常由骨干网、分布网、接入网组成。在网络规模较小时,可仅由骨干网和接入网组成

亮相WOT全球技术创新大会,揭秘火山引擎边缘容器技术在泛CDN场景的应用与实践

2024年6月21日-22日,51CTO“WOT全球技术创新大会2024”在北京举办。火山引擎边缘计算架构师李志明受邀参与,以“边缘容器技术在泛CDN场景的应用和实践”为主题,与多位行业资深专家,共同探讨泛CDN行业技术架构以及云原生与边缘计算的发展和展望。 火山引擎边缘计算架构师李志明表示:为更好地解决传统泛CDN类业务运行中的问题,火山引擎边缘容器团队参考行业做法,结合实践经验,打造火山

操作系统实训复习笔记(1)

目录 Linux vi/vim编辑器(简单) (1)vi/vim基本用法。 (2)vi/vim基础操作。 进程基础操作(简单) (1)fork()函数。 写文件系统函数(中等) ​编辑 (1)C语言读取文件。 (2)C语言写入文件。 1、write()函数。  读文件系统函数(简单) (1)read()函数。 作者本人的操作系统实训复习笔记 Linux

LVGL快速入门笔记

目录 一、基础知识 1. 基础对象(lv_obj) 2. 基础对象的大小(size) 3. 基础对象的位置(position) 3.1 直接设置方式 3.2 参照父对象对齐 3.3 获取位置 4. 基础对象的盒子模型(border-box) 5. 基础对象的样式(styles) 5.1 样式的状态和部分 5.1.1 对象可以处于以下状态States的组合: 5.1.2 对象