Está en la página 1de 31

Network Address

Translation (NAT)
Ricardo León Isaza David, MSc.

ING01209
Gestión de Redes y Servicios.
Bibliografía.

• Transmisión de Datos y Redes de Comunicaciones.


Forouzan, Behrouz A. Segunda Edición. McGraw Hill.

• Redes de Computadoras. Tanembaum, Andrew S.


Cuarta Edición. Prentice Hall.

• Networks: Design and Management. Karris, Steven.


Segunda Edición. Orchard Publications
Temas a tratar.
• Introducción a la traducción de direcciones
• El concepto de NAT
• Ventajas y Desventajas de NAT
• Tipos de NAT
• NAT Estático
• NAT Dinámico
• NAT Solapado
• NAT Sobrecargado (PAT)
• Port Forwarding (SPAT)
• Ejercicios.
Introducción.
• La radical disminución de direcciones IP publicas
disponibles ha llevado a la comunidad de Internet a
pensar en alternativas para introducir nuevos hosts.
• Una gran solución corresponde al hecho de incentivar la
configuración de redes privadas
• Se basa en el concepto básico de internet: “…toda
computadora conectada a internet debe poseer un
identificador o dirección IP única…”.
• Eso no era problema antes
• Se idealizó que las 232 direcciones existentes (4,294,967,296)
serían más que suficientes para satisfacer todas las necesidades
• Pero, la popularización de los servicios de conexión de banda
ancha, hacen que el número de direcciones disponibles sea
insuficiente para satisfacer la demanda.
• Además hay que restar los intervalos privados y los de direcciones
tipo D y E.
El Concepto de NAT.
• NAT permite a un dispositivo de interconexión realizar
una mediación entre una red privada local (PLAN) y una
red pública (Inet), de manera que la primera pueda
acceder a los recursos de la segunda.
• Surgió como una solución temporal, adoptada por los
diferentes fabricantes con el fin de apoyar a la conservación
de direcciones, además de brindar facilidades ligadas a la
seguridad.
• Su propósito es traducir la dirección IP privada (de
origen) en una dirección IP pública, enrutable desde
internet.
Ventajas de NAT.
• Permite mitigar los efectos provocados por la
disminución de direcciones IP públicas disponibles.
• Brinda facilidades para compartir pocas o una dirección IP
pública a toda una red privada
• Las redes privadas pueden emplear espacios de
direccionamiento privado (descritos en el RFC1918)
dando libertad a constituir una estructura específica, y
aún así tener la posibilidad de acceder a los recursos
disponibles en Internet.
• Permite el ocultamiento de la estructura interna de la red a
los agentes externos, aportando a la seguridad de la red.
Desventajas de NAT.
• Cuando equipos al interior de la LAN salen a internet, la
única dirección visible es aquella pública enrutable, por
lo que puede limitar el número de conexiones a
diferentes sitios que tengan este tipo de restricción.
• Se dificulta el funcionamiento de aplicaciones que
requieran de conexiones punto a punto
• La trazabilidad punto a punto es compleja, por no decir
imposible
• La aplicación de protocolos de tunneling (p.ej., IPsec) se
dificulta, ya que NAT altera los encabezados de los
paquetes, alterando de paso las verificaciones de
integridad.
Tipos de NAT.
• NAT Estático
• Consiste en la traducción de direcciones privadas en una base uno a
uno, creando una traducción que opera en ambos sentidos.
• NAT Dinámico
• Consiste en la traducción de direcciones privadas a una en un pool de
posibles direcciones públicas. Es una traducción temporal que solo
opera de salida.
• NAT Solapado
• Consiste en la traducción de direcciones privadas a través de otras
públicas. Es el mismo principio del NAT Dinámico, solo que se emplea
para ocultar la topología interna de la red.
• NAT Sobrecargado (PAT)
• Consiste en la traducción de direcciones privadas a través de una
dirección pública, empleando puertos de servicio para atender cada
una de las solicitudes de conexión.
• Port Forwarding (SPAT)
• Consiste en realizar una traducción inversa de solicitudes, se emplea en
los NAT Dinámico, Solapado y Sobrecargado para dar acceso a recursos
internos.
NAT Estático.
• Consiste en el mapeo de una dirección IP privada
con una dirección IP pública, de forma estática.
• Así, cada equipo de la red privada que desee
comunicarse con el exterior, deberá tener su respectiva
IP pública, en una relación 1:1 permanente.
• Es particularmente útil cuando un dispositivo
requiere de ser accedido desde fuera de la red.
• Se emplea comúnmente en servidores, gateway o hosts
que requieran de accesibilidad plena.
• Es especialmente complejo dada la necesidad de
direcciones IP por cantidad.
Estructura…

