redzilla
Direccionamiento IP

Internet por dentro: IP pública, NAT y ASN

Entre tu notebook y un servidor en Tokio hay traducciones de direcciones, sistemas autónomos y acuerdos de peering. Sigamos el viaje del paquete — y de paso aprendes a investigar cualquier IP como detective.

≈ 11 min de lectura

La primera vez que dejé unas cámaras "listas para ver desde el celular" en un condominio, me fui feliz. Puerto 8080 abierto en el router, prueba local impecable, cliente contento. Dos horas después me llama: desde afuera no se veía nada. Volví, revisé el firewall, rehice el port-forwarding, reinicié todo dos veces… hasta que miré la IP WAN del router: 100.72.19.4. Se veía pública. No lo era. Esa tarde aprendí más de internet que en cualquier curso, y esta guía es esa tarde comprimida — sin la vergüenza ni el combustible gastado.

El barrio privado: por qué existe RFC 1918

Una dirección IPv4 tiene 32 bits: 4.294.967.296 combinaciones posibles, unos 4.300 millones. En los 80 sonaba infinito; hoy hay más chips con antena que personas en el planeta. Para no gastar una dirección única del mundo en cada impresora y cada ampolleta inteligente, el RFC 1918 reservó en 1996 tres bloques que cualquiera puede usar dentro de su red, sin pedirle permiso a nadie.

La analogía es el depto 302: existe en miles de edificios a la vez y jamás hay conflicto, porque nadie manda una carta a "depto 302, Chile" y espera que llegue. Dentro del edificio, el número basta. Para el mundo exterior necesitas la dirección de la calle: la IP pública.

BloqueRangoDireccionesDónde lo ves
10.0.0.0/810.0.0.0 – 10.255.255.25516.777.216Redes corporativas y datacenters
172.16.0.0/12172.16.0.0 – 172.31.255.2551.048.576El rango del medio que todos olvidan (y Docker)
192.168.0.0/16192.168.0.0 – 192.168.255.25565.536Hogares y pymes: el router de tu casa
100.64.0.0/10100.64.0.0 – 100.127.255.2554.194.304CGNAT (RFC 6598): del ISP, no tuyo — ya llegamos a esto

Los tres bloques RFC 1918 suman 17.891.328 direcciones — casi 18 millones — que se repiten en millones de redes al mismo tiempo. La regla de oro: estos rangos no cruzan internet. Ningún router de la ruta va a reenviar un paquete con origen 192.168.1.20; para salir al mundo, alguien tiene que traducirlo primero.

El 172.16.0.0/12 termina en 172.31.255.255. La 172.32.0.1 es una IP pública de otra organización. Cada cierto tiempo aparece una ACL escrita con "todo lo que empiece con 172 es interno" que termina bloqueando tráfico legítimo de internet — o peor, dejándolo entrar como si fuera de confianza. El /12 va del 16 al 31, ni uno más.

NAT y PAT: el conserje que traduce direcciones

Si las IPs privadas no pueden salir, ¿cómo navega tu notebook? Piensa en el conserje del edificio. Las cartas que salen llevan la dirección de la calle más un número de casilla, y el conserje anota en su cuaderno: casilla 40001 = depto 302. Cuando llega la respuesta dirigida a la casilla 40001, sabe exactamente a quién subírsela. Ese cuaderno es la tabla NAT, y la casilla es el puerto.

Técnicamente: NAT (Network Address Translation) reescribe la IP de origen del paquete; PAT (Port Address Translation, el "NAT con sobrecarga" que hace tu router) reescribe IP y puerto, para que cientos de equipos compartan una sola IP pública. Cada conversación queda identificada por la 5-tupla: protocolo, IP de origen, puerto de origen, IP de destino y puerto de destino. Cambia cualquiera de los cinco valores y es otra sesión — otra fila en el cuaderno del conserje.

Un paquete cruza el NAT: la IP y el puerto de origen cambian según la tabla de traducción Notebook 192.168.1.20 Router NAT 203.0.113.7 Servidor web 198.51.100.10 ANTES del NAT (lado LAN) origen 192.168.1.20:51344 destino 198.51.100.10:443 DESPUÉS del NAT (lado WAN) origen 203.0.113.7:40001 ← cambió destino 198.51.100.10:443 TABLA DE TRADUCCIÓN — una fila por 5-tupla proto interno externo destino TCP 192.168.1.20:51344 203.0.113.7:40001 198.51.100.10:443
El paquete antes y después del NAT: la 5-tupla completa vive en la tabla de traducción del router. IPs de ejemplo de los rangos de documentación.

