IP : Traducción de direcciones de red (NAT)

Utilización de NAT en Redes Superpuestas

17 Octubre 2016 - Traducción Automática
Otras Versiones: PDFpdf | Inglés (22 Agosto 2015) | Comentarios


Contenido


Introducción

Este documento explica cómo utilizar la Traducción de direcciones de red (NAT) para redes que se superponen. Las redes superpuestas se producen cuando asigna una dirección IP a un dispositivo de su red que ya posee legalmente y la asigna a un dispositivo diferente en Internet o la red externa. También se superponen redes cuando dos compañías, que utilizan direcciones IP RFC 1918 en sus redes, se fusionan.leavingcisco.com Estas dos redes necesitan comunicarse, preferentemente sin tener que redirigir todos los dispositivos.

prerrequisitos

Requisitos

Una comprensión básica del IP Addressing, del Routing IP, y del Domain Name System (DNS) es útil para entender el contenido de este documento.

Componentes Utilizados

El soporte para el NAT comenzó en la versión de software 11.2 del½ del¿Â del Cisco IOSïÂ. Para más información sobre el Soporte de la plataforma vea las Preguntas frecuentes sobre NAT.

Convenciones

Para obtener más información sobre las convenciones del documento, consulte Convenciones de Consejos Técnicos de Cisco.

Configurar

En esta sección encontrará la información para configurar las funciones descritas en este documento.

Nota: Para obtener información adicional sobre los comandos que se utilizan en este documento, use la Command Lookup Tool (solo para clientes registrados).

Diagrama de la red

Este documento utiliza la instalación de red que se muestra en el siguiente diagrama.

Observe que el dispositivo interno tiene la misma dirección IP que el dispositivo externo con el que desea comunicarse.

3a.gif

Configuraciones

Configuran al router A para el NAT, tales que traduce el dispositivo interno a un direccionamiento del pool “test-loop” y el dispositivo externo a un direccionamiento del pool “prueba-dns.” Una explicación de cómo esta configuración ayuda con solapar sigue la Tabla de configuración abajo.

router A
!
version 11.2
no service udp-small-servers
no service tcp-small-servers
!
hostname Router-A
!
!
ip domain-name cisco.com
ip name-server 171.69.2.132
!
interface Loopback0
 ip address 1.1.1.1 255.0.0.0
!
interface Ethernet0
 ip address 135.135.1.2 255.255.255.0
 shutdown
!
interface Serial0
 ip address 171.68.200.49 255.255.255.0
 ip nat inside
 no ip mroute-cache
 no ip route-cache
 no fair-queue
!
interface Serial1
 ip address 172.16.47.146 255.255.255.240
 ip nat outside
 no ip mroute-cache
 no ip route-cache
!
ip nat pool test-loop 172.16.47.161 172.16.47.165 prefix-length 28
ip nat pool test-dns 172.16.47.177 172.16.47.180 prefix-length 28
ip nat inside source list 7 pool test-loop
ip nat outside source list 7 pool test-dns
ip classless
ip route 0.0.0.0 0.0.0.0 172.16.47.145
access-list 7 permit 171.68.200.0 0.0.0.255
!
!
line con 0
 exec-timeout 0 0
line aux 0
line vty 0 4
 login
!
end

Para que la configuración antedicha ayude con solapar cuando el dispositivo interno comunica con el dispositivo externo, debe utilizar el Domain Name del dispositivo externo.

El dispositivo interno no puede utilizar la dirección IP del dispositivo externo porque es lo mismo que el direccionamiento asignado a sí mismo (el dispositivo interno). Por lo tanto, el dispositivo interno enviará una interrogación DNS para el Domain Name del dispositivo externo. La dirección IP del dispositivo interno será la fuente de esta interrogación, y ese direccionamiento será traducido a un direccionamiento del pool del “test-loop” porque configuran al comando ip nat inside source list.

El servidor DNS contesta al direccionamiento que vino del pool “test-loop” con la dirección IP asociada al Domain Name del dispositivo externo en el payload del paquete. Traducen a la dirección destino del paquete de respuesta de nuevo al direccionamiento de dispositivo interno, y el direccionamiento en el payload del paquete de respuesta entonces se traduce a un direccionamiento del pool “prueba-dns” debido al comando ip nat outside source list. Por lo tanto el dispositivo interno aprende que la dirección IP para el dispositivo externo es uno de los direccionamientos del pool “prueba-dns”, y utilizará este direccionamiento al comunicar con el dispositivo externo. El router que ejecuta el NAT toma el cuidado de las traducciones en este momento.

Este proceso se puede considerar detalladamente en la sección del Troubleshooting. Los dispositivos usando las direcciones superpuestas pueden comunicar con uno a sin el uso del DNS, pero en este caso, el NAT estático tendría que ser configurado. Un ejemplo de cómo esto pudo ser hecha sigue.

router A
!
version 11.2
no service udp-small-servers
no service tcp-small-servers
!
hostname Router-A
!
!

ip domain-name cisco.com
ip name-server 171.69.2.132
!
interface Loopback0
 ip address 1.1.1.1 255.0.0.0
