Aller au contenu principal

3.1.1. Mode transport

En mode transport, AH est inséré après l'en-tête IP et avant un protocole de couche suivante (par exemple, TCP, UDP, ICMP, etc.) ou avant tout autre en-tête IPsec qui a déjà été inséré. Dans le contexte d'IPv4, cela nécessite de placer AH après l'en-tête IP (et toutes les options qu'il contient), mais avant le protocole de couche suivante. (Notez que le terme "mode transport" ne doit pas être interprété à tort comme restreignant son utilisation à TCP et UDP.) Le diagramme suivant illustre le positionnement du mode transport AH pour un paquet IPv4 typique, sur une base "avant et après".

               BEFORE APPLYING AH
----------------------------
IPv4 |orig IP hdr | | |
|(any options)| TCP | Data |
----------------------------

AFTER APPLYING AH
-------------------------------------------------------
IPv4 |original IP hdr (any options) | AH | TCP | Data |
-------------------------------------------------------
|<- mutable field processing ->|<- immutable fields ->|
|<----- authenticated except for mutable fields ----->|

Dans le contexte IPv6, AH est considéré comme une charge utile de bout en bout, et devrait donc apparaître après les en-têtes d'extension hop-by-hop, routing et fragmentation. Le ou les en-têtes d'extension destination options pourraient apparaître avant ou après ou à la fois avant et après l'en-tête AH selon la sémantique souhaitée. Le diagramme suivant illustre le positionnement du mode transport AH pour un paquet IPv6 typique.

                    BEFORE APPLYING AH
---------------------------------------
IPv6 | | ext hdrs | | |
| orig IP hdr |if present| TCP | Data |
---------------------------------------

AFTER APPLYING AH
------------------------------------------------------------
IPv6 | |hop-by-hop, dest*, | | dest | | |
|orig IP hdr |routing, fragment. | AH | opt* | TCP | Data |
------------------------------------------------------------
|<--- mutable field processing -->|<-- immutable fields -->|
|<---- authenticated except for mutable fields ----------->|

* = if present, could be before AH, after AH, or both

Les en-têtes ESP et AH peuvent être combinés de diverses manières. Le document IPsec Architecture décrit les combinaisons d'associations de sécurité qui doivent être prises en charge.

Notez qu'en mode transport, pour les implémentations "bump-in-the-stack" ou "bump-in-the-wire", comme défini dans le document Security Architecture, les fragments IP entrants et sortants peuvent nécessiter qu'une implémentation IPsec effectue un réassemblage/fragmentation IP supplémentaire afin de se conformer à cette spécification et de fournir un support IPsec transparent. Un soin particulier est requis pour effectuer de telles opérations au sein de ces implémentations lorsque plusieurs interfaces sont utilisées.