Aquí viene el número que manda en todo esto: el campo de puerto tiene 16 bits, o sea 65.536 valores. Del 0 al 1023 están reservados para servicios conocidos, así que para traducir quedan del 1024 al 65535: 64.512 puertos efímeros por IP pública. Dicho de otra forma, una sola IP pública multiplexa del orden de 64 mil sesiones simultáneas. Suena holgado… hasta que recuerdas que un teléfono con WhatsApp, Instagram, Spotify y 30 pestañas mantiene decenas de sesiones abiertas sin que nadie lo note.

Ejemplo trabajado: el día que se acaban los puertos

Modelemos un edificio corporativo que sale a internet por una IP pública — el mismo modelo de la calculadora de agotamiento NAT/PAT, por si quieres jugar con tus propios números.

  1. Puertos disponibles por IP pública. Rango efímero típico: 1024 a 65535. Eso da 65.535 − 1.024 + 1 = 64.512 puertos.
  2. Demanda. 700 usuarios × 100 sesiones concurrentes cada uno = 70.000 sesiones pidiendo puerto al mismo tiempo. (100 por usuario no es exageración: navegador + correo + Teams + streaming lo logran sin esfuerzo.)
  3. Comparación. 70.000 > 64.512: faltan 70.000 − 64.512 = 5.488 sesiones que no encuentran puerto libre. La utilización queda en 70.000 ÷ 64.512 = 108,5 %.
  4. Síntoma en terreno. Sobre el 100 % no se cae "internet": fallan conexiones al azar. Páginas que cargan a medias, apps que reintentan, videollamadas que entran a la tercera. El clásico ticket "internet está raro" que nadie sabe reproducir.
  5. Solución. IPs necesarias = ⌈70.000 ÷ 64.512⌉ = 2 IPs públicas. La capacidad sube a 2 × 64.512 = 129.024 puertos y la utilización baja a un cómodo 54,3 %, con holgura para los picos del lunes.

Otra forma de mirar el mismo límite: con una sola IP y 700 usuarios, a cada uno le tocan como máximo 92 sesiones de promedio. Un solo equipo con torrents o malware puede comerse miles de puertos por sí solo y dejar al resto del edificio esperando fila en el cuaderno del conserje.

El modelo asume un puerto por sesión. Como la 5-tupla incluye el destino, un NAT decente puede reutilizar el mismo puerto externo hacia destinos distintos, así que en la práctica hay margen extra. Planificar con el modelo simple te deja del lado conservador — que es exactamente donde quieres estar un lunes a las 9:00.

CGNAT: cuando tu IP "pública" también es privada

Volvamos al condominio y su 100.72.19.4. A los ISP les pasa lo mismo que a tu oficina: no tienen IPv4 públicas para regalarle una a cada cliente. ¿La solución? Aplicarle NAT a los clientes otra vez, dentro de su propia red: Carrier-Grade NAT. Para ese NAT intermedio, el RFC 6598 reservó el bloque 100.64.0.0/10 — 4.194.304 direcciones que no son RFC 1918, pero tampoco son públicas. Tierra de nadie entre tu router y la internet real.

Doble NAT con CGNAT: la dirección WAN del router pertenece al rango 100.64.0.0/10 del ISP y el port-forwarding no atraviesa el segundo NAT Notebook 192.168.1.20 Tu router NAT #1 CGNAT del ISP NAT #2 Internet RFC 1918 WAN: 100.64.5.9 privada del ISP (100.64/10) 203.0.113.7 pública real, compartida El puerto que abres en NAT #1 no existe en NAT #2: el port-forwarding muere en el CGNAT
Doble traducción: tu router hace NAT hacia una dirección 100.64/10 del ISP, y el CGNAT del ISP traduce de nuevo hacia la IP pública compartida.

La consecuencia práctica: hay dos traducciones y tú solo controlas la primera. El port-forwarding que configuras en tu router funciona perfecto… hasta el borde de tu casa. Cuando alguien intenta entrar desde internet, golpea la puerta del CGNAT del ISP, y ese equipo no tiene idea de que tu cámara existe. El paquete muere ahí, educadamente y sin avisar.

