Annexe C. É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)]