VuePress 站点
首页
数学
计算机基础
Java后端
AI大模型
UI设计
首页
数学
计算机基础
Java后端
AI大模型
UI设计
  • 计算机基础
  • 计算机网络应用

    • 课程笔记:TCP三次握手建立连接
    • 课程笔记:TCP三次握手的必要性
    • 课程笔记:TCP协议缺陷与SYN Flood攻击
    • 课程笔记:TCP四次挥手释放连接
    • 课程笔记:TCP四次挥手释放连接的必要性
    • 课程笔记:TCP 报文段格式与 IP 分组
    • 课程笔记:HTTP/2 新特性——二进制分帧
    • 课程笔记:HTTP/2 新特性——多路复用
    • 课程笔记:HTTP/2 新特性——服务器推送(Server Push)
    • 课程笔记:HTTPS 简介与架构图
    • 课程笔记:HTTPS原理与传输层安全协议(TLS)
    • 课程笔记:HTTPS原理——对称加密算法
    • 课程笔记:HTTPS原理——非对称加密算法
    • 课程笔记:HTTPS 原理 —— 数字签名
    • 课程笔记:HTTPS 原理——证书与 CA
    • 课程笔记:完整的HTTPS协议通信流程
    • 课程笔记:HTTPS 协议的性能损耗
    • 课程笔记:TLS False Start 加速 HTTPS
    • 课程笔记:升级 HTTP 协议到 HTTP/2
    • 课程笔记:通过会话恢复加速 HTTPS
    • 课程笔记:OWASP 组织与十大 Web 安全漏洞
    • 课程笔记:XSS 跨站脚本攻击
    • 课程笔记:存储型XSS跨站脚本攻击
    • 课程笔记:XSS攻击窃取Cookie
    • 课程笔记:反射型XSS跨站脚本攻击
    • 课程笔记:DOM型XSS跨站脚本攻击
    • 课程笔记:植入 JS、HTML 代码攻击
    • 课程笔记:XSS攻击的防护策略
    • 课程笔记:XSS攻击的输入环节防护
    • 课程笔记:XSS 劫持 Cookie 的防护策略
    • 课程笔记:XSS 内容输出防护方案
    • 课程笔记:CSP 内容安全策略
    • 课程笔记:CSP 内容安全策略的应用方式
    • 课程笔记:CSRF 跨站请求伪造攻击原理
    • 课程笔记:CSRF 跨站点请求伪造攻击案例
    • 课程笔记:CSRF 跨站请求伪造防护方案
    • 课程笔记:OWASP CSRFTester 工具的原理与使用
    • 课程笔记:点击劫持攻击原理
    • 课程笔记:点击劫持防护方案
    • 课程笔记:URL 跳转漏洞原理与防护
    • 课程笔记:Session 认证与会话劫持
    • 课程笔记:Session固定与Session保持攻击
    • 课程笔记:注入攻击与 OWASP 靶机平台
    • 课程笔记:SQL盲注与ORM注入攻击及防护
    • 课程笔记:XML注入、代码注入、OS命令注入攻击
    • 课程笔记:文件上传漏洞与文件下载/目录浏览漏洞
    • 课程笔记:访问控制与权限访问漏洞
    • 课程笔记:DDoS 分布式拒绝服务攻击原理与防护
    • 课程笔记:CC(Challenge Collapsar)攻击与防护
    • 课程笔记:CDN 的工作原理
    • 课程笔记:CDN的网络架构和术语说明
    • 课程笔记:CDN应用场景与阿里云CDN
    • 课程笔记:如何使用阿里云CDN服务
    • 课程笔记:CDN 刷新与预热
    • 课程笔记:阿里云 CDN 回源配置
    • 课程笔记:CDN 缓存配置
    • 课程笔记:CDN 访问控制与性能优化
  • 计算机网网络

    • 📖 教材介绍与课程导言
    • 📖 1.1 信息时代的计算机网络
    • 📖 1.2 因特网概述
    • 📖 1.3 电路交换、分组交换和报文交换
    • 📖 1.4 计算机网络的定义和分类
    • 📖 1.5 计算机网络的性能指标(1)
    • 📖 1.5 计算机网络的性能指标(2)
    • 📖 1.6.1 常见的三种计算机网络体系结构
    • 📖 1.6.2 计算机网络体系结构分层的必要性
    • 📖 1.6.3 计算机网络体系结构分层思想举例
    • 📖 计算机网络体系结构中的专用术语
    • 📖 物理层概述
    • 📖 物理层下面的传输媒体
    • 📖 传输方式
    • 📖 编码与调制
    • 📖 2.5 信道的极限容量
    • 📖 2.6 信道复用技术
    • 📖 3.1 数据链路层概述
    • 📖 3.2 数据链路层的三个重要问题
    • 📖 3.2.1 封装成帧和透明传输
    • 📖 3.2.2 差错检测
    • 📖 3.2.3 (1) 可靠传输的相关基本概念
    • 📖 3.2.3 (2) 可靠传输的实现机制 - 停止-等待协议(SW)
    • 📖 3.2.3 (3) 可靠传输的实现机制 - 回退N帧协议(GBN)
    • 📖 3.2.3 (4) 可靠传输的实现机制 - 选择重传协议(SR)
    • 📖 3.3 点对点协议 PPP
    • 📖 3.4 共享式以太网
    • 📖 3.4.1 网络适配器和 MAC 地址
    • 📖 3.4.2 (1) CSMA/CD 协议的基本原理
    • 📖 3.4.2 (2) 共享式以太网的争用期、最小帧长和最大帧长
    • 📖 3.4.2 (3) 共享式以太网的退避算法和信道利用率
    • 📖 3.4.3 使用集线器的共享式以太网
    • 📖 3.4.4 在物理层扩展以太网
    • 📖 3.4.5 (1) 网桥的主要结构和基本工作原理
    • 📖 3.4.5 (2) 透明网桥的自学习和转发帧的过程以及生成树协议STP
    • 📖 3.5 交换式以太网
    • 📖 3.5.1 以太网交换机
    • 📖 3.5.2 共享式以太网和交换式以太网的对比
    • 📖 3.6 以太网的MAC帧格式
    • 📖 3.7.1 虚拟局域网 VLAN 概述
    • 📖 3.7.2 虚拟局域网 VLAN 的实现机制
    • 📖 3.8 以太网的发展
    • 📖 3.9.1 802.11 无线局域网的组成
    • 📖 3.9.2 802.11 无线局域网的物理层
    • 📖 3.9.3 (1) 802.11 无线局域网的数据链路层 —— 使用 CSMA/CA 协议(而不使用 CSMA/CD 协议)
    • 📖 CSMA/CA(载波监听多址接入/碰撞避免)协议的基本工作原理
    • 📖 802.11 无线局域网的 MAC 帧格式
    • 📖 网络层概述
    • 📖 网际协议 IP(网际协议)与异构网络互连
    • 📖 IPv4 地址及其编址方法——概述
    • 📖 IPv4 地址的分类编址方法
    • 📖 IPv4 地址的划分子网编址方法
    • 📖 IPv4 地址的无分类编址方法(CIDR)
    • 📖 IPv4 地址的应用规划
    • 📖 IPv4 地址与 MAC 地址
    • 📖 地址解析协议 ARP
    • 📖 IP 数据报的发送和转发流程
    • 📖 IPv4 数据报的首部格式
    • 📖 静态路由配置
    • 📖 因特网的路由选择协议概述
    • 📖 路由信息协议 RIP(路由信息协议)
    • 📖 开放最短路径优先 OSPF(开放最短路径优先)
    • 📖 边界网关协议 BGP(边界网关协议)
    • 📖 路由器的基本工作原理
    • 📖 网际控制报文协议 ICMP(网际控制报文协议)
    • 📖 虚拟专用网 VPN 和网络地址转换 NAT
    • 📖 IP 多播技术的相关基本概念
    • 📖 在局域网上进行硬件多播
    • 📖 在因特网上进行 IP 多播需要的两种协议
    • 📖 网际组管理协议 IGMP
    • 📖 多播路由选择协议
    • 📖 移动 IP 技术概述
    • 📖 IPv6 引进的主要变化
    • 📖 IPv6 数据报的基本首部和扩展首部
    • 📖 IPv6 地址
    • 📖 从 IPv4 向 IPv6 过渡
    • 📖 网际控制报文协议 ICMPv6
    • 📖 软件定义网络 SDN
    • 📖 运输层概述 — 进程间基于网络的通信
    • 📖 TCP/IP 体系结构运输层中的两个重要协议
    • 📖 运输层端口号、复用与分用的概念
    • 📖 UDP 和 TCP 的对比
    • 📖 TCP 报文段的首部格式
    • 📖 "三报文握手"建立 TCP 连接
    • 📖 "四报文挥手"释放 TCP 连接
    • 📖 TCP 的流量控制 (Flow Control)
    • 📖 TCP 的拥塞控制 (Congestion Control) 及与网际层拥塞控制的关系
    • 📖 TCP 可靠传输的实现
    • 📖 TCP 超时重传时间 (RTO) 的选择
    • 📖 TCP 的选择确认 (SACK)
    • 📖 6.1 应用层概述
    • 📖 6.2 客户—服务器方式和对等方式
    • 📖 6.3 动态主机配置协议 DHCP
    • 📖 6.4 域名系统 DNS
    • 📖 6.5 文件传送协议 FTP
    • 📖 电子邮件
    • 📖 万维网 WWW
    • 📖 网络安全概述
    • 📖 密码学相关基本概念
    • 📖 对称密钥密码体制
    • 📖 公钥密码体制
    • 📖 报文摘要和报文鉴别码
    • 📖 数字签名(digital signature)
    • 📖 实体鉴别
    • 📖 密钥分发
    • 📖 访问控制
    • 📖 网络体系结构各层采取的安全措施—物理层和数据链路层
    • 📖 网络体系结构各层采取的安全措施—网络层
    • 📖 网络体系结构各层采取的安全措施—运输层
    • 📖 网络体系结构各层采取的安全措施—应用层
    • 📖 防火墙访问控制与入侵检测系统
    • 📖 常见的网络攻击及其防范
    • 📖 定长子网划分和变长子网划分的二叉树解法

