Introducción
VLSM (Variable Length Subnet Mask) es el método “de verdad” cuando tu red necesita subredes de distintos tamaños. En lugar de “cortar en trozos iguales” (FLSM), aquí asignas bloques grandes primero y luego encajas los pequeños para optimizar direcciones y mantener el plan de direccionamiento ordenado.
¿Qué es VLSM?
VLSM permite dividir una red principal en subredes que no tienen el mismo prefijo. Cada subred recibe una máscara/prefijo acorde a su necesidad real (hosts, enlaces, etc.). El resultado es un direccionamiento más eficiente y flexible.
Características clave
- Subredes de distintos tamaños (prefijos diferentes).
- Se asigna primero lo grande y luego lo pequeño para no bloquear espacio.
- Más eficiencia: menos desperdicio de direcciones.
- Más planificación: necesitas evitar solapes y respetar límites.
¿Cuándo usar VLSM?
VLSM es tu opción cuando el problema no es “cuántas subredes”, sino “cuánto necesita cada segmento”.
- Cuando tienes requisitos mixtos: por ejemplo 120, 60, 20 hosts (tamaños distintos).
- Cuando hay segmentos pequeños (IoT/impresoras) y otros grandes (usuarios/servidores).
- Cuando quieres dejar espacio para crecimiento sin rehacer el direccionamiento.
- Cuando el diseño real incluye enlaces punto a punto (/30 o /31) además de LANs.
VLSM vs FLSM: diferencias clave
Entender esta diferencia te evita el error típico de intentar resolver un escenario VLSM “como si fuera FLSM”.
| Característica | FLSM | VLSM |
|---|---|---|
| Tamaño de subredes | Todas iguales | Diferentes tamaños |
| Máscara/prefijo | La misma en todas | Varía por subred |
| Eficiencia | Puede desperdiciar IPs | Optimiza direcciones |
| Complejidad | Más simple | Requiere planificación |
| Uso típico | Segmentos homogéneos | Redes reales con requisitos mixtos |
VLSM en 30 segundos
Si te aprendes este flujo, haces el 80% de ejercicios VLSM sin perderte:
- Lista requisitos de hosts por subred (y enlaces si los hay).
- Ordena de mayor a menor.
- Para cada subred: elige el prefijo mínimo que cumpla
2^h - 2 ≥ hosts. - Asigna secuencialmente desde el inicio del bloque disponible.
- Alinea el inicio: cada bloque debe empezar en un “múltiplo” de su tamaño.
- Rellena tabla: network | 1er host | último host | broadcast | /prefijo.
- Verifica: no hay solapes y todo queda dentro de la red base.
Hosts → prefijo rápido (sin perder tiempo)
En VLSM casi todo empieza igual: te dan un número de hosts y tú tienes que elegir el prefijo mínimo que los soporte. El truco es recordar que una subred tiene direcciones totales, pero normalmente solo hosts utilizables (porque network y broadcast están reservadas).
2^h - 2 ≥ hosts.
Si te dan 50 hosts, en realidad necesitas cubrir 52 direcciones.
Mini tabla útil (los más comunes)
| Prefijo | Direcciones | Hosts utilizables | Sirve para… |
|---|---|---|---|
| /25 | 128 | 126 | ~100–120 hosts |
| /26 | 64 | 62 | ~50–60 hosts |
| /27 | 32 | 30 | ~25–30 hosts |
| /28 | 16 | 14 | ~10–14 hosts |
| /29 | 8 | 6 | ~3–6 hosts |
| /30 | 4 | 2 | P2P clásico (2 hosts) |
Nota: en enlaces punto a punto modernos a veces se usa /31 (RFC 3021), donde no se reserva broadcast. En examen clásico suele bastar con /30.
Ejemplo rápido
Si un departamento necesita 60 hosts, un /27 no vale (solo 30 hosts utilizables). El mínimo prefijo que cumple es /26 (64 direcciones, 62 hosts).
Requisitos y preparación (antes de calcular)
Antes de tocar números, asegúrate de tener claros estos datos:
- Red base (ej: 192.168.10.0/24) y su prefijo.
- Lista de subredes necesarias con su número de hosts (requeridos).
- Si hay enlaces, decide el tamaño: típicamente /30 (2 hosts) o /31 (p2p moderno).
- Define si quieres dejar margen de crecimiento (ej: “Ventas hoy 120 hosts, reservo /24 para crecer”).
Consejo práctico: ponle nombre a cada subred (Usuarios, Servidores, IoT, Invitados, P2P-1…). En VLSM la tabla se entiende mucho mejor si cada bloque tiene una etiqueta clara.
VLSM con margen de crecimiento (diseño real)
En escenarios reales, no siempre se diseña para el número exacto de hosts actuales. Es habitual reservar bloques más grandes para segmentos que crecerán (usuarios, servidores) y dejar bloques pequeños para zonas estables (IoT, enlaces).
La técnica no cambia: simplemente eliges un prefijo mayor del mínimo necesario. Por ejemplo, si hoy necesitas 120 hosts, puedes reservar un /24 en lugar de un /25 para evitar rediseñar la red en el futuro.
Método VLSM paso a paso (a mano)
Paso 1: ordenar subredes (de mayor a menor)
Ordenar es obligatorio: si asignas primero una subred pequeña, puedes “romper” un bloque grande que después no tendrá hueco sin solaparse. En VLSM el orden te protege de eso.
Paso 2: calcular el prefijo mínimo de cada subred
Para cada requisito de hosts, busca la potencia de 2 mínima que lo cubra (recordando network/broadcast):
2^(bits_host) - 2 ≥ hosts_requeridos
prefijo = 32 - bits_host
Ejemplo rápido: 50 hosts → necesitas 6 bits host (2^6=64 direcciones) → 64-2=62 hosts → prefijo /26.
Paso 3: asignar bloques secuencialmente
Empiezas en la primera IP de la red base (la dirección de red). El primer bloque es el mayor: asignas su network, rango de hosts y broadcast. Luego el siguiente bloque empieza justo después del broadcast anterior.
Si el siguiente inicio no es válido para el tamaño del bloque que toca (no está alineado), no lo “fuerces”: ajusta al siguiente límite válido para ese prefijo. Ese ajuste es normal en VLSM y es justamente lo que evita solapes.
Paso 4: verificar y documentar
Terminas verificando que: no hay solapes, todas las subredes caben en la red base, y que cada subred tiene hosts suficientes.
Alineación y límites: el “secreto” de VLSM
En VLSM, cada subred tiene un tamaño de bloque (número de direcciones totales). La dirección de red de esa subred debe empezar en un límite válido para ese tamaño.
Por ejemplo, un bloque /26 tiene 64 direcciones. En un /24, los networks válidos del último octeto son:
.0, .64, .128, .192. Si intentas empezar un /26 en .96,
estás en medio de un bloque → acabarás solapando.
Cómo saco el tamaño del bloque
Direcciones por subred = 2^(32 - prefijo).
Ejemplos: /25 → 128 direcciones; /26 → 64; /27 → 32; /28 → 16; /30 → 4.
Ejemplo mental: “si el bloque es 32, solo puedo empezar en saltos de 32”
Un /27 tiene 32 direcciones. En una red /24, eso significa que los networks posibles del último octeto son:
.0, .32, .64, .96, .128, .160, .192, .224.
Si intentas iniciar un /27 en .50, estás en medio de un bloque y acabarás solapando.
Cómo encontrar el siguiente inicio alineado (método rápido)
Cuando terminas una subred, el siguiente inicio “natural” sería broadcast + 1. Si ese valor no es múltiplo del tamaño del bloque que toca, debes subir al siguiente múltiplo válido.
- Calcula el tamaño del bloque (direcciones totales):
2^(32 - prefijo). - Busca el siguiente múltiplo de ese tamaño en el octeto interesante.
- Ese múltiplo es el network válido para el siguiente bloque.
.0, .64, .128, .192.
Si “te cae” un inicio en .96, no vale: el siguiente válido es .128.
Octeto interesante (cuando el corte no está al final)
Hasta ahora hemos visto ejemplos dentro de un /24, donde casi todo el juego ocurre en el último octeto. Pero VLSM también aparece en redes grandes (por ejemplo /16 o /20). En ese caso, el “salto” y la alineación pueden afectar al tercer o incluso al segundo octeto.
Ejemplo: 172.16.0.0/16 y asigno un /23
Un /23 significa que el corte está en el tercer octeto (porque /16 ya fija los dos primeros).
El tamaño del bloque en el tercer octeto será de 2^(24 - 23) = 2 en ese octeto, es decir,
redes que avanzan como: 172.16.0.0/23, 172.16.2.0/23, 172.16.4.0/23, etc.
/23 dentro de /16:
- Network válidos (3er octeto): 0, 2, 4, 6, 8, 10, ...
- Ejemplo: 172.16.0.0/23 cubre 172.16.0.0 - 172.16.1.255
Ejemplo rápido: 192.168.0.0/16 y asigno un /20
Un /20 usa bloques de 16 en el tercer octeto (porque /20 = 255.255.240.0).
Networks válidos: 192.168.0.0/20, 192.168.16.0/20, 192.168.32.0/20, etc.
Qué debe incluir la tabla final
En VLSM la tabla es tu “prueba” y tu documentación. Como mínimo:
- Subred/segmento (nombre o etiqueta)
- Network
- Prefijo/máscara
- Primer host
- Último host
- Broadcast
- Hosts disponibles (capacidad real del bloque)
- Tamaño del bloque (direcciones totales / salto)
| Segmento | Hosts req. | Prefijo | Bloque | Network | 1er host | Último host | Broadcast |
|---|---|---|---|---|---|---|---|
| LAN A | 100 | /25 | 128 | 192.168.10.0 | 192.168.10.1 | 192.168.10.126 | 192.168.10.127 |
| LAN B | 50 | /26 | 64 | 192.168.10.128 | 192.168.10.129 | 192.168.10.190 | 192.168.10.191 |
| Repite el patrón para el resto de segmentos (ordenados de mayor a menor) | |||||||
Ejemplos resueltos (paso a paso)
Ejemplo 1: 192.168.10.0/24 para 100, 50, 25 y 10 hosts
1) Ordenar (ya está): 100, 50, 25, 10.
2) Prefijos mínimos:
100 hosts -> /25 (128 dir, 126 hosts)
50 hosts -> /26 (64 dir, 62 hosts)
25 hosts -> /27 (32 dir, 30 hosts)
10 hosts -> /28 (16 dir, 14 hosts)
3) Asignación secuencial dentro de 192.168.10.0/24:
A (100) -> 192.168.10.0/25
Hosts: 192.168.10.1 - 192.168.10.126
Bcast: 192.168.10.127
B (50) -> 192.168.10.128/26
Hosts: 192.168.10.129 - 192.168.10.190
Bcast: 192.168.10.191
C (25) -> 192.168.10.192/27
Hosts: 192.168.10.193 - 192.168.10.222
Bcast: 192.168.10.223
D (10) -> 192.168.10.224/28
Hosts: 192.168.10.225 - 192.168.10.238
Bcast: 192.168.10.239
Ejemplo 2 (empresa): 172.16.0.0/16 para 500, 250, 120, 60, 30 + 6 enlaces P2P
1) Ordenar: 500, 250, 120, 60, 30, (P2P: 2 x 6 enlaces)
2) Prefijos mínimos:
500 hosts -> /23 (512 dir, 510 hosts)
250 hosts -> /24 (256 dir, 254 hosts)
120 hosts -> /25 (128 dir, 126 hosts)
60 hosts -> /26 (64 dir, 62 hosts)
30 hosts -> /27 (32 dir, 30 hosts)
P2P 2h -> /30 (4 dir, 2 hosts) (o /31 si se permite)
3) Asignación (ejemplo de asignación ordenada y consecutiva):
Ventas (500) -> 172.16.0.0/23 (172.16.0.1 - 172.16.1.254) bcast 172.16.1.255
Ingeniería (250) -> 172.16.2.0/24 (172.16.2.1 - 172.16.2.254) bcast 172.16.2.255
Marketing (120) -> 172.16.3.0/25 (172.16.3.1 - 172.16.3.126) bcast 172.16.3.127
Admin (60) -> 172.16.3.128/26 (172.16.3.129 - 172.16.3.190) bcast 172.16.3.191
RRHH (30) -> 172.16.3.192/27 (172.16.3.193 - 172.16.3.222) bcast 172.16.3.223
P2P #1 (2) -> 172.16.3.224/30 (172.16.3.225 - 172.16.3.226) bcast 172.16.3.227
P2P #2 (2) -> 172.16.3.228/30 (172.16.3.229 - 172.16.3.230) bcast 172.16.3.231
... -> ...
Errores comunes en VLSM
No ordenar de mayor a menor
Si empiezas asignando subredes pequeñas, puedes fragmentar el espacio y dejar sin hueco un bloque grande. En VLSM, ordenar es parte del método (no es opcional).
Inicio no alineado (límite inválido)
Un /26 debe empezar en múltiplos de 64 dentro del octeto correspondiente (0,64,128,192… en un /24). Si empiezas en un valor “intermedio”, acabarás solapando.
Elegir prefijo demasiado pequeño (no caben hosts)
Recuerda la regla: 2^h - 2 ≥ hosts. Si piden 60 hosts, un /27 (30 hosts) no sirve:
necesitas /26 (62 hosts).
Olvidar network/broadcast al dimensionar
En la mayoría de subredes IPv4, network y broadcast están reservadas. Por eso, si necesitas 25 hosts, no te sirve 32 direcciones “porque sí”: sirve porque 32-2=30.
FAQ VLSM
¿Por qué VLSM empieza por la subred más grande?
Porque los bloques grandes necesitan alineaciones más “estrictas” y ocupan mucho espacio. Si los reservas primero, evitas quedarte sin un hueco continuo lo bastante grande.
¿Cómo sé si un inicio es válido (alineado)?
Calcula el tamaño del bloque: 2^(32 - prefijo). El network debe empezar en un múltiplo de ese tamaño
(en el octeto donde “corta” el prefijo).
¿Qué prefijos se usan más en VLSM?
En IPv4 real es común ver /24-/26 para LANs, /27-/28 para VLAN pequeñas, y /30 (o /31) para enlaces punto a punto. Depende del diseño.
¿VLSM requiere un protocolo concreto?
A nivel de concepto no, pero a nivel de routing necesitas un protocolo classless (OSPF, EIGRP, BGP, RIPv2…). RIPv1 no soporta VLSM.
¿Cuándo uso calculadora y cuándo lo hago a mano?
A mano para aprender y para examen. Calculadora para verificar que no te has equivocado en un prefijo o un inicio no alineado (y para ir más rápido al practicar).
Checklist rápido (tipo examen)
- He ordenado requisitos de mayor a menor.
- Para cada subred: he elegido el prefijo mínimo que cumple hosts (restando 2).
- Estoy asignando bloques secuencialmente sin huecos raros (salvo que diseñe a propósito).
- Cada network está alineado para el tamaño de su bloque.
- No hay solapamientos entre rangos.
- Todo cabe dentro de la red base.
- Si dudo: verifico con calculadora y reviso la alineación.
Practicar
Continúa aprendiendo con SubnetMaster
Para situar esta guía dentro del recorrido completo, continúa con guía de subnetting calculadora VLSM direccionamiento IP. Estas páginas conectan la teoría con cálculos, diseño y diagnóstico sin repetir lo explicado aquí.