PC1:192.168.0.2/26 Network:192.168.0.0/26 PC1:201.16.32.65/29


Gateway:192.168.0.1/26
Public: 201.16.32.64/29

PC2:192.168.0.3/26 PC2:201.16.32.66/29

PC3:192.168.0.4/26 PC3:201.16.32.67/29

PC4:192.168.0.5/26 PC4:201.16.32.68/29
Entonces…
• La estructura general del NAT estático sería:
Router(config)# ip nat inside source static <ip_interna> <ip_externa>

• Y su aplicación en las interfaces expuestas sería la siguiente:


• Aquellas interfaces conectadas con el interior (generalmente
FastEthernet, con direccionamiento privado) se configuran como
INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside

• Mientras aquellas interfaces expuestas a internet (generalmente


Seriales o Fibra, con direccionamiento público) se configuran como
OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Finalmente…
• Para el caso de nuestro enrutador ejemplo, la
configuración del NAT estático (StNAT) sería:
Router(config)# ip nat inside source static 192.168.0.2 201.16.32.65
Router(config)# ip nat inside source static 192.168.0.3 201.16.32.66
Router(config)# ip nat inside source static 192.168.0.4 201.16.32.67
Router(config)# ip nat inside source static 192.168.0.5 201.16.32.68

• Y su aplicación en los puertos internos y externos


sería: Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Router(config-if)# exit
NAT Dinámico.
• Consiste en el mapeo de un conjunto de direcciones IP
privadas a un pool de direcciones IP públicas, de forma
temporal
• Así, cada equipo de la red privada que desee comunicarse con
el exterior, obtendrá su respectiva IP pública del pool, en una
relación 1:1 temporal.
• La asignación de direccionamiento no es permanente, y
solo se realiza al momento en que un host interno
solicita salir de la red.
• La asignación de la dirección tiene entonces la vigencia de la
conexión, cuando esta termine, la asignación cesa y la ip
pública regresa al pool, pudiendo ser asignada a otro host
• Esto hace que las direcciones no sean accesibles desde el
exterior, ya que no hay un host permanente con dicha
asignación, ni siquiera el enrutador.
Estructura… PC1:201.16.32.65/29

PC1:192.168.0.2/26 Network:192.168.0.0/26
Gateway:192.168.0.1/26 PC1:201.16.32.69/29
Public: 201.16.32.64/29
PC2:201.16.32.70/29

PC2:192.168.0.3/26

PC3:201.16.32.67/29

PC2:201.16.32.66/29
PC3:192.168.0.4/26

PC3:201.16.32.65/29
PC4:192.168.0.5/26
PC4:201.16.32.71/29
Entonces…
• Para configurar NAT dinámico, es necesario establecer cuales equipos de la red
LAN podrán acceder al pool, para ello se define una lista de acceso (ACL) que
especifique dicho conjunto:
Router(config)# access-list 15 permit <id_red_privada> <wildcard_red_privada>

• Una vez especificado el conjunto interno de direcciones, se establece el pool de


