3.10. Payload Notify
3.10. Payload Notify
Le payload Notify est utilisé pour transmettre des informations d'état ou d'erreur relatives à une IKE SA ou à une IPsec SA.
Le format du payload Notify est le suivant :
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 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Protocol ID | SPI Size | Notify Message Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Security Parameter Index (SPI) ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Notification Data ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 13 : Format du payload Notify
o Protocol ID (1 octet) - Protocole auquel s'applique cette notification. Pour une notification IKE SA, c'est 1 (IKE). Pour une notification IPsec SA, c'est 2 (AH) ou 3 (ESP). Peut être 0 si la notification n'est pas liée à une Child SA spécifique.
o SPI Size (1 octet) - Longueur (en octets) du champ SPI suivant. Pour une notification IKE, c'est 0 ; pour une notification IPsec, c'est 4. Si la notification n'est pas liée à une SA spécifique, c'est 0.
o Notify Message Type (2 octets) - Type de la notification. Les valeurs de type sont définies dans le registre IANA.
o SPI (longueur variable) - SPI de la SA concernée. Omise si SPI Size est 0.
o Notification Data (longueur variable) - Données supplémentaires incluses par certains types de notification.
Les types de message Notify sont classés comme suit :
- 0-16383 : Codes d'état (Status), indiquant des informations d'état relatives à une SA.
- 16384-24575 : Codes d'erreur (Error), indiquant un problème rencontré lors du traitement d'une requête.
- 24576-32767 : Réservé pour un usage privé.
Quelques types de notification courants :
- 1 - Type d'échange non pris en charge (UNSUPPORTED_CRITICAL_PAYLOAD)
- 7 - IKE SPI invalide (INVALID_IKE_SPI)
- 9 - Version majeure invalide (INVALID_MAJOR_VERSION)
- 14 - Syntaxe invalide (INVALID_SYNTAX)
- 17 - Sélecteurs invalides (INVALID_SELECTORS)
- 24 - Échec d'authentification (AUTHENTICATION_FAILED)
- 34 - Défaillance temporaire (TEMPORARY_FAILURE)
- 35 - Child SA introuvable (CHILD_SA_NOT_FOUND)
- 16384 - Contact initial (INITIAL_CONTACT)
- 16385 - Réglage de la taille de fenêtre (SET_WINDOW_SIZE)
- 16386 - Adresse supplémentaire (ADDITIONAL_ADDRESS)
- 16387 - Charge utile de configuration disponible (CONFIGURATION_PAYLOAD_AVAILABLE)
- 16388 - Pas d'adresse supplémentaire (NO_ADDITIONAL_ADDRESSES)
- 16389 - Adresses multiples (MULTIPLE_ADDRESS)
- 16390 - Changement d'adresse (CHANGE_ADDRESS)
- 16391 - Changement de port (CHANGE_PORT)
- 16392 - Détection NAT de l'IP source (NAT_DETECTION_SOURCE_IP)
- 16393 - Détection NAT de l'IP de destination (NAT_DETECTION_DESTINATION_IP)
- 16401 - Authentification vérifiée (AUTHENTICATION_VERIFIED)
- 16402 - Suppression de retransmission (DELETE_RETRANSMIT)
- 16403 - Non-suppression de retransmission (NON_DELETE_RETRANSMIT)
- 16404 - Pas d'adresse première (NON_FIRST_ADDRESS)
- 16405 - Faux contact (TS_UNACCEPTABLE)
- 16406 - Certificat invalide (INVALID_CERTIFICATE)
- 16407 - Certificat révoqué (CERTIFICATE_REVOKED)
- 16408 - Clé invalide (INVALID_KEY)
- 16409 - Signature de certificat invalide (INVALID_CERT_SIGNATURE)
- 16410 - Certificat introuvable (CERTIFICATE_NOT_FOUND)