Sie sind auf Seite 1von 8

NAT

Dentro de la interminable lista de trminos, abreviaciones y nomenclaturas de las


telecomunicaciones NAT es una de las que ms se repite. Antes de ver como se
implementa NAT en una red primero veamos de que se trata.
NAT (Network Address Translation) es uno de los mecanismos utilizados en la Internet
actual para hacer frente a la escacez de direcciones IPv4 pblicas junto con el
enrutamiento sin clase CIDR (Classless Interdomain Routing) y la utilizacin de
mscaras variables VLSM (Variable Lenght Subnet Mask). Hoy en da solamente
queda cerca de un 5% de direcciones IPv4 pblicas, con lo cual se hace cada vez ms
necesario comenzar con la implementacin de IPv6. Sin embargo an son muchas las
organizaciones que no cuentan con IPv6 en sus redes y deben trabajar con las
limitaciones de IPv4. Es ah donde entra a funcionar NAT.
Para resumir, casi groseramente, la utilidad de NAT podramos decir que sirve para
conectar a una o ms redes LAN internas a Internet mediante una sola IP pblica (o un
grupo de ellas). En realidad NAT provee dos funcionalidades bsicas que es la razn
por la cual se ha seguido preferiendo este mecanismo para el funcionamiento de la
mayora de las LAN: Ahorro de direcciones pblicas (y por ende, mucho dinero) y
seguridad.
Bsicamente podemos decir que las redes utilizan un direccionamiento IP privado y
que las mquinas que tienen una direccin de este tipo NO pueden ser alcanzadas
desde Internet. Tcnicamente, estas direcciones IP no son enrutables en la Internet
pblica.
El rango de direcciones IP privadas est definido en el RFC 1928 y corresponde a los
siguientes bloques:
- 10.0.0.0/8 (10.0.0.0 10.255.255.255)
- 172.16.0.0/12 (172.16.0.0 172.31.255.255)
- 192.168.0.0/16 (192.168.0.0 192.168.255.255)
Todas las direcciones IP que no estn en ese rango ni en los dems rangos especiales
(APIPA, Loopbacks, Clase E, Clase D, etc.), son direcciones IP pblicas.
Dicho esto entonces ahora podemos comprender mejor como opera NAT. Para eso
vamos a ver la siguiente red de ejemplo.

La red LAN con los PC y el router utilizan el bloque 192.168.0.0/24 mientras que el ISP
ha asignado la IP pblica 200.1.1.1/29 al router en su puerta WAN. En esta red se ha
implementado NAT para que todos los PC puedan salir a Internet y sean reconocidos
mediante la IP 200.1.1.1. De no existir esto, cada uno de los PC necesitara una
direccin IP pblica nica para poder acceder a Internet, encareciendo el costo de los
servicios.
Por ahora vamos a describir 4 tipos de NAT bsicos. Hay otras implementaciones ms
complejas como NAT-T que por lo general se utiliza para resolver problemas de
conectividad con VPNs y acceso a redes detrs de un NAT.
1. NAT dinmico
El NAT dinmico es el ms bsico de todos los mtodos de traduccin de direcciones
privadas a pblicas. Consiste en tener un bloque IP pblico e ir asignando
dinmicamente una de esas IP a cada mquina de la LAN interna para que salga a
Internet. Si tenemos 3 mquinas en nuestra LAN, como la imagen, necesitaremos
entonces 3 IP pblicas extra (aparte de la necesaria en la interfaz WAN del router) para
lograr conectividad. En este tipo de NAT, las IP reservadas para el bloque pblico se
van utilizando y se crea un mapping 1:1 entre las IP internas y las externas. Si
definimos solo 3 IP pblicas entonces solamente podrn conectarse 3 mquinas
internas hacia Internet. Esta asociacin se crea en forma dinmica.

