Vous êtes sur la page 1sur 25

Network Address Translation

Sommaire
•• Rappel
Rappel :: Pourquoi
Pourquoi NAT
NAT ??
•• Description
Description du
du fonctionnement
fonctionnement de
de NAT
NAT
•• Commandes
Commandes de de configuration
configuration
•• Visualisation
Visualisation des
des translations
translations
•• Considérations
Considérations
•• Problématiques
Problématiques du du groupe
groupe

Laurent Montini
Cisco Systems
Europe
Groupe de Travail NAT
CNRS lmontini@cisco.com 1
Groupe de Travail NAT
CNRS UREC - 04/03/98 01 69 18 52 58
Pourquoi utiliser NAT ?

Utiliser
Utiliser NAT
NAT pour
pour ::

Connexion
Connexion àà l’Internet
l’Internet de
de hosts
hosts qui
qui n’ont
n’ont pas
pas
d’adresses
d’adresses IP
IP globales
globales uniques.
uniques. .
Changement
Changement qui
qui nécessite
nécessite de
de renuméroter
renuméroter
le
le réseau.
réseau.

RFC 1918
Groupe de Travail NAT
CNRS
Groupe de Travail NAT
2
CNRS UREC - 04/03/98
Pourquoi utiliser NAT (cont.) ?

Utiliser
Utiliser NAT
NAT pour
pour ::

Effectuer
Effectuer une
une distribution
distribution de
de charge
charge sommaire.
sommaire.
Améliorer
Améliorer la
la sécurité.
sécurité.

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
3
CNRS UREC - 04/03/98
1er aperçu de NAT

Inside Outside
10.4.4.5

SA
SA
10.1.1.1
192.2.2.2 Internet

10.1.1.1 NAT Table


Inside Local Inside Global IP
IP Address Address
• Static
• Dynamic 10.1.1.1 192.2.2.2
• Overloading 10.4.4.5 192.3.3.6
• Overlapping
• TCP Load Distribution

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
4
CNRS UREC - 04/03/98
NAT : Terminologie
D
C
SA
D 10.2.2.3
SA
Inside 199.6.7.3
SA DA
199.6.7.3 192.2.2.3

Host B
DA Internet 199.6.7.3
10.1.1.2
C
10.1.1.2
SA
SA 192.2.2.2
10.1.1.1
B
NAT Table
10.1.1.1
Inside Local IP Inside Global
A Address IP Address

• Inside Local IP Address A 10.1.1.2 192.2.2.3


• Inside Global IP Address B 10.1.1.1 192.2.2.2
• Outside Global IP Address C
• Outside Local IP Address D/D
Groupe de Travail NAT
CNRS
Groupe de Travail NAT
5
CNRS UREC - 04/03/98
Translation des adresses internes
locales

4
Inside DA
192.2.2.2
3
5 Host B
199.6.7.3
DA
SA
192.2.2.2 Internet
10.1.1.1

10.1.1.2

SA
10.1.1.1

2
1/6 NAT Table
10.1.1.1
Inside Local Inside Global
IP Address IP Address

10.1.1.2 192.2.2.3
10.1.1.1 192.2.2.2

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
6
CNRS UREC - 04/03/98
Surcharge des adresses internes globales
ou PAT* (“overloading”)
4
Inside DA
192.2.2.2
3
5 Host B
199.6.7.3
DA
SA
192.2.2.2 Internet
10.1.1.1
4
10.1.1.2
DA
SA 192.2.2.2
10.1.1.1
Host C
1/6 2 196.5.4.7
NAT Table
10.1.1.1
Protocol Inside Local IP Inside Global IP Outside Global
Address: Port Address: Port IP Address: Port

TCP 10.1.1.2:1723 192.2.2.2:1723 196.5.4.7:23


TCP 10.1.1.1:1024 192.2.2.2:1024 199.6.7.3:23

Groupe de Travail NAT


CNRS * PAT : Port Address Translation 7
Groupe de Travail NAT
CNRS UREC - 04/03/98
Traitement des réseaux qui se
chevauchent (“overlapping”)
ss
ddre
“Double NAT” f or Hos
t C a

