Aller au contenu principal

Appendix C. Exchanges and Payloads (Échanges et charges utiles)

Appendix C. Exchanges and Payloads (Échanges et charges utiles)​

Cette annexe contient un bref résumé des échanges IKEv2 et des charges utiles (payloads) pouvant apparaître dans chaque message. Cette annexe est purement informative ; en cas de divergence avec le corps du présent document, le reste du texte fait foi.

Les charges utiles Vendor ID (V) peuvent être incluses à n'importe quel endroit de n'importe quel message. La séquence ci-dessous indique les emplacements les plus logiques.

C.1. Échange IKE_SA_INIT​

requête              --> [N(COOKIE),]
SA, KE, Ni,
[N(NAT_DETECTION_SOURCE_IP)+,
N(NAT_DETECTION_DESTINATION_IP),]
[V+][N+]

réponse normale <-- SA, KE, Nr,
(sans cookie) [N(NAT_DETECTION_SOURCE_IP),
N(NAT_DETECTION_DESTINATION_IP),]
[[N(HTTP_CERT_LOOKUP_SUPPORTED),] CERTREQ+,]
[V+][N+]

réponse cookie <-- N(COOKIE),
[V+][N+]

autre groupe <-- N(INVALID_KE_PAYLOAD),
Diffie-Hellman [V+][N+]
requis

C.2. Échange IKE_AUTH sans EAP​

requête              --> IDi, [CERT+,]
[N(INITIAL_CONTACT),]
[[N(HTTP_CERT_LOOKUP_SUPPORTED),] CERTREQ+,]
[IDr,]
AUTH,
[CP(CFG_REQUEST),]
[N(IPCOMP_SUPPORTED)+,]
[N(USE_TRANSPORT_MODE),]
[N(ESP_TFC_PADDING_NOT_SUPPORTED),]
[N(NON_FIRST_FRAGMENTS_ALSO),]
SA, TSi, TSr,
[V+][N+]

réponse <-- IDr, [CERT+,]
AUTH,
[CP(CFG_REPLY),]
[N(IPCOMP_SUPPORTED),]
[N(USE_TRANSPORT_MODE),]
[N(ESP_TFC_PADDING_NOT_SUPPORTED),]
[N(NON_FIRST_FRAGMENTS_ALSO),]
SA, TSi, TSr,
[N(ADDITIONAL_TS_POSSIBLE),]
[V+][N+]

erreur lors de la <-- IDr, [CERT+,]
création d'une AUTH,
Child SA N(error),
[V+][N+]

C.3. Échange IKE_AUTH avec EAP​

première requête     --> IDi,
[N(INITIAL_CONTACT),]
[[N(HTTP_CERT_LOOKUP_SUPPORTED),] CERTREQ+,]
[IDr,]
[CP(CFG_REQUEST),]
[N(IPCOMP_SUPPORTED)+,]
[N(USE_TRANSPORT_MODE),]
[N(ESP_TFC_PADDING_NOT_SUPPORTED),]
[N(NON_FIRST_FRAGMENTS_ALSO),]
SA, TSi, TSr,
[V+][N+]

première réponse <-- IDr, [CERT+,] AUTH,
EAP,
[V+][N+]

/ --> EAP
répéter 1..N fois |
\ <-- EAP

dernière requête --> AUTH

dernière réponse <-- AUTH,
[CP(CFG_REPLY),]
[N(IPCOMP_SUPPORTED),]
[N(USE_TRANSPORT_MODE),]
[N(ESP_TFC_PADDING_NOT_SUPPORTED),]
[N(NON_FIRST_FRAGMENTS_ALSO),]
SA, TSi, TSr,
[N(ADDITIONAL_TS_POSSIBLE),]
[V+][N+]

C.4. Échange CREATE_CHILD_SA pour créer ou refaire les clés des Child SA​

requête              --> [N(REKEY_SA),]
[CP(CFG_REQUEST),]
[N(IPCOMP_SUPPORTED)+,]
[N(USE_TRANSPORT_MODE),]
[N(ESP_TFC_PADDING_NOT_SUPPORTED),]
[N(NON_FIRST_FRAGMENTS_ALSO),]
SA, Ni, [KEi,] TSi, TSr,
[V+][N+]

réponse <-- [CP(CFG_REPLY),]
normale [N(IPCOMP_SUPPORTED),]
[N(USE_TRANSPORT_MODE),]
[N(ESP_TFC_PADDING_NOT_SUPPORTED),]
[N(NON_FIRST_FRAGMENTS_ALSO),]
SA, Nr, [KEr,] TSi, TSr,
[N(ADDITIONAL_TS_POSSIBLE),]
[V+][N+]

cas d'erreur <-- N(error)

autre groupe <-- N(INVALID_KE_PAYLOAD),
Diffie-Hellman [V+][N+]
requis

C.5. Échange CREATE_CHILD_SA pour refaire les clés de l'IKE SA​

requête              --> SA, Ni, KEi,
[V+][N+]

réponse <-- SA, Nr, KEr,
[V+][N+]

C.6. Échange INFORMATIONAL​

requête              --> [N+,]
[D+,]
[CP(CFG_REQUEST)]

réponse <-- [N+,]
[D+,]
[CP(CFG_REPLY)]