¿Qué es NAT?
La
traducción de direcciones de red o NAT (del inglés Network Address Translation)
es un mecanismo utilizado por routers IP para intercambiar paquetes entre dos
redes que asignan mutuamente direcciones incompatibles. Consiste en convertir,
en tiempo real, las direcciones utilizadas en los paquetes transportados.
También es necesario editar los paquetes para permitir la operación de
protocolos que incluyen información de direcciones dentro de la conversación
del protocolo.
La
idea es sencilla, hacer que redes de ordenadores utilicen un rango de
direcciones especiales (IPs privadas) y se conecten a Internet usando una única
dirección IP (IP pública). Gracias a este “parche”, las grandes empresas sólo
utilizarían una dirección IP y no tantas como máquinas hubiese en dicha
empresa. También se utiliza para conectar redes domésticas a Internet.
Tipos de NAT
Los dispositivos NAT no tienen un comportamiento uniforme y se ha
tratado de clasificar su uso en diferentes clases. Existen cuatro tipos de NAT:
- NAT
de cono completo (Full-Cone NAT). En este caso de comunicación
completa, NAT mapeará la dirección IP y puerto interno a una dirección y
puerto público diferentes. Una vez establecido, cualquier host externo
puede comunicarse con el host de la red privada enviando los paquetes a una
dirección IP y puerto externo que haya sido mapeado. Esta implementación
NAT es la menos segura, puesto que una atacante puede adivinar qué puerto
está abierto.
- NAT
de cono restringido (Restricted Cone NAT). En este caso de la
conexión restringida, la IP y puerto externos de NAT son abiertos cuando
el host de la red privada quiere comunicarse con una dirección IP
específica fuera de su red. El NAT bloqueará todo tráfico que no venga de
esa dirección IP específica.
- NAT
de cono restringido de puertos (Port-Restricted Cone NAT).
En una conexión restringida por puerto NAT bloqueará todo el tráfico a
menos que el host de la red privada haya enviado previamente tráfico a una
IP y puerto especifico, entonces solo en ese caso ésa IP:puerto tendrán
acceso a la red privada.
- NAT
Simétrico (Symmetric NAT). En este caso la traducción
de dirección IP privada a dirección IP pública depende de la dirección IP
de destino donde se quiere enviar el tráfico.
¿Cómo
funciona?
En la NAT
existen varios tipos de funcionamiento:
Estática
Una dirección IP privada se traduce siempre en una misma dirección IP pública. Este modo de funcionamiento permitiría a un host dentro de la red ser visible desde Internet.
Una dirección IP privada se traduce siempre en una misma dirección IP pública. Este modo de funcionamiento permitiría a un host dentro de la red ser visible desde Internet.
Dinámica
El router tiene asignadas varias direcciones IP públicas, de modo que cada dirección IP privada se mapea usando una de las direcciones IP públicas que el router tiene asignadas, de modo que a cada dirección IP privada le corresponde al menos una dirección IP pública.
El router tiene asignadas varias direcciones IP públicas, de modo que cada dirección IP privada se mapea usando una de las direcciones IP públicas que el router tiene asignadas, de modo que a cada dirección IP privada le corresponde al menos una dirección IP pública.
Cada vez que un host requiera una conexión a
Internet, el router le asignará una dirección IP pública que no esté siendo
utilizada. En esta ocasión se aumenta
la seguridad ya que dificulta que un host externo ingrese a la red ya
que las direcciones IP públicas van cambiando.
Sobrecarga
La NAT con sobrecarga o PAT (Port Address Translation) es el más común de todos los tipos, ya que es el utilizado en los hogares. Se pueden mapear múltiples direcciones IP privadas a través de una dirección IP pública, con lo que evitamos contratar más de una dirección IP pública. Además del ahorro económico, también se ahorran direcciones IPv4, ya que aunque la subred tenga muchas máquinas, todas salen a Internet a través de una misma dirección IP pública.
La NAT con sobrecarga o PAT (Port Address Translation) es el más común de todos los tipos, ya que es el utilizado en los hogares. Se pueden mapear múltiples direcciones IP privadas a través de una dirección IP pública, con lo que evitamos contratar más de una dirección IP pública. Además del ahorro económico, también se ahorran direcciones IPv4, ya que aunque la subred tenga muchas máquinas, todas salen a Internet a través de una misma dirección IP pública.
Para poder hacer esto el router hace uso de los
puertos. En los protocolos TCP y UDP se disponen de 65.536 puertos para
establecer conexiones. De modo que cuando una máquina quiere establecer una
conexión, el router guarda su IP
privada y el puerto de origen y los asocia a la IP pública y un puerto
al azar. Cuando llega información a este puerto elegido al azar, el router
comprueba la tabla y lo reenvía a la IP
privada y puerto que correspondan.
Solapamiento
Cuando una dirección IP privada de una red es una dirección IP pública en uso, el router se encarga de reemplazar dicha dirección IP por otra para evitar el conflicto de direcciones.
Cuando una dirección IP privada de una red es una dirección IP pública en uso, el router se encarga de reemplazar dicha dirección IP por otra para evitar el conflicto de direcciones.
Ventajas de la NAT
El uso
de la NAT tiene varias ventajas:
·
La primera y más obvia, el gran ahorro de
direcciones IPv4 que supone, recordemos que podemos conectar múltiples máquinas
de una red a Internet usando una única dirección IP pública.
·
Seguridad. Las máquinas conectadas a la red
mediante NAT no son visibles desde el exterior, por lo que un atacante externo
no podría averiguar si una máquina está conectada o no a la red.
·
Mantenimiento de la red. Sólo sería necesario
modificar la tabla de reenvío de un router para desviar todo el tráfico hacia
otra máquina mientras se llevan a cabo tareas de mantenimiento.
Desventajas de la NAT
Recordemos
que la NAT es solo un parche, no una solución al verdadero problema, por tanto
también tiene una serie de desventajas asociadas a su uso:
·
Checksums TCP y UDP: El router tiene que volver
a calcular el checksum de cada paquete que modifica. Por lo que se necesita
mayor potencia de computación.
·
No todas las aplicaciones y protocolos son
compatibles con NAT. Hay protocolos que introducen el puerto de origen dentro
de la zona de datos de un paquete, por lo que el router no lo modifica y la
aplicación no funciona correctamente.
No hay comentarios:
Publicar un comentario