est .x
equ =x .x.x
R DA
DNS .2 .2
. 2
192 DNS Server
171.1.1.1 SA= x.x.x.x

Internet

Host C
DNS Request for Host C address
1 171.1.1.3
DNS Response from x.x.x.x
SA= 171.1.1.1 DA=x.x.x.x 2
SA= x.x.x.x DA=192.2.2.2 C= 171.1.1.3
3 DNS Response from x.x.x.x

SA= x.x.x.x DA= 171.1.1.1 C= 193.3.3.3 171.1.1.1 Message to Host C 5


4 171.1.1.1 Message to Host C SA= 192.2.2.2 DA= 171.1.1.3

SA= 171.1.1.1 DA= 193.3.3.3 NAT Table


Inside Local Inside Global Outside Global Outside Local
IP Address IP Address IP Address IP Address
171.1.1.1 192.2.2.2 171.1.1.3 193.3.3.3
Groupe de Travail NAT
CNRS
Groupe de Travail NAT
8
CNRS UREC - 04/03/98
Distribution de charge TCP
Inside
1 3 DA
10.1.1.1
DA
10.1.1.127
5
SA 10.1.1.1
SA
10.1.1.127
10.1.1.1 Real
4 Hosts
Host B Internet
199.6.7.3 10.1.1.2

2 10.1.1.3

Host C Virtual
196.5.4.7 Host
NAT Table 10.1.1.127

Protocol Inside Local IP Inside Global IP Outside Global


Address: Port Address: Port IP Address: Port

TCP 10.1.1.1:23 10.1.1.127:23 199.6.7.3:3058


TCP 10.1.1.2:23 10.1.1.127:23 196.5.4.7:4371
TCP 10.1.1.3:23 10.1.1.127:23 199.6.7.3:3062
Groupe de Travail NAT
CNRS
Groupe de Travail NAT
9
CNRS UREC - 04/03/98
Fonctionnement de NAT

• Translation des adresses IP de l’en-tête


• Recalcul et vérification du checksum
• Recalcul et modification du checksum TCP
• Transparence au niveau application
 conversion de certains paquets
– FTP :
• commandes PORT et PASV : ASCII
• checksum et numérotation des séquences
• table spécifique : ACK, SEQ#
– ICMP, SNMP, SMTP ...

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
10
CNRS UREC - 04/03/98
Configuration d’IOS NAT

ip nat pool net-192 192.2.2.0 192.2.2.255


netmask 255.255.255.0
ip nat inside source list 1 pool net-192
!
interface serial0
ip address 171.69.232.182 255.255.255.240
ip nat outside interface
interface connectée
connectée auau
! monde
monde externe
externe (outside)
(outside)
interface ethernet0
ip address 10.1.1.254 255.255.255.0 interface
interface connectée
connectée auau
ip nat inside réseau
réseau interne
interne (inside)
(inside)
!
access-list 1 permit 10.1.1.0 0.0.0.255

Translation des adresses 10.1.1.0/24 des hosts internes


vers l’adressage globale unique 192.2.2.0/24.
Groupe de Travail NAT
CNRS
Groupe de Travail NAT
11
CNRS UREC - 04/03/98
Configuration du Inside Global
Address Overloading (PAT)

ip nat pool net-192 192.2.2.1 192.2.2.1


netmask 255.255.255.255
ip nat inside source list 1 pool net-192 overload
!
interface serial0
ip address 171.69.232.182 255.255.255.240
ip nat outside
!
interface ethernet0
ip address 10.1.1.254 255.255.255.0
ip nat inside
!
access-list 1 permit 10.1.1.0 0.0.0.255

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
12
CNRS UREC - 04/03/98
Configuration des adresses en
mode Overlapping
Dual NAT
ip nat pool net-2 192.2.2.0 192.2.2.255 prefix-length 24
ip nat pool net-10 193.3.3.0 193.3.3.255 prefix-length 24
ip nat inside source list 1 pool net-2
ip nat outside source list 1 pool net-10
!
interface Serial0
ip address 171.69.232.182 255.255.255.240
ip nat outside
!
interface Ethernet0
ip address 10.1.1.254 255.255.255.0
ip nat inside
!
access-list 1 permit 10.1.1.0 0.0.0.255

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
13
CNRS UREC - 04/03/98
Configuration du TCP Load
Distribution