Configuracin:
Router(config)# ip nat pool RANGOPUBLICO 200.1.1.2 200.1.1.4 netmask
255.255.255.248
Router(config)# access-list 1 permit 192.168.0.0 0.0.0.255
Router(config)# ip nat inside source list 1 pool RANGOPUBLICO
Router(config)# interface FastEthernet0/0
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# interface FastEthernet0/1
Router(config-if)# ip nat outside
El comando ip nat pool permite crear el rango de direcciones IP pblicas que vamos a
asignar al NAT dinmico y asociarlo a un nombre. En este caso RANGOPUBLICO.
Luego se crea una ACL estndar donde seleccionamos el rango completo de nuestro
bloque LAN. Esta ACL no se utiliza para implementar bloqueo de direcciones, si no
simplemente se utiliza para seleccionar cuales IP de la LAN sern traducidas.
Luego el paso ms importante es definir el sentido del NAT. Siempre la LAN ser la red
de adentro e Internet ser la red de afuera. Por lo mismo se declara la
FastEthernet0/0 de nuestro router como interna con el comando ip nat inside y se
hace lo propio en la interfaz que apunta hacia Internet con el comando ip nat outside.
Mucho cuidado con no invertir este orden por que NAT nunca funcionar. En todos los
tipos de NAT se debe definir las interfaces inside y outside.
La desventaja de implementar NAT dinmico es que se debe contar con una IP pblica
para cada PC de la LAN interna que se quiera conectar a Internet. En un entorno con
ms de 100 equipos, que es lo habitual, esto encarecera enormemente los costos
mensuales del acceso a Internet. Por esta razn no es muy fcil encontrar NAT
dinmico actualmente.


2. NAT esttico
El NAT esttico es el ms simple de configurar y permite asociar estticamente una
direccin pblica a una direccin IP privada. Es ideal para permitir el acceso desde
Internet a un servidor que alojamos en una DMZ por ejemplo o en la red LAN
institucional.

En nuestra LAN se ha instalado un servidor Web al cual se le ha asignado la direccin
IP privada 192.168.0.10, pero es requisito que desde Internet tambin se pueda
acceder. Ya que tenemos direcciones IP privadas, este servidor no puede ser
alcanzado desde una red pblica, por lo tanto creamos una forma de asociar una
direccin IP pblica nica al servidor. Ac hemos asignado la IP 200.1.1.5/29. Esta IP
no puede ser utilizada en otro NAT al mismo tiempo ya que queda reservada para la IP
192.168.0.10. En otros sistemas, como OpenBSD, se suele utilizar el nombre de NAT
1:1 (one-to-one).
Configuracin :
Router(config)# ip nat inside source static 192.168.0.10 200.1.1.5
Router(config)# interface FastEthernet0/0
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# interface FastEthernet0/1
Router(config-if)# ip nat outside
Basta con la declaracin del mapeo en la lnea ip nat inside source static
192.168.0.10 200.1.1.5, declarar las interfaces inside y outside y listo. Claro, si ya se
tiene otro mtodo de NAT en el mismo router entonces no es necesario volver a
redeclarar las interfaces. Es as de simple.


3. PAT
El nombre PAT proviene de Port Address Translation y es el mtodo de NAT ms
utilizado probablemente. A diferencia de los dos mtodos anteriores donde cada IP
privada se mapea en forma directa con una nica IP pblica, en el PAT se asocian
dinmicamente todas las conexiones originadas en la LAN con una nica IP pblica,
identificando cada sesin con un puerto de dicha IP (Por eso se llama Port Address
Translation).
Habitualmente PAT se conoce tambin como Sobrecarga u Overload, ya que se le
da todo el trabajo de traduccin a una sola IP o interfaz de red.

En este caso hemos habilitado PAT en la interfaz f0/1. As, todas las mquinas del
bloque 192.168.0.0/24 podrn salir a Internet a travs de la IP 200.1.1.1. Para lograr
esto el router mapea dinmicamente cada sesin con un puerto de la IP pblica. Este
es el tipo de NAT que ms se usa, adems de venir implementado de manera
predeterminada en los routers de tipo SOHO (domsticos). Noten que adems del PAT
del router, tambin hay una entrada esttica que definimos anteriormente para el
servidor Web en la IP 192.168.0.10. Cuando se genere una solicitud desde/hacia este
servidor, el router inmediatamente aplicar su NAT esttico y no meter la IP
192.168.0.10 en la asociacin dinmica de puertos.
Configuracin:
Router(config)# access-list 1 permit 192.168.0.0 0.0.0.255
Router(config)# ip nat inside source list 1 interface f0/1 overload
Router(config)# interface FastEthernet0/0
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# interface FastEthernet0/1
Router(config-if)# ip nat outside
En este caso tambin creamos una ACL estndar para seleccionar las IP de la red LAN
que sern traducidas en el PAT y luego con el comando ip nat inside source list 1
interface f0/1 overload asociamos esa ACL (que le dimos el nmero 1) con la interfaz
WAN donde haremos la sobrecarga. La palabra OVERLOAD es clave para activar PAT
correctamente.
4. PAT con mltiples IP
Aunque hemos mencionado que PAT es el mecanismo ms ampliamente configurado
en las redes actuales, lo cierto es que tiene una tremenda limitacin en entornos donde
la cantidad de mquinas en la LAN es de gran tamao. Si se fijan bien, en el PAT cada
vez que hay una conexin originada en la red LAN, al pasar por el router este asigna un
puerto de la IP 200.1.1.1 para mapear esa conexin. Sabes cuanto es el total de
puertos que existe en TCP/IP?. 2 elevado a 16 puertos: 65536.
Imagnense que hay 300 mquinas en una LAN donde se est haciendo PAT y cada
PC est generando una gran cantidad de conexiones simultneas hacia Internet, como
por ejemplo, la descarga de msica mediante una aplicacin P2P o est siendo vctima
de un ataque DoS. Solo por ejemplificar, supongamos que cada mquina genera 200
conexiones simultneas. Ya habrn problemas porque 200 conexiones por 300 PC son
75000 sesiones que deber manejar el router en su asociacin PAT, pero acabamos de
decir que solamente se pueden establecer un mximo de 65536 traducciones
simultneas en una direccin IP, por lo que 9464 conexiones no tendran xito y
expiraran. Ha experimentado el hecho de intentar abrir una pgina Web esperando
una gran cantidad de tiempo y al segundo intento abre en forma instantnea? Bueno,
esto es un sntoma de una saturacin en el PAT de un Router.
Para solucionar ese problema simplemente podemos asociar una nueva IP pblica a la
sobecarga o un rango de ellas, multiplicando las cantidades de sesiones simultneas
que se permitan en la traduccin de puertos.