!
interface Ethernet0
 ip address 135.135.1.2 255.255.255.0
 shutdown
!
interface Serial0
 ip address 171.68.200.49 255.255.255.0
 ip nat inside
 no ip mroute-cache
 no ip route-cache
 no fair-queue
!
interface Serial1
 ip address 172.16.47.146 255.255.255.240
 ip nat outside
 no ip mroute-cache
 no ip route-cache
!
ip nat pool test-loop 172.16.47.161 172.16.47.165 prefix-length 28
ip nat inside source list 7 pool test-loop
ip nat outside source static 171.68.200.48 172.16.47.177
ip classless
ip route 0.0.0.0 0.0.0.0 172.16.47.145
ip route 172.16.47.160 255.255.255.240 Serial0

!--- This line is necessary to make NAT work for return traffic.
!--- The router needs to have a route for the pool to the inside 
!--- NAT interface so it knows that a translation is needed.

access-list 7 permit 171.68.200.0 0.0.0.255
!
!
line con 0
 exec-timeout 0 0
line aux 0
line vty 0 4
 login
!
end

Con la configuración antedicha, cuando el dispositivo interno quiere comunicar con el dispositivo externo puede ahora utilizar la dirección IP 172.16.47.177, y el DNS en no necesario. Como se muestra arriba, la traducción del direccionamiento de dispositivo interno todavía se hace dinámicamente, así que significa que el router debe conseguir los paquetes del dispositivo interno antes de que se cree una traducción. Por este motivo, el dispositivo interno debe iniciar todas las conexiones para que el dispositivo interno y el dispositivo externo comuniquen. Si fue requerido que las conexiones del iniciado del dispositivo externo al dispositivo interno, después el direccionamiento para el dispositivo interno debe también ser configurado estáticamente.

Verificación

Actualmente, no hay un procedimiento de verificación disponible para esta configuración.

Troubleshooting

En esta sección encontrará información que puede utilizar para solucionar problemas de configuración.

El proceso por el cual el dispositivo interno utilizó el DNS para comunicar con el dispositivo externo, como se describe anteriormente, se puede ver detalladamente con el proceso de Troubleshooting siguiente.

En este momento no existen traducciones en la tabla de traducción que puedan verse con el comando show ip nat translations. Los ejemplos abajo utilizan los comandos debug ip packet y debug ip nat en lugar de otro.

Nota: Los comandos debug generan una cantidad significativa de resultados. Utilícelo sólo cuando el tráfico en la red del IP es lento, de manera que otra actividad del sistema no se vea afectada negativamente.

Router-A# show ip nat translations
Router-A# show debug
Generic IP:
  IP packet debugging is on (detailed)
  IP NAT debugging is on

Cuando el dispositivo interno envía su consulta DNS al servidor DNS, que se encuentra fuera del dominio NAT, la dirección de origen de la consulta DNS (la dirección del dispositivo interno) se traduce debido a los comando ip nat inside. Esto puede verse en la siguiente salida de depuración.

NAT: s=171.68.200.48->172.16.47.161, d=171.69.2.132 [0]
IP: s=172.16.47.161 (Serial0), d=171.69.2.132 (Serial1), g=172.16.47.145, len 66, forward
    UDP src=6988, dst=53

Cuando el servidor DNS envía una respuesta DNS, la carga útil de la respuesta DNS se traduce debido a los comandos ip nat outside.

Nota: El NAT no mira el payload de la contestación DNS a menos que la traducción ocurra en el encabezado IP del paquete de respuesta. Vea el comando ip nat outside source list 7 en la configuración del router descrita anteriormente.

El primer mensaje NAT en la salida de depuración siguiente, muestra que el router reconoce la respuesta DNS y traduce la dirección de IP dentro de la carga útil a 172.16.47.177. El segundo mensaje de NAT muestra al router traduciendo el destino de la respuesta de DNS para poder reenviar una respuesta al dispositivo interno que realizó la consulta de DNS inicial. La porción de destino de la encabezado, la dirección global interna, se traduce a la dirección local interna.

Se traduce la carga útil de la respuesta DNS:

NAT: DNS resource record 171.68.200.48 -> 172.16.47.177

La porción de destino del encabezado de IP del paquete de respuesta DNS se traduce:

NAT: s=171.69.2.132, d=172.16.47.161->171.68.200.48 [65371]
IP: s=171.69.2.132 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 315, forward
    UDP src=53, dst=6988

Miremos otra interrogación y la contestación DNS:

NAT: s=171.68.200.48->172.16.47.161, d=171.69.2.132 [0]
IP: s=172.16.47.161 (Serial0), d=171.69.2.132 (Serial1), g=172.16.47.145, len 66, forward
    UDP src=7419, dst=53
NAT: DNS resource record 171.68.200.48 -> 172.16.47.177
NAT: s=171.69.2.132, d=172.16.47.161->171.68.200.48 [65388]
IP: s=171.69.2.132 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 315, forward
    UDP src=53, dst=7419