ip nat pool real-hosts 10.1.1.1 10.1.1.126 prefix-length 24 type rotary

ip nat inside destination list 2 pool real-hosts


!
interface serial0
ip address 192.168.1.129 255.255.255.254
ip nat outside
!
interface ethernet0
ip address 10.1.1.254 255.255.255.0
ip nat inside
!
access-list 2 permit 10.1.1.127

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
14
CNRS UREC - 04/03/98
Vérification de NAT

Basic IP Address Translation

router# show ip nat trans


Pro Inside global Inside local Outside local Outside global
--- 192.2.2.2 10.1.1.1 --- ---
--- 192.2.2.3 10.1.1.2 --- ---

IP Address Translation with Overloading


router# show ip nat trans
Pro Inside global Inside local Outside local Outside global
udp 192.2.2.2:1220 10.1.1.1:1220 171.69.2.132:53 171.69.2.132:53
tcp 192.2.2.2:11012 10.1.1.2:11012 171.69.1.220:23 171.69.1.220:23
tcp 192.2.2.2:1067 10.1.1.2:1067 171.69.1.161:23 171.69.1.161:23

Des numéros TCP uniques sont utilisés pour


distinguer chaque host.

Une translation pour une transaction DNS est encore active.


2 hosts internes différents apparaissent avec une seule adresse IP vers l’extérieur.

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
15
CNRS UREC - 04/03/98
Statistiques*

router#sho ip nat statistics


Total active translations: 2 (1 static, 1 dynamic; 0 extended)
Outside interfaces: Ethernet0
Inside interfaces: Ethernet1
Hits: 1416245 Misses: 142
Expired translations: 164
Dynamic mappings:
-- Inside Source
access-list 1 pool net-0 refcount 1
pool net-0: netmask 255.255.255.224
start 171.69.241.34 end 171.69.241.62
type generic, total addresses 29, allocated 1 (3%), misses 0

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
16
CNRS UREC - 04/03/98
Effacement des translations NAT
router# show ip nat trans
Pro Inside global Inside local Outside local Outside global
udp 192.2.2.2:1220 10.1.1.1:1120 171.69.2.132:53 171.69.2.132:53
tcp 192.2.2.2:11012 10.1.1.2:11012 171.69.1.220:23 171.69.1.220:23
tcp 192.2.2.2:1067 10.1.1.1:1067 171.69.1.161:23 171.69.1.161:23
router# clear ip nat trans *
router# show ip nat trans

Toutes les entrées sont effacées.


router# show ip nat trans
Pro Inside global Inside local Outside local Outside global
udp 192.2.2.2:1220 10.1.1.1:1120 171.69.2.132:53 171.69.2.132:53
tcp 192.2.2.2:11012 10.1.1.2:11012 171.69.1.220:23 171.69.1.220:23
tcp 192.2.2.2:1067 10.1.1.1:1067 171.69.1.161:23 171.69.1.161:23
router# clear ip nat trans udp inside 192.2.2.2 10.1.1.1 1220
171.69.2.132 53 171.69.2.132 53
router# show ip nat trans
Pro Inside global Inside local Outside local Outside global
tcp 192.2.2.2:11012 10.1.1.2:11012 171.69.1.220:23 171.69.1.220:23
tcp 192.2.2.2:1067 10.1.1.1:1067 171.69.1.161:23 171.69.1.161:23

L’entrée 192.2.2.2 est effacée.


Groupe de Travail NAT
CNRS
Groupe de Travail NAT
17
CNRS UREC - 04/03/98
Troubleshooting NAT

router# debug ip nat