direcciones públicas disponibles:
Router(config)# ip nat pool <nombre_pool> <ip_inicial> <ip_final> netmask <mask_red>
• Ahora, tomando tanto la parte interna como la externa, la estructura general del
NAT dinámico sería:
Router(config)# ip nat inside source list 15 pool <nombre_pool> overload
• Y su aplicación en las interfaces expuestas sería la siguiente:
• Aquellas interfaces conectadas con el interior (generalmente FastEthernet, con
direccionamiento privado) se configuran como INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside
• Mientras aquellas interfaces expuestas a internet (generalmente Seriales o Fibra, con
direccionamiento público) se configuran como OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Finalmente…
• En el caso de nuestro enrutador ejemplo, la configuración de NAT
dinámico (DnNAT) sería:
• Se especifica el conjunto interno de direcciones, se establece el pool de
direcciones públicas disponibles:
Router(config)# access-list 20 permit 192.168.0.0 0.0.0.63
Router(config)# ip nat pool PoolDinamico 201.16.32.65 201.16.32.78 netmask 255.255.255.248

• Tomando la parte interna y la externa, se configura el NAT dinámico:


Router(config)# ip nat inside source list 20 pool PoolDinamico overload
• Y su aplicación en las interfaces conectadas con el interior
(generalmente FastEthernet, con direccionamiento privado) se
configuran como INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside

• Así, aquellas interfaces expuestas a internet (generalmente Seriales o


Fibra, con direccionamiento público) se configuran como OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
NAT Sobrecargado (PAT).
• Consiste en la traducción de múltiples direcciones IP privadas a través
de una única dirección IP pública.
• La dirección pública disponible corresponde a la dirección que el enrutador
tiene visible a través de su interfaz de salida (p.ej., puerto serial WAN)
• Con el fin de brindar una única conexión a cada IP privada, se suma a la
dirección pública (fuente de la conexión) el puerto origen.
• Así, cada equipo de la red privada que desee comunicarse con el exterior,
emplea la misma IP pública los demás en la red, pero garantizando a través del
socket una relación 1:1 temporal.
• La asignación de direccionamiento no es permanente, y solo se realiza al
momento en que un host interno solicita salir de la red.
• La asignación de la dirección y el puerto tienen entonces la vigencia de la
conexión, cuando esta termine, la asignación cesa y ambos se liberan, pudiendo
ser asignados a otro host
• Esto hace que la dirección sea alcanzable desde el exterior, pero no sean
accesibles los equipos al interior de la red, ya que el host dueño de la dirección
es el puerto serial de un enrutador.
Estructura… PC1:201.16.32.65:10/30

PC1:192.168.0.2/26 Network:192.168.0.0/26
Gateway:192.168.0.1/26 PC1:201.16.32.65:11/30
Public: 201.16.32.64/30
PC2:201.16.32.65:15/30

PC2:192.168.0.3/26

PC3:201.16.32.65:21/30

PC2:201.16.32.65:99/30
PC3:192.168.0.4/26

PC3:201.16.32.65:14/30
PC4:192.168.0.5/26
PC4:201.16.32.65:56/30
Entonces…
• Para configurar NAT sobrecargado, es necesario establecer cuales
equipos de la red LAN podrán acceder al pool, para ello se define una
lista de acceso (ACL) que especifique dicho conjunto:
Router(config)# access-list 33 permit <id_red_privada> <wildcard_red_privada>
• Una vez especificado el conjunto interno de direcciones, recordemos
que la única dirección IP disponible será la del puerto expuesto a la red
WAN. Ahora, tomando tanto la parte interna como la externa, la
estructura general del NAT dinámico sería:
Router(config)# ip nat inside source list 33 interface <nombre_interfaz> overload
• Y su aplicación en las interfaces expuestas sería la siguiente:
• Aquellas interfaces conectadas con el interior (generalmente FastEthernet, con
direccionamiento privado) se configuran como INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside

• Mientras aquellas interfaces expuestas a internet (generalmente Seriales o


Fibra, con direccionamiento público) se configuran como OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Finalmente…
• En el caso de nuestro enrutador ejemplo, la configuración de NAT
dinámico (DnNAT) sería:
• Se especifica el conjunto interno de direcciones, se establece el pool de
direcciones públicas disponibles:
Router(config)# access-list 33 permit 192.168.0.0 0.0.0.63
• Tomando la parte interna y la externa, se configura el NAT
sobrtecargado:
Router(config)# ip nat inside source list 33 interface serial 0/0 overload
• Y su aplicación en las interfaces conectadas con el interior
(generalmente FastEthernet, con direccionamiento privado) se
configuran como INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside

