3.5. ID Payloads
3.5. ID Payloads
ID 负载用于标识 IKE 通信的终端。在每个 IKE_SA_INIT 中必须交换一对 ID 负载,并且可能由 IKE_AUTH 后的消息交换。
ID 负载格式如下:
1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Next Payload |C| RESERVED | Payload Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ID Type | RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Identification Data ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 8: ID 负载格式
o ID Type (1 字节) - 标识身份数据的类型。定义了以下值:
- 1 - IPv4 地址(4 字节)
- 2 - FQDN(完全限定域名)
- 3 - 用户邮箱地址(RFC 822 地址)
- 4 - IPv4 子网(变长,由地址和前缀长度组成)
- 5 - IPv6 地址(16 字节)
- 6 - IPv6 子网(变长,由地址和前缀长度组成)
- 7 - 二进制 ASN.1 DN(X.501 可辨别名称)
- 8 - 二进制 ASN.1 GName(X.501 通用名称)
- 9 - 密钥 ID(不透明八位组串)
- 10 - 逻辑接口句柄(不透明八位组串)
- 11 - ASN.1 DER 编码 X.509 证书的相关 distinguisher
o RESERVED (3 字节) - 必须发送为 0,接收时必须忽略。
o Identification Data (变长) - 依赖 ID 类型的值。
必须为 IKE 身份选择 ID 类型。通常,发起方会发送一个 ID 类型,指示其身份是主机名、IP 地址、密钥 ID 等。响应方也会发送一个 ID 类型。IP 地址 MAY 用作身份,但 MUST NOT 作为标识符与源 IP 地址相同,除非它们实际来自该地址。
ID 数据 MUST 与 AUTH 负载中使用的密钥材料一致,以验证身份。身份 MAY 不透明,但 MUST 足以验证对端身份。