Subnetting es el tema que más reprueba en exámenes de redes. VLSM lo hace más complejo pero más eficiente. En esta guía lo verás paso a paso con un ejercicio real resuelto — sin fórmulas mágicas, solo lógica.

¿Por qué dividir redes?

Imagina que tienes una empresa con 3 departamentos: Administración (20 equipos), Producción (50 equipos) y Servidores (6 equipos). Si asignas una red /24 (254 hosts) a cada departamento, desperdicias cientos de direcciones IP. El subnetting resuelve esto dividiendo una red grande en subredes más pequeñas y eficientes.

Conceptos previos que debes dominar

  • Dirección IP: 32 bits divididos en 4 octetos (ej: 192.168.1.0)
  • Máscara de subred: define cuántos bits son para red y cuántos para hosts
  • Prefijo CIDR: notación /n donde n = bits de red (ej: /24 = 255.255.255.0)
  • Dirección de red: primera dirección del bloque, no asignable
  • Broadcast: última dirección del bloque, no asignable
  • Hosts válidos: Total - 2 (red y broadcast)
Prefijo Máscara Total IPs Hosts válidos
/24 255.255.255.0 256 254
/25 255.255.255.128 128 126
/26 255.255.255.192 64 62
/27 255.255.255.224 32 30
/28 255.255.255.240 16 14
/29 255.255.255.248 8 6
/30 255.255.255.252 4 2

¿Qué es VLSM?

Variable Length Subnet Mask (VLSM) permite usar máscaras de diferente longitud dentro de la misma red, asignando el tamaño justo que cada segmento necesita. Esto maximiza el uso del espacio de direccionamiento.

Ejercicio resuelto paso a paso

Escenario: La empresa TechEdu necesita diseñar el direccionamiento IP usando la red 172.16.0.0/16. Los requerimientos son:

  • Producción: 50 hosts
  • Administración: 25 hosts
  • Servidores: 10 hosts
  • Enlace WAN Router-Router: 2 hosts

Paso 1 — Ordenar de mayor a menor

  1. Producción: 50 hosts
  2. Administración: 25 hosts
  3. Servidores: 10 hosts
  4. Enlace WAN: 2 hosts

Paso 2 — Encontrar el prefijo para cada segmento

La fórmula: necesitas encontrar el prefijo donde 2^n - 2 ≥ hosts requeridos (n = bits de host).

  • Producción (50 hosts): 2^6 - 2 = 62 ≥ 50 ✅ → /26 (64 IPs)
  • Administración (25 hosts): 2^5 - 2 = 30 ≥ 25 ✅ → /27 (32 IPs)
  • Servidores (10 hosts): 2^4 - 2 = 14 ≥ 10 ✅ → /28 (16 IPs)
  • Enlace WAN (2 hosts): 2^2 - 2 = 2 ≥ 2 ✅ → /30 (4 IPs)

Paso 3 — Asignar bloques consecutivos

Segmento Red Primer host Último host Broadcast Máscara
Producción 172.16.0.0 172.16.0.1 172.16.0.62 172.16.0.63 /26
Administración 172.16.0.64 172.16.0.65 172.16.0.94 172.16.0.95 /27
Servidores 172.16.0.96 172.16.0.97 172.16.0.110 172.16.0.111 /28
Enlace WAN 172.16.0.112 172.16.0.113 172.16.0.114 172.16.0.115 /30

Calculadora de subnetting en Python

import ipaddress

# Calcular información de una subred
red = ipaddress.IPv4Network('172.16.0.0/26')

print(f"Red:           {red.network_address}")
print(f"Broadcast:     {red.broadcast_address}")
print(f"Máscara:       {red.netmask}")
print(f"Hosts válidos: {red.num_addresses - 2}")
print(f"Primer host:   {list(red.hosts())[0]}")
print(f"Último host:   {list(red.hosts())[-1]}")

"El subnetting no es una habilidad de memorización — es una habilidad de razonamiento. Una vez que entiendes la lógica binaria detrás, nunca más necesitas memorizar tablas."