• Así, aquellas interfaces expuestas a internet (generalmente Seriales o


Fibra, con direccionamiento público) se configuran como OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Port Forwarding (SPAT).
• Consiste en la posibilidad de configurar un redireccionamiento de las solicitudes provenientes
del exterior hacia un host específico en el interior.
• Permite que aquél tráfico que busca acceder a un servicio o dirección que no se encuentra asignado de
manera permanente, pueda alcanzarse mediante el reenvío de sus solicitudes.
• Esto requiere establecer una asignación “estática” del puerto de servicio y de la dirección IP que
atendería la solicitud entrante, aunque dicha dirección pueda ser dinámica o sobrecargada ante
solicitudes salientes.

• Consiste en la traducción inversa de múltiples solicitudes de consumo de servicio a una dirección


IP pública de un servicio ubicado tras una red privada.
• La dirección pública disponible corresponde o a la dirección que el enrutador tiene visible a través de su
interfaz de salida (p.ej., puerto serial WAN) o a una dirección perteneciente a un pool gestionado por el
enrutador.

• La asignación de direccionamiento es permanente para el ingreso, y solo se aplica al servicio


configurado.
• La asignación de la dirección y el puerto tienen entonces la vigencia permanente cuando esta es
accedida desde el exterior.
• Esto hace que la dirección sea alcanzable desde el exterior, únicamente para el servicio configurado,
pero dicha dirección sería empleada por cualquier equipo cuando se reciba una solicitud de salida.
Estructura… SVHTTP:201.16.32.65:80/29

PC1:192.168.0.2/26 Network:192.168.0.0/26
Gateway:192.168.0.1/26 PC1:201.16.32.65:80/29
Public: 201.16.32.64/29
PC2:201.16.32.66/29

PC2:192.168.0.3/26

PC3:201.16.32.65/29

PC2:201.16.32.69/29
PC3:192.168.0.4/26

PC3:201.16.32.75/29
PC4:192.168.0.5/26
PC4:201.16.32.72/29
Entonces…
• Para configurar Port Forwarding en un NAT dinámico, es necesario establecer cual sería la
dirección IP del pool encargada de recibir las notificaciones de consumo del servicio publicado,
tomando como estructura:
Router(config)# access-list 15 permit <id_red_privada> <wildcard_red_privada>
• Una vez especificado el conjunto interno de direcciones, se establece el pool de direcciones
públicas disponibles:
Router(config)# ip nat pool <nombre_pool> <ip_inicial> <ip_final> netmask <mask_red>
• Ahora, tomando tanto la parte interna como la externa, la estructura general del NAT dinámico
sería:
Router(config)# ip nat inside source list 15 pool <nombre_pool> overload
Router(config)# ip nat inside source static TCP <ip_privada><puerto> <ip_publica><puerto>
• Y su aplicación en las interfaces expuestas sería la siguiente:
• Aquellas interfaces conectadas con el interior (generalmente FastEthernet, con direccionamiento
privado) se configuran como INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside
• Mientras aquellas interfaces expuestas a internet (generalmente Seriales o Fibra, con direccionamiento
público) se configuran como OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Finalmente…
• En el caso de nuestro enrutador ejemplo, la configuración de SPAT con
un NAT dinámico (DnNAT) sería:
• Se especifica el conjunto interno de direcciones, se establece el pool de
direcciones públicas disponibles:
Router(config)# access-list 20 permit 192.168.0.0 0.0.0.63
Router(config)# ip nat pool PoolDinamico 201.16.32.65 201.16.32.78 netmask 255.255.255.248
• Tomando la parte interna y la externa, se configura el NAT dinámico y SPAT:
Router(config)# ip nat inside source list 20 pool PoolDinamico overload
Router(config)# ip nat inside source static TCP 192.168.0.2 80 201.16.32.65 80

