0% del curso completado
NAT y PAT en IOS XE (4.3)
📋 En esta lección
El concepto de NAT lo tienes desde el Módulo 4; aquí lo configuras en IOS XE en sus tres formas — estático (1:1 para servidores), dinámico (pool) y PAT (el overload que usa todo el mundo) — y aprendes el vocabulario inside/outside local/global que decide las preguntas de examen, más la verificación con
show ip nat translations.
Recordatorio de 60 segundos
Las direcciones privadas (RFC 1918) no viajan por Internet: el router de frontera traduce — reescribe IPs (y puertos) en los paquetes que cruzan, y mantiene una tabla de traducciones para deshacer el cambio a la vuelta (lección 4.2). Lo nuevo hoy: cómo se le dice a IOS qué traducir, hacia qué, y en qué dirección.
El vocabulario que decide el examen: inside/outside, local/global
NAT define cuatro términos cruzando dos ejes — dónde está el host (inside = tu red / outside = la de fuera) y desde dónde se mira la dirección (local = como se ve dentro / global = como se ve fuera):
| Término | Significado | En el ejemplo |
|---|---|---|
| Inside local | Tu host, visto desde dentro | 10.1.10.44 (la real del PC) |
| Inside global | Tu host, visto desde fuera | 203.0.113.5 (la pública tras NAT) |
| Outside global | El host externo, visto desde fuera | 198.51.100.9 (el servidor web real) |
| Outside local | El externo visto desde dentro (casi siempre igual al global) | 198.51.100.9 |
La pareja que concentra el 90% de las preguntas: inside local (privada real) ↔ inside global (pública traducida). Truco de lectura: inside/outside = de quién hablamos; local/global = con qué gafas lo miramos.
Paso 0 común: marcar las interfaces
Toda variante de NAT en IOS empieza igual — decirle al router cuál es cada lado:
R1(config)# interface GigabitEthernet0/0
R1(config-if)# ip nat inside ← hacia la LAN
R1(config)# interface GigabitEthernet0/1
R1(config-if)# ip nat outside ← hacia el ISP
Sin las marcas, ninguna regla traduce nada — el olvido nº 1 en labs de NAT.
Variante 1: NAT estático (1:1)
Una privada ↔ una pública, permanente y en ambos sentidos: el uso es publicar un servidor interno.
R1(config)# ip nat inside source static 10.1.30.10 203.0.113.10
Desde fuera, 203.0.113.10 es tu servidor: las conexiones entrantes se traducen hacia 10.1.30.10. Coste: una IP pública dedicada por servidor. Variante quirúrgica — port forwarding — cuando solo tienes una pública:
R1(config)# ip nat inside source static tcp 10.1.30.10 443 203.0.113.5 443
Solo el puerto 443 de la pública se entrega al servidor; el resto de la IP sigue disponible para PAT.
Variante 2: NAT dinámico (pool)
Un pool de públicas repartidas por orden de llegada a quien la ACL autorice:
R1(config)# ip nat pool PUBLICAS 203.0.113.20 203.0.113.30 netmask 255.255.255.0
R1(config)# access-list 1 permit 10.1.0.0 0.0.255.255
R1(config)# ip nat inside source list 1 pool PUBLICAS
La ACL define quién puede traducirse (su primer gran papel — las ACLs a fondo, lecciones 10.4-10.5); el pool, con qué. Limitación estructural: una pública por host simultáneo — el host nº 12 con un pool de 11 espera a que caduque una traducción. Por eso el dinámico puro casi no se despliega: es material de examen y de nichos.
Variante 3: PAT / overload — el NAT del mundo real
PAT multiplexa por puertos (lección 4.2): miles de hosts, una pública. La palabra mágica es overload:
! Sobre la IP de la interfaz de salida (el caso doméstico/pyme):
R1(config)# access-list 1 permit 10.1.0.0 0.0.255.255
R1(config)# ip nat inside source list 1 interface GigabitEthernet0/1 overload
! O sobre un pool (empresas con varias públicas):
R1(config)# ip nat inside source list 1 pool PUBLICAS overload
La tabla de traducciones pasa a incluir puertos: 10.1.10.44:51234 ↔ 203.0.113.5:51234 (o el puerto libre que toque). Cada conexión TCP/UDP es una entrada; el tráfico de vuelta se entrega por el puerto.
📝 📝 Los tres, en una frase cada uno
Estático: un servidor publicado — 1:1 fijo, bidireccional. Dinámico: pool repartido por orden — 1:1 temporal, tantos simultáneos como públicas. PAT: todos detrás de una (o pocas) — N:1 por puertos, el default del planeta.
Verificación y diagnóstico
R1# show ip nat translations
Pro Inside global Inside local Outside local Outside global
tcp 203.0.113.5:51234 10.1.10.44:51234 198.51.100.9:443 198.51.100.9:443
icmp 203.0.113.5:1 10.1.10.44:1 8.8.8.8:1 8.8.8.8:1
--- 203.0.113.10 10.1.30.10 --- ---
R1# show ip nat statistics
Total active translations: 3 (1 static, 2 dynamic; 2 extended)
Outside interfaces: GigabitEthernet0/1
Inside interfaces: GigabitEthernet0/0
Hits: 4812 Misses: 12
Lectura profesional: las columnas de translations son exactamente el vocabulario de la tabla anterior (¡practícalo aquí!); la entrada sin puertos y sin outside es el estático permanente. En statistics, verifica que ambas interfaces aparecen en su lista — si falta una, encontraste el olvido del paso 0.
El flujo cuando "no hay Internet" con NAT de por medio:
- ¿Traducciones creándose? (
show ip nat translationsmientras el PC navega — si no aparecen: interfaces sin marcar, ACL que no incluye al host, o el tráfico no llega al router). - ¿La ACL permite la subred del cliente? (el clásico al añadir una VLAN nueva: navega todo el mundo menos ellos).
- ¿El retorno sabe volver? — el ISP debe enrutar tus públicas hacia ti (con una sola IP de interfaz es automático; con pools, el ISP necesita la ruta).
clear ip nat translation *limpia la tabla en el lab (romperás las sesiones activas — en producción, con pinzas).
⚠️ ⚠️ NAT no es un firewall
Que las conexiones entrantes "no puedan entrar" con PAT es un efecto secundario (no hay entrada en la tabla que las mapee), no una política de seguridad: un estático las abre de par en par y ciertos protocolos las negocian. La seguridad perimetral es cosa de ACLs y firewalls (Módulo 10) — NAT solo traduce.
Relación con otros conceptos
- El porqué de NAT (agotamiento, RFC 1918, CGNAT) es la lección 4.2 — esta es el cómo.
- Las ACLs que seleccionan el tráfico a traducir se estudian a fondo en 10.4-10.5 — aquí has visto su primer uso.
- El "camino de vuelta" del diagnóstico es la regla de oro de la lección 7.2 aplicada a las públicas del pool.
- IPv6 elimina la necesidad de NAT para conectividad (lección 6.1) — en dual stack, NAT queda como asunto exclusivamente IPv4.
Resumen
Vocabulario primero: inside local (privada real) ↔ inside global (pública traducida); outside global, el externo. Configuración siempre en tres piezas: marcar ip nat inside/outside en las interfaces (el olvido clásico), definir el tráfico (ACL) o el host (estático), y la regla: estático ip nat inside source static privada pública (servidores publicados; variante por puerto para port forwarding), dinámico ... list 1 pool X (1:1 temporal, limitado por el tamaño del pool), PAT ... interface Gi0/1 overload o pool X overload (N:1 por puertos — el estándar). Verificación: show ip nat translations (las columnas SON el vocabulario) y show ip nat statistics (¿ambas interfaces listadas?). Y NAT traduce — la seguridad la ponen las ACLs y el firewall.