Esta vez hemos ampliado la capacidad del PAT agregando un pool de direcciones a
la sobrecarga de la traduccin. Ya no solamente se utiliza la IP 200.1.1.1 para conectar
a todos desde Internet, si no que se utilizan tambin las direcciones 200.1.1.2 a la
200.1.1.4.
Router(config)# ip nat pool RANGO_PAT_PUBLICO 200.1.1.1 200.1.1.4 netmask
255.255.255.248
Router(config)# access-list 1 permit 192.168.0.0 0.0.0.255
Router(config)# ip nat inside source list 1 pool RANGO_PAT_PUBLICO overload
Router(config)# interface FastEthernet0/0
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# interface FastEthernet0/1
Router(config-if)# ip nat outside
Ac hemos creado un rango de direcciones pblicas que utilizaremos para la
sobrecarga y lo hemos llamado RANGO_PAT_PUBLICO. Luego creamos una ACL
estndar para seleccionar el bloque LAN que vamos a traducir. Luego con el
comando ip nat inside source list 1 pool RANGO_PAT_PUBLICO
overload asociamos esa ACL al pool de direcciones pblicamos y hacemos
sobrecarga.
Nuevamente no hay que olvidarse de definir las interfaces inside y outside.
Eso es todo. No es tan complicado como se ve. Claro, hay cierta terminologa que se
aplica dentro de NAT que no hemos cubierto en los ejemplos mostrados que
explicamos ahora. Vale la pena detenerse un poco a comprender bien estos trminos
porque por lo general causan confusin entre los alumnos e instructores (me incluyo).
- Inside Local: Se conoce como Inside Local a la direccin IP interna privada de algn
PC de la red LAN.
- Inside Global: Es la direccin IP pblica que est siendo utilizada para traducir las IP
privadas. La IP WAN del Router en la interfaz f0/1 es considerada Inside Global, as
mismo como todas las IP de los rangos pblicos.
- Outside Local: Corresponde a la direccin IP de un host ubicado en la red externa
(Internet) tal como se muestra en la red LAN interna. No necesariamente tiene que ser
una IP pblica legtima.
- Outside Global: Es la direccin IP pblica de un host de destino en la red externa.
Comandos tiles:
show ip nat translation
show ip nat static
debug ip nat


Para deshabilitar NAT en el router:
1. Desactive las interfaces inside y outside
Router(config)# interface FastEthernet0/0
Router(config-if)# no ip nat inside
Router(config-if)# exit
Router(config)# interface FastEthernet0/1
Router(config-if)# no ip nat outside
2. Limpie la tabla de traducciones:
Router# clear ip nat translations
3. Elimine las ACL y los comandos NAT creados anteponiendo la palabra no.
Ejemplo:
Router(config)# no ip nat pool RANGO_PAT_PUBLICO 200.1.1.1 200.1.1.4 netmask
255.255.255.248
Router(config)# no access-list 1 permit 192.168.0.0 0.0.0.255
outer(config)# no ip nat inside source list 1 pool RANGO_PAT_PUBLICO overload

Para ms informacin puede consultar los siguientes enlaces:

Das könnte Ihnen auch gefallen