• Y su aplicación en las interfaces conectadas con el interior (generalmente


FastEthernet, con direccionamiento privado) se configuran como INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside
• Así, aquellas interfaces expuestas a internet (generalmente Seriales o Fibra, con
direccionamiento público) se configuran como OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Estructura… SVHTTP:201.16.32.65:80/29

PC1:192.168.0.2/26 Network:192.168.0.0/26
Gateway:192.168.0.1/26 PC1:201.16.32.65:80/29
Public: 201.16.32.64/29
PC2:201.16.32.65:15/30

PC2:192.168.0.3/26

PC3:201.16.32.65:21/30

PC2:201.16.32.65:99/30
PC3:192.168.0.4/26

PC3:201.16.32.65:14/30
PC4:192.168.0.5/26
PC4:201.16.32.65:56/30
Entonces…
• Para configurar Port Forwarding en un NAT sobrecargado, es necesario
establecer cuales equipos de la red LAN podrán acceder al pool, para ello se
define una lista de acceso (ACL) que especifique dicho conjunto:
Router(config)# access-list 33 permit <id_red_privada> <wildcard_red_privada>
• Una vez especificado el conjunto interno de direcciones, recordemos que la
única dirección IP disponible será la del puerto expuesto a la red WAN. Ahora,
tomando tanto la parte interna como la externa, la estructura general del NAT
dinámico sería:
Router(config)# ip nat inside source list 33 interface <nombre_interfaz> overload
Router(config)# ip nat inside source static TCP <ip_privada><puerto> <ip_publica><puerto>

• Y su aplicación en las interfaces expuestas sería la siguiente:


• Aquellas interfaces conectadas con el interior (generalmente FastEthernet, con
direccionamiento privado) se configuran como INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside
• Mientras aquellas interfaces expuestas a internet (generalmente Seriales o Fibra, con
direccionamiento público) se configuran como OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Finalmente…
• En el caso de nuestro enrutador ejemplo, la configuración de NAT
dinámico (DnNAT) sería:
• Se especifica el conjunto interno de direcciones, se establece el pool de
direcciones públicas disponibles:
Router(config)# access-list 33 permit 192.168.0.0 0.0.0.63
• Tomando la parte interna y la externa, se configura el NAT dinámico:
Router(config)# ip nat inside source list 33 interface serial 0/0 overload
Router(config)# ip nat inside source static TCP 192.168.0.2 80 201.16.32.65 80

• Y su aplicación en las interfaces conectadas con el interior


(generalmente FastEthernet, con direccionamiento privado) se
configuran como INSIDE
Router(config)# interface fastEthernet 0/0
Router(config-if)# ip nat inside

• Así, aquellas interfaces expuestas a internet (generalmente Seriales o


Fibra, con direccionamiento público) se configuran como OUTSIDE
Router(config)# interface serial 0/0
Router(config-if)# ip nat outside
Enrutamiento en NAT.
• Es necesario considerar el hecho que para NAT
ninguna red privada debe hacer parte del
enrutamiento.
• En el caso de NAT estático, se enruta desde el exterior
hacia el id de red que abarca las direcciones publicadas
de manera estática.
• En el caso de NAT dinámico, se enruta desde el exterior
hacia el id de red que abarca el Pool de direcciones
públicas
• En el caso de NAT Sobrecargado, se enruta desde el
exterior hacia el id de red correspondiente al enlace que
contiene la dirección IP del puerto serial publicado.
Ejercicio…
• Supóngase la existencia de las redes A y B, cuyas
condiciones básicas se evidencian en la imagen.
• Configurar NAT estático, considerando la asignación de
direcciones tomadas del PoolA
• Configurar NAT Dinámico, tomando PoolA como conjunto
público
• Configurar Port Forwarding, considerando que el servicio
publicado sería HTTP
• Configurar NAT Sobrecargado, tomando la dirección IP del
SE0/0 como dirección IP expuesta
• Configurar Port Forwarding, considerando que el servicio
publicado sería HTTP
• El enrutamiento del modelo es estático
¿Preguntas?
Muchas gracias por su atención.

También podría gustarte