📖 网络体系结构各层采取的安全措施—网络层

🎯 课程摘要:本课介绍网络层安全实例——IPsec(IP 安全协议)族。内容包括 IPsec 的两种工作方式(传输模式与隧道模式)、安全关联(SA)、IP 安全数据报格式与 ESP 协议要点,以及安全关联数据库(SAD)、安全策略数据库(SPD)和因特网密钥交换协议(IKE)等辅助机制。

📝 详细笔记

1. IPsec 协议族概述

  • 概念定义:IPsec(IP Security,IP 安全协议)是为因特网的网际层提供安全服务的协议族。
  • 算法灵活性:IPsec 不限定用户使用何种特定的加密和鉴别算法,通信双方可选择合适的算法和参数(如密钥长度)。为保证互操作性,IPsec 包含一套所有 IPsec 实现都必须实现的加密算法。
  • 支持范围:IPsec 既支持 IPv4 也支持 IPv6;在 IPv6 中,AH 协议和 ESP 协议都是扩展首部的一部分。

2. IPsec 的两种工作方式

对比项传输模式(Transport Mode)隧道模式(Tunnel Mode)
封装方式IPsec 将运输层报文作为 IPsec 数据载荷,添加 IPsec 首部和尾部,再添加新 IP 首部网际层给运输层报文添加 IP 首部构成 IP 数据报,IPsec 将整个 IP 数据报作为 IPsec 数据载荷,添加 IPsec 首部和尾部,再添加新 IP 首部
保护范围仅保护 IP 载荷(运输层报文)保护整个原始 IP 数据报(含原始首部)
使用情况较少目前使用最多
  • ⚠️ 重点/考点:无论哪种方式,IP 安全数据报的新 IP 首部都不加密,以便因特网中各路由器能识别首部信息,将 IP 安全数据报从不安全的因特网中从源点安全转发到终点。所谓"IP 安全数据报"是指数据报的数据载荷是经过加密并能够被鉴别的。