Ahora que se convirtió la carga útil del DNS, nuestra tabla de conversión tiene una entrada para las direcciones externas locales y globales del dispositivo externo. Con estas entradas en la tabla, ahora podemos traducir completamente el encabezado de los paquetes ICMP intercambiados entre los dispositivos interior y exterior. Veamos este intercambio en el resultado de depuración siguiente.

El siguiente resultado muestra la dirección de origen (dirección interna del dispositivo) que se está traduciendo.

NAT: s=171.68.200.48->172.16.47.161, d=172.16.47.177 [406]

Aquí, traducen a la dirección destino (la dirección local externa del dispositivo externo).

NAT: s=172.16.47.161, d=172.16.47.177->171.68.200.48 [406]

Después de la traducción, el paquete del IP parece esto:

IP: s=172.16.47.161 (Serial0), d=171.68.200.48 (Serial1), g=172.16.47.145, len 100, forward
    ICMP type=8, code=0

El siguiente resultado muestra cómo la dirección de origen (dirección del dispositivo externo) se traduce en el paquete de retorno.

NAT*: s=171.68.200.48->172.16.47.177, d=172.16.47.161 [16259]

Ahora se traduce la dirección de destino (dentro de la dirección global del dispositivo) del paquete de retorno.

NAT*: s=172.16.47.177, d=172.16.47.161->171.68.200.48 [16259]

Después de la traducción, el paquete de devolución parece esto:

IP: s=172.16.47.177 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward
    ICMP type=0, code=0

El intercambio de paquetes continúa entre el dispositivo interno y el externo.

NAT: s=171.68.200.48->172.16.47.161, d=172.16.47.177 [407]
NAT: s=172.16.47.161, d=172.16.47.177->171.68.200.48 [407]
IP: s=172.16.47.161 (Serial0), d=171.68.200.48 (Serial1), g=172.16.47.145, len 100, forward
    ICMP type=8, code=0
NAT*: s=171.68.200.48->172.16.47.177, d=172.16.47.161 [16262]
NAT*: s=172.16.47.177, d=172.16.47.161->171.68.200.48 [16262]
IP: s=172.16.47.177 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward
    ICMP type=0, code=0
NAT: s=171.68.200.48->172.16.47.161, d=172.16.47.177 [408]
NAT: s=172.16.47.161, d=172.16.47.177->171.68.200.48 [408]
IP: s=172.16.47.161 (Serial0), d=171.68.200.48 (Serial1), g=172.16.47.145, len 100, forward
    ICMP type=8, code=0
NAT*: s=171.68.200.48->172.16.47.177, d=172.16.47.161 [16267]
NAT*: s=172.16.47.177, d=172.16.47.161->171.68.200.48 [16267]
IP: s=172.16.47.177 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward
    ICMP type=0, code=0
NAT: s=171.68.200.48->172.16.47.161, d=172.16.47.177 [409]
NAT: s=172.16.47.161, d=172.16.47.177->171.68.200.48 [409]
IP: s=172.16.47.161 (Serial0), d=171.68.200.48 (Serial1), g=172.16.47.145, len 100, forward
    ICMP type=8, code=0
NAT*: s=171.68.200.48->172.16.47.177, d=172.16.47.161 [16273]
NAT*: s=172.16.47.177, d=172.16.47.161->171.68.200.48 [16273]
IP: s=172.16.47.177 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward
    ICMP type=0, code=0
NAT: s=171.68.200.48->172.16.47.161, d=172.16.47.177 [410]
NAT: s=172.16.47.161, d=172.16.47.177->171.68.200.48 [410]
IP: s=172.16.47.161 (Serial0), d=171.68.200.48 (Serial1), g=172.16.47.145, len 100, forward
    ICMP type=8, code=0
NAT*: s=171.68.200.48->172.16.47.177, d=172.16.47.161 [16277]
NAT*: s=172.16.47.177, d=172.16.47.161->171.68.200.48 [16277]
IP: s=172.16.47.177 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward
    ICMP type=0, code=0

Una vez que se completa el intercambio de paquetes entre el dispositivo externo y el interno, podemos ver que la tabla de traducción tiene tres entradas. La primera entrada se creó cuando el dispositivo interno envió una consulta DNS. La segunda entrada se creó cuando la carga útil de la respuesta del DNS se tradujo. La tercera entrada fue creada cuando el ping fue intercambiado entre el dispositivo interno y el dispositivo externo. La tercera entrada es un resumen de las dos primeras entradas y se utiliza para traducciones más efectivas.

Router-A# show ip nat translations
Pro Inside global      Inside local       Outside local      Outside global
--- 172.16.47.161      171.68.200.48      ---                ---
--- ---                ---                172.16.47.177      171.68.200.48
--- 172.16.47.161      171.68.200.48      172.16.47.177      171.68.200.48

Es importante observar cuando usted está intentando establecer la Conectividad entre dos redes superpuestas ejecutando el NAT dinámico en un solo router Cisco, usted debe utilizar el DNS para crear un exterior local a la traducción del Outside Global. Si usted no utiliza el DNS, la Conectividad se puede establecer con el NAT estático, pero es más difícil manejar.


Información Relacionada


Document ID: 13774