Antes de prometer acceso remoto, compara la IP WAN del router con la que ve el mundo en Mi IP. Si no coinciden — o si la WAN cae entre 100.64.0.0 y 100.127.255.255 — estás detrás de CGNAT. Opciones: pedir IP pública fija al ISP (varios la venden como adicional), montar una VPN de salida tipo WireGuard o Tailscale, o usar un túnel inverso. Y si el ISP entrega IPv6, el problema desaparece de raíz: cada equipo vuelve a tener dirección propia.

¿De quién es esa IP? Sistemas autónomos en tres frases

Ya sabemos cómo sale el paquete de tu casa. ¿Y quién lo lleva? Tres frases, tal como prometí. Uno: internet no es una red, son unas 80.000 redes independientes llamadas sistemas autónomos (AS), cada una con un número único: el ASN. Dos: cada AS anuncia por BGP los bloques de direcciones que administra, y sus vecinos deciden si le creen y por dónde enrutar. Tres: tu paquete cruza varios AS de mano en mano — tu ISP, uno o dos intermediarios, el AS de destino — y eso, literalmente, es todo internet.

Los AS se conectan con dos tipos de acuerdo: tránsito (le pago a un AS grande para que me lleve a cualquier parte del mundo) y peering (dos AS intercambian tráfico gratis porque a ambos les conviene, normalmente en un punto de intercambio o IX). Por eso Netflix o YouTube cargan de inmediato: sus CDN hacen peering directo con tu ISP y el tráfico ni siquiera sale de Santiago.

Grafo de sistemas autónomos: tu casa se conecta al AS de tu ISP, que llega al destino vía tránsito pagado o peering gratuito Tu casa sin ASN última milla Tu ISP AS64496 Tránsito AS64497 CDN AS64511 Hosting AS65551 tránsito ($) tránsito ($) peering (gratis) Internet ≈ 80.000 AS intercambiando rutas por BGP
Cada burbuja es un sistema autónomo con su ASN (aquí, números del rango de documentación RFC 5398). Las rutas se negocian por BGP: tránsito se paga, peering se intercambia.

Sobre los números: los ASN partieron con 16 bits (hasta el 65.535) y, película repetida, se agotaron; hoy son de 32 bits, hasta 4.294.967.295. Hay dos notaciones: asplain, el número plano (196629), y asdot, en formato alto.bajo (3.21 — el mismo número, porque 3 × 65.536 + 21 = 196.629). El punto confunde a los equipos antiguos y rompe más de una regex, así que conviene saber leer ambas. El conversor de ASN traduce entre las dos y te dice además si el número es público, privado (del 64512 al 65534 hay 1.023 ASN privados de 16 bits, los "192.168 de BGP") o reservado. Un ejemplo real y verificable: en Chile, Entel opera el AS27651 — ese número identifica su red completa ante el resto del planeta.

Modo detective: investigar cualquier IP

Con las piezas anteriores, investigar una IP toma menos de un minuto. El kit tiene tres herramientas:

  • ¿Cómo me ve el mundo? Mi IP te muestra tu IP pública real, el ASN y la organización de tu ISP, geolocalización y DNS inverso. Es además la primera prueba de CGNAT: si lo que sale ahí no coincide con la WAN de tu router, ya sabes qué pasó.
  • ¿De quién es esta IP? RDAP es el WHOIS moderno: en vez de texto libre, entrega datos estructurados desde el registro correspondiente (LACNIC para esta parte del mundo). Ahí sale la organización dueña, el rango completo que le asignaron y — la joya — el contacto de abuse: el correo oficial para reportar que esa IP está haciendo maldades.
  • ¿Necesito filtrar todo su rango? Si decides bloquear o buscar en logs, CIDR a regex convierte el bloque completo en una expresión regular y en el rango exacto de direcciones, listo para grep o para la ACL.

Mini-caso: una IP lleva toda la noche golpeando tu firewall. RDAP te dice en segundos que pertenece a un hosting con abuse contact público; reportas con logs, fecha y zona horaria, y de paso descubres si el "ataque internacional" era en realidad el scanner académico de una universidad que escanea todo internet a diario (pasa más de lo que crees). No cambia el mundo, pero los abuse desks sí dan de baja bots — y tú dejas de adivinar.

Tu turno

Abre Mi IP y compárala con la WAN de tu router: ahora sabes exactamente qué significa si no coinciden. Después pasa tus números reales por la calculadora NAT/PAT antes de que un lunes cualquiera los puertos se agoten solos. Y a la próxima IP sospechosa en un log, regálale 30 segundos de RDAP: internet deja de ser una nube y empieza a ser un mapa.

Herramientas para practicar