3. 隧道模式 IPsec 封装过程

4. 安全关联(SA)

  • 概念定义:在使用隧道模式传送 IP 安全数据报前,应为通信双方建立一条网际层的逻辑连接,称为安全关联(SA,Security Association),也称安全隧道。这使得传统无连接的网际层变为具有逻辑连接的层。
  • 单向性:SA 是从源点到终点的单向连接;若需双向安全通信,两个方向都需要建立 SA。
  • 应用场景举例:
    • 路由器之间建立 SA:公司总部与分公司之间,SA 建立在总部路由器 R1 和分公司路由器 R2 之间。主机 A 发送的 IP 数据报(源地址为 A,目的地址为 B)经 R1 进行 IPsec 加密并添加新 IP 首部(源地址为 R1,目的地址为 R2),成为 IP 安全数据报,经因特网转发到 R2 后解密还原,再交付给主机 B。
    • 路由器与主机之间建立 SA:公司总部主机 A 与外地出差员工主机 B 安全通信,SA 建立在 R1 与主机 B 之间。R1 加密后添加新 IP 首部(源地址为 R1,目的地址为 B),主机 B 中 IPsec 进行鉴别和解密。
  • 内部通信无需 SA:公司内部主机之间通信不经过不安全的因特网,无需建立 SA。

