153
Sécurité du réseau
Chapitre 6
2. NAT viole le principe de connectivité de bout en bout, fondamental dans IP,
qui signifie que toute l’« intelligence » du réseau doit être concentrée dans
les nœuds terminaux, et que le réseau lui-même doit assurer un transport
neutre ; avec NAT le routeur qui assure la traduction excède son rôle canonique ;
3. le routeur NAT conserve une trace des échanges sur le réseau, ce qui revient
à dire que tous les échanges sont effectués en mode connecté, or IP admet
des protocoles non connectés, tel UDP, qui subit ainsi une transformation
insidieuse en protocole connecté ;
4. les en-tête TCP et UDP comportent des numéros de port, mais aucune loi
n’interdit d’utiliser au-dessus de la couche IP d’autres protocoles de transport, qui pourraient ne pas reposer sur le concept de port, et qui de ce fait
ne pourraient pas franchir un routeur NAT.
Protocoles connectés et non connectés
Dire qu’UDP est un protocole non connecté signifie qu’il émet chacun de ses paquets
sans conserver à son sujet d’information d’état : aussitôt émis, aussitôt oublié. À l’inverse,
TCP est un protocole connecté, ce qui signifie qu’il tient un journal des paquets émis
ou reçus, de façon notamment à vérifier qu’ils sont dans le bon ordre et tous bien reçus,
ce dont UDP n’a cure.
NAT pose des problèmes aux protocoles qui transportent des adresses IP et des
numéros de port dans la partie « données » de leurs paquets. De tels protocoles sont
dits « sales », parce qu’ils ne respectent pas le modèle d’abstraction en couches, et
qu’ils transportent de l’information de niveau protocolaire (adresses) sous forme
de données quelconques. Le type même du protocole sale est H323, utilisé pour
la téléphonie sur IP et la visioconférence. Pour franchir un routeur NAT, un tel
protocole doit être implémenté de façon que le routeur puisse inspecter le contenu
des paquets et traduire les adresses qui s’y trouvent, puis recalculer la somme de
contrôle et la longueur du paquet.
NAT pose aussi des problèmes à IPSec, il est en fait rigoureusement incompatible
avec le protocole AH d’IPSec car il modifie les adresses et les numéros de ports.
NAT modifie donc les paquets, ce qui, du moins en IPv4, oblige à recalculer la
somme de contrôle qui y figure (IPv6 supprime cette contrainte).
Sécurité du réseau
Chapitre 6
2. NAT viole le principe de connectivité de bout en bout, fondamental dans IP,
qui signifie que toute l’« intelligence » du réseau doit être concentrée dans
les nœuds terminaux, et que le réseau lui-même doit assurer un transport
neutre ; avec NAT le routeur qui assure la traduction excède son rôle canonique ;
3. le routeur NAT conserve une trace des échanges sur le réseau, ce qui revient
à dire que tous les échanges sont effectués en mode connecté, or IP admet
des protocoles non connectés, tel UDP, qui subit ainsi une transformation
insidieuse en protocole connecté ;
4. les en-tête TCP et UDP comportent des numéros de port, mais aucune loi
n’interdit d’utiliser au-dessus de la couche IP d’autres protocoles de transport, qui pourraient ne pas reposer sur le concept de port, et qui de ce fait
ne pourraient pas franchir un routeur NAT.
Protocoles connectés et non connectés
Dire qu’UDP est un protocole non connecté signifie qu’il émet chacun de ses paquets
sans conserver à son sujet d’information d’état : aussitôt émis, aussitôt oublié. À l’inverse,
TCP est un protocole connecté, ce qui signifie qu’il tient un journal des paquets émis
ou reçus, de façon notamment à vérifier qu’ils sont dans le bon ordre et tous bien reçus,
ce dont UDP n’a cure.
NAT pose des problèmes aux protocoles qui transportent des adresses IP et des
numéros de port dans la partie « données » de leurs paquets. De tels protocoles sont
dits « sales », parce qu’ils ne respectent pas le modèle d’abstraction en couches, et
qu’ils transportent de l’information de niveau protocolaire (adresses) sous forme
de données quelconques. Le type même du protocole sale est H323, utilisé pour
la téléphonie sur IP et la visioconférence. Pour franchir un routeur NAT, un tel
protocole doit être implémenté de façon que le routeur puisse inspecter le contenu
des paquets et traduire les adresses qui s’y trouvent, puis recalculer la somme de
contrôle et la longueur du paquet.
NAT pose aussi des problèmes à IPSec, il est en fait rigoureusement incompatible
avec le protocole AH d’IPSec car il modifie les adresses et les numéros de ports.
NAT modifie donc les paquets, ce qui, du moins en IPv4, oblige à recalculer la
somme de contrôle qui y figure (IPv6 supprime cette contrainte).