NAT: s=10.1.1.1->192.2.2.2, d=171.69.2.132 [6825]
NAT: s=171.69.2.132, d=192.2.2.2->10.1.1.1 [21852]
NAT: s=10.1.1.1->192.2.2.2, d=171.69.1.161 [6826]
>
NAT*: s=171.69.1.161, d=192.2.2.2->10.1.1.1 [23311]
NAT*: s=10.1.1.1->192.2.2.2, d=171.69.1.161 [6827]
NAT*: s=10.1.1.1->192.2.2.2, d=171.69.1.161 [6828]
>
NAT*: s=171.69.1.161, d=192.2.2.2->10.1.1.1 [23313]
>
NAT*: s=171.69.1.161, d=192.2.2.2->10.1.1.1 [23325]

Exemple d’une requête DNS inside-to-outside.


Réponse à la requête DNS.
Exemple d’une conversation TCP, inside-to-outside.

** Indique qu’une translation est en mode fast switching.


Groupe de Travail NAT
CNRS
Groupe de Travail NAT
18
CNRS UREC - 04/03/98
Quelques considérations

La
La translation
translation introduira
introduira plus
plus ou
ou moins
moins de
de délais
délais
pendant
pendant sa
sa commutation
commutation ..

NAT
NAT fait
fait que
que certaines
certaines applications
applications spécifiques
spécifiques qui
qui
utilisent
utilisent les
les adresses
adresses IP
IP fonctionneront
fonctionneront difficilement
difficilement
ou
ou seront
seront impossibles
impossibles àà utiliser.
utiliser.

NAT
NAT cache
cache l’identité
l’identité “réelle”
“réelle” des
des hosts.
hosts.

Tout
Tout paquet
paquet qui
qui doit
doit être
être translaté
translaté doit
doit passer
passer par
par le
le
routeur
routeur NAT.
NAT.

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
19
CNRS UREC - 04/03/98
Quelques considérations (cont.)
• ip nat translation “mot-clé” “valeur”
– timeout
– max-entries*
– dns-timeout
– icmp-timeout*
– udp-timeout
– tcp-timeout
– syn-timeout*
– finrst-timeout
• overlapping
– adresses IP identiques
– noms de domaines différents

Groupe de Travail NAT *nouvelles fonctionnalités


CNRS
Groupe de Travail NAT
20
CNRS UREC - 04/03/98
Problématiques du groupe NAT

• Multicast
• Routage
• NAT, outil de sécurité
• Utilisation des pools d’adresses
• modification dynamique
• attribution des adresses
• Renumérotation interne (DHCP ?)

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
21
CNRS UREC - 04/03/98
Routage
• L’adressage interne ne doit pas être diffusé vers l’extérieur
• L’adressage externe peut être distribué vers l’intérieur
• Processus : translation / routage
• Modes de routage
– Route par défaut vers l’extérieur
– Interface passif router eigrp n
– Filtrage des routes network “adresse du réseau externe”
distribute-list 3 out
distribute-list 3 in
no auto-summary
# access-list 3 pour interdire
# les adresses du réseau interne
access-list 3 deny “adresse interne” “mask”
access-list 3 permit any

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
22
CNRS UREC - 04/03/98
Utilisation des pools d’adresses

• adresses statiques et dynamiques séparées


• adresses statiques appartenant à un pool
d’adressage dynamique
• pools différents d’adresses externes
• contigus ou non
• même interface
• interfaces différents
• policy routing

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
23
CNRS UREC - 04/03/98
NAT, outil de sécurité ?

• SYN Flooding, spoofing …


• mode statique
• pas de log
• perte de la traçabilité de bout-en-bout
• problématique de l’encryption
• paquets applicatifs
• en-tête TCP/IP

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
24
CNRS UREC - 04/03/98
Multicast
• Pas de support dans l’IOS NAT ni dans les garde-
barrières
• Pas de spécification à l’IETF
• Traitement des protocoles de routage multicast
• Architecture proposée par M. Benza
• adressage unicast
– translation
• routage unicast
– filtrage
• routage multicast
• enregistrement SDR (?)

Groupe de Travail NAT


CNRS
Groupe de Travail NAT
25
CNRS UREC - 04/03/98

Vous aimerez peut-être aussi