5. SA 的状态信息

建立 SA 的路由器或主机需维护以下状态信息:

状态信息说明
安全参数索引(SPI)32 位连接标识符,用于标识该 SA
SA 源点和终点的 IP 地址如路由器 R1 和主机 B 的 IP 地址
加密类型如 DES 或 AES
加密的密钥用于数据加密
完整性检查的类型如使用 MD5 或 SHA-1 的报文鉴别码
鉴别使用的密钥用于报文鉴别

6. AH 协议与 ESP 协议

IPsec 协议族中有两个主要协议:

对比项AH(鉴别首部)ESP(封装安全有效载荷)
功能提供鉴别功能提供加密和鉴别功能
复杂度较简单复杂得多
加密支持不提供加密提供加密
功能包含关系AH 的功能已包含在 ESP 中使用 ESP 则无需使用 AH
本课重点不再详述重点介绍

7. ESP 协议—IP 安全数据报格式与构建

ESP 各组成部分

部分字段说明
ESP 首部安全参数索引(SPI)32 比特,同一 SA 中传送的 IP 安全数据报使用同样的 SPI 值
序号32 比特,用于鉴别时防止重放攻击;分组重传时序号不重复
ESP 有效载荷原始 IP 数据报(隧道模式)作为 ESP 的有效载荷
ESP 尾部填充字段全零字节填充,使数据块长度为若干字节整数倍(如 4 字节)
填充长度8 比特,指出填充字段长度(字节为单位),最大值 255
下一首部指明接收端应将 ESP 有效载荷交给什么协议处理;隧道模式取值为 4(原始 IP 数据报首部),传输模式取值相应改变
报文鉴别码(MAC)MAC对需要鉴别的部分(ESP 首部 + 加密部分)生成,添加在 ESP 尾部后面

构建过程

  1. 原始 IP 数据报作为 ESP 有效载荷;
  2. 添加 ESP 尾部(填充字段 + 填充长度 + 下一首部);
  3. 按 SA 指明的加密算法和密钥,对 ESP 有效载荷 + ESP 尾部进行加密;
  4. 在加密部分前添加 ESP 首部(SPI + 序号),构成需要鉴别的部分;
  5. 按 SA 指明的算法和密钥,对需要鉴别的部分生成报文鉴别码 MAC,添加在 ESP 尾部后面;
  6. 添加新 IP 首部(协议字段取值为 50,表明接收端应将数据载荷交给 ESP 协议处理),构成 IP 安全数据报。

接收方处理过程

  1. 根据 IP 安全数据报首部中协议字段取值 50,将数据载荷交由 ESP 协议处理;
  2. 检查 ESP 首部中 SPI 字段值,确定该数据报属于哪个 SA;
  3. 对鉴别部分计算报文鉴别码并与尾部的 MAC 比较,验证数据来源真实性;
  4. 根据 ESP 首部中序号判断是否遭受重放攻击;
  5. 用 SA 指明的加密算法和密钥对加密部分进行解密;
  6. 根据填充长度删除填充的全零字节,还原 ESP 有效载荷(原始 IP 数据报);
  7. 根据解密后 ESP 尾部中下一首部字段取值 4,将 ESP 有效载荷交付给 IP 处理。

8. IPsec 的安全保障效果

  • 保密性:攻击者截获 IP 安全数据报后,仅能知道首部信息(源/目的 IP 地址),无法看懂数据载荷含义。
  • 完整性:攻击者若故意删除数据载荷中的字节,接收端能进行完整性验证,不会接受含有差错的数据报。
  • 防重放攻击:IP 安全数据报使用有效的序号,使重放攻击不能成功。

9. IPsec 辅助机制

机制全称功能
SAD安全关联数据库(Security Association Database)存储可能要用到的多条 SA;发送/接收 IP 安全数据报时在 SAD 中查找相应 SA,获取安全保护或检查安全性的必要信息
SPD安全策略数据库(Security Policy Database)指明什么样的 IP 数据报需要 IPsec 处理(取决于源地址、源端口、目的地址、目的端口、协议类型等);指出是否需要 IP 安全数据报,若需要则由 SAD 指出使用哪个 SA
IKE因特网密钥交换协议(Internet Key Exchange)为 IP 安全数据报自动创建 SA 而无需人工配置;适用于大型地理位置分散的系统
  • ⚠️ 重点/考点:小型系统可用人工配置建立 SAD;大型系统必须使用 IKE 自动生成 SA。并非所有 IP 数据报都需 IPsec 处理,很多信息用明文普通 IP 数据报发送即可。

💡 核心总结

  • IPsec 在网际层提供安全服务,有传输模式和隧道模式两种,隧道模式使用最多。
  • 安全关联(SA) 是网际层的单向逻辑连接,维护 SPI、地址、加密/鉴别类型及密钥等状态信息。
  • ESP 协议提供加密和鉴别,构建 IP 安全数据报时对有效载荷和尾部加密、对首部和加密部分生成 MAC,新 IP 首部协议字段取值为 50。
  • 辅助机制:SAD 存储 SA、SPD 决定处理策略、IKE 自动创建 SA。

❓ 课后思考 / 经典考题

  1. 比较 IPsec 传输模式与隧道模式的区别,为什么隧道模式使用最多?
  2. 什么是安全关联(SA)?它包含哪些状态信息?为什么 SA 是单向的?
  3. 详细描述隧道模式下 ESP IP 安全数据报的构建过程和接收方处理过程。
  4. 比较 AH 协议与 ESP 协议的功能差异。
  5. 简述 SAD、SPD 和 IKE 的作用及其相互关系。
  6. IP 安全数据报如何实现保密性、完整性和防重放攻击?
最近更新: 2026/6/23 17:18
Contributors: yangwenguang
Prev
📖 网络体系结构各层采取的安全措施—物理层和数据链路层
Next
📖 网络体系结构各层采取的安全措施—运输层