IPAddress-Lookup.com

Explicación de la subred y la notación CIDR (con ejemplos)

IPAddress-Lookup.com ·

Si alguna vez te has quedado mirando fijamente una dirección como 192.168.1.0/24 y te has preguntado qué significan realmente esa barra y ese número, estás exactamente en el lugar adecuado. Las subredes y la notación CIDR son fundamentales para el diseño, la seguridad y el enrutamiento de las redes modernas, pero este tema tiene fama de ser intimidante. No tiene por qué serlo. Una vez que comprendas que una dirección IP no es más que una secuencia de bits y que una máscara de subred simplemente te indica dónde termina la parte de la «red» y dónde empieza la parte del «host», todo lo demás encajará en su sitio. En esta guía desarrollaremos el concepto partiendo de los principios básicos, analizaremos varios ejemplos reales al detalle y te proporcionaremos una hoja de referencia que podrás tener a mano junto al teclado. A lo largo del proceso, podrás comprobar tú mismo cada cálculo con nuestra herramienta «Calculadora de subredes».

¿Qué es una subred y por qué las creamos?

Una subred, abreviatura de «subred», es una subdivisión lógica de una red IP más grande. En lugar de colocar todos los dispositivos en una enorme red plana, los ingenieros dividen ese espacio de direcciones en bloques más pequeños e independientes. Cada bloque es una subred con su propio rango de direcciones, su propia dirección de red y su propia dirección de difusión. Los routers transfieren el tráfico entre subredes, mientras que los dispositivos dentro de una misma subred pueden comunicarse entre sí directamente sin necesidad de que intervenga un router.

La subredificación no es una tarea sin sentido. Hay varias razones concretas por las que las redes se dividen de esta manera:

  • Eficiencia y ahorro de direcciones. Asignar a una organización un único bloque gigante supone un desperdicio de direcciones. La subred permite asignar exactamente el número de direcciones que un departamento, una planta o una sucursal necesita realmente, en lugar de redondear al alza a la clase más grande más cercana.
  • Dominios de difusión más pequeños. Cierto tráfico, como las solicitudes ARP, se difunde a todos los hosts de una subred. En una red plana con miles de dispositivos, ese tráfico se vuelve paralizante. La división en subredes mantiene cada dominio de difusión pequeño y la red rápida.
  • Segmentación de seguridad. Al colocar los servidores, la red Wi-Fi para invitados y las estaciones de trabajo internas en subredes separadas, se pueden aplicar reglas de cortafuegos y listas de control de acceso entre ellas. Un dispositivo de un invitado que haya sido comprometido no podrá acceder a un servidor de base de datos si ambos se encuentran en subredes aisladas.
  • Enrutamiento más sencillo y rápido. Los routers toman decisiones basándose en los prefijos de red. Las subredes bien diseñadas pueden resumirse en una única ruta, lo que reduce las tablas de enrutamiento y agiliza las decisiones de reenvío a través de Internet.

Un breve repaso al sistema binario: bits, octetos y máscaras

Una dirección IPv4 tiene una longitud de 32 bits. La escribimos como cuatro números decimales separados por puntos, como 192.168.1.10, pero cada uno de esos números es en realidad un grupo binario de 8 bits denominado «octeto». Ocho bits por octeto, cuatro octetos, equivalen a un total de 32 bits. Cada octeto puede contener un valor comprendido entre 0 y 255, ya que ocho bits pueden representar 2^8 = 256 valores distintos.

Las posiciones de los bits en un octeto tienen los valores posicionales 128, 64, 32, 16, 8, 4, 2 y 1. Para realizar la conversión, hay que sumar las posiciones que contienen un 1. Por ejemplo, el octeto 11000000 es 128 + 64 = 192, y 10101000 es 128 + 32 + 8 = 168. Por lo tanto, 192.168.1.10 en binario es:

  • 192 = 11000000
  • 168 = 10101000
  • 1 = 00000001
  • 10 = 00001010

La máscara de subred es otro valor de 32 bits, pero tiene una característica especial: siempre es una secuencia de unos seguida de una secuencia de ceros. Los unos indican la parte de red de la dirección y los ceros, la parte de host. Una máscara de 255.255.255.0 es 11111111.11111111.11111111.00000000 en binario, lo que equivale a 24 unos seguidos de 8 ceros. Para averiguar a qué red pertenece una dirección, se realiza una operación AND bit a bit entre la dirección y la máscara: donde la máscara tiene un 1, se mantiene el bit de la dirección; donde la máscara tiene un 0, el bit pasa a ser 0. Esa operación AND es el cálculo más importante de todo el proceso de subredes.

Direccionamiento por clases: una breve lección de historia

En los inicios de Internet, las direcciones se asignaban en «clases» fijas basadas en el valor del primer octeto. Esto se denomina direccionamiento por clases y, aunque hoy en día está obsoleto, comprenderlo explica por qué el CIDR supuso una mejora tan importante.

  • La clase A abarcaba los primeros octetos del 1 al 126 y utilizaba una parte de red de 8 bits (máscara 255.0.0.0, una /8) y asignaba a cada red aproximadamente 16,7 millones de hosts.
  • La clase B abarcaba los octetos del 128 al 191, utilizaba una parte de red de 16 bits (máscara 255.255.0.0, a /16) y ofrecía unos 65 000 hosts por red.
  • La clase C abarcaba los rangos del 192 al 223, utilizaba una parte de red de 24 bits (máscara 255.255.255.0, un /24) y solo proporcionaba 254 hosts utilizables.

El problema era la rigidez. Una organización que necesitara 2.000 direcciones era demasiado grande para una clase C (254 hosts), pero se le tenía que asignar una clase B (65.000 hosts), lo que suponía un desperdicio de más de 60.000 direcciones. Con el crecimiento exponencial de Internet, este desperdicio amenazaba con agotar por completo el espacio IPv4. Se necesitaba algo más flexible.

Llega el CIDR: explicación de la notación bit a bit

El CIDR, o enrutamiento entre dominios sin clases (Classless Inter-Domain Routing), se introdujo en 1993 para sustituir al rígido sistema de clases. En lugar de vincular el tamaño de la red al primer octeto, el CIDR permite que el límite entre la red y el host se sitúe en cualquier punto de los 32 bits. Esto se expresa mediante la ya familiar notación de la barra, denominada prefijo CIDR.

El número que aparece tras la barra es simplemente el recuento de bits a 1 en la máscara de subred; en otras palabras, cuántos bits pertenecen a la red. Así pues:

  • /8 significa 8 bits de red, máscara 255.0.0.0 (el antiguo tamaño de Clase A).
  • /16 significa 16 bits de red, máscara 255.255.0.0 (el antiguo tamaño de Clase B).
  • /24 significa 24 bits de red, máscara 255.255.255.0 (el antiguo tamaño de Clase C).
  • /26 significa 26 bits de red, máscara 255.255.255.192, lo que deja solo 6 bits de host.

La fórmula mágica para calcular cuántas direcciones contiene un prefijo es 2^(32 − n), donde n es la longitud del prefijo. Dado que todo el espacio IPv4 es de 32 bits, al restar los bits de red quedan los bits de host, y 2 elevado a esa potencia da el número total de direcciones del bloque. Para un /24 eso son 2^(32−24) = 2^8 = 256 direcciones en total. Para un /26 son 2^(32−26) = 2^6 = 64 direcciones. Cuanto mayor sea el número del prefijo, más pequeña será la subred.

Cálculo de los valores clave de una subred

Cada subred tiene unas cuantas direcciones especiales que tendrás que identificar. A continuación se explica qué significa cada una y cómo encontrarla.

  1. Dirección de red. La primera dirección del bloque. Todos los bits de host son 0. Identifica a la propia subred y no se puede asignar a ningún dispositivo.
  2. Dirección de difusión. La última dirección del bloque. Todos los bits de host son 1. El tráfico enviado a esta dirección llega a todos los hosts de la subred, por lo que tampoco se puede utilizar como dirección de host.
  3. Primer host utilizable. Una dirección por encima de la dirección de red (red + 1).
  4. Último host utilizable. Una dirección por debajo de la dirección de difusión (difusión − 1).
  5. Total de direcciones. 2^(32 − n).
  6. Hosts utilizables. El total menos 2, ya que las direcciones de red y de difusión están reservadas. La fórmula es 2^(32 − n) − 2.

Hay otro valor que conviene conocer: la máscara comodín. Es la inversa de la máscara de subred, que se obtiene invirtiendo cada bit (restando 255 a cada octeto). Si una máscara de subred de 255.255.255.0 selecciona la red, su comodín 0.0.0.255 selecciona el rango de hosts. Las máscaras comodín aparecen constantemente en las listas de control de acceso de Cisco y en la configuración de OSPF, por lo que conviene saber identificarlas.

Ejemplo práctico 1: 192.168.1.0/24

Empecemos con el caso más sencillo posible. Un /24 termina claramente en un límite de octeto, por lo que no se requieren manipulaciones binarias. Con 24 bits de red, la parte del host es todo el último octeto.

PropiedadValor
Notación CIDR192.168.1.0/24
Máscara de subred255.255.255.0
Máscara comodín0.0.0.255
Dirección de red192.168.1.0
Dirección de difusión192.168.1.255
Primer host utilizable192.168.1.1
Último host utilizable192.168.1.254
Total de direcciones256 (2^8)
Hosts utilizables254

Esta es la clásica red doméstica y de pequeña oficina. Todo, desde .1 hasta .254 está disponible para los dispositivos, .0 nombra la red, y .255 es la dirección de difusión.

Ejemplo práctico 2: 10.0.0.0/26

Ahora veamos un prefijo que no coincide con un límite de octeto. Un /26 significa 26 bits de red, por lo que el último octeto se divide: sus dos primeros bits pertenecen a la red y los seis bits restantes son bits de host. Seis bits de host dan 2^6 = 64 direcciones totales por subred. Eso significa que /26 las subredes se incrementan en pasos de 64 en el último octeto: 0, 64, 128, 192.

Centrándonos en el primer bloque 10.0.0.0/26, la máscara de red es 255.255.255.192 porque 11000000 en el último octeto es igual a 192.

PropiedadValor
Notación CIDR10.0.0.0/26
Máscara de subred255.255.255.192
Máscara comodín0.0.0.63
Dirección de red10.0.0.0
Dirección de difusión10.0.0.63
Primer host utilizable10.0.0.1
Último host utilizable10.0.0.62
Total de direcciones64 (2^6)
Hosts utilizables62

La siguiente subred de la secuencia sería 10.0.0.64/26 (hosts del .65 al .126, difusión .127), luego 10.0.0.128/26, y finalmente 10.0.0.192/26. Fíjate en cómo el tamaño del bloque, 64, es exactamente el «número mágico» que determina dónde comienza cada subred.

Ejemplo práctico 3: 172.16.5.0/28

En nuestro último ejemplo, la subred se reduce aún más. Una /28 tiene 28 bits de red y solo 4 bits de host, lo que da un total de 2^4 = 16 direcciones y solo 14 hosts utilizables. El octeto final se utiliza 11110000 para la parte de red, lo que equivale a 240, por lo que la máscara es 255.255.255.240. Las subredes se dividen en incrementos de 16.

PropiedadValor
Notación CIDR172.16.5.0/28
Máscara de subred255.255.255.240
Máscara comodín0.0.0.15
Dirección de red172.16.5.0
Dirección de difusión172.16.5.15
Primer host utilizable172.16.5.1
Último host utilizable172.16.5.14
Total de direcciones16 (2^4)
Hosts utilizables14

A /28 es un tamaño muy habitual para pequeñas redes punto a punto y para segmentos de servidores estrictamente controlados en los que solo se necesitan unas pocas direcciones. Si solo necesitaras dos hosts, por ejemplo, para una conexión entre dos routers, tendrías que reducirte a un /30, que ofrece exactamente 2 direcciones utilizables.

La hoja de referencia de subredes

En lugar de volver a calcular las potencias de dos cada vez, memoriza o guarda en favoritos la tabla que aparece a continuación. Abarca los prefijos más comunes, desde /24 hasta /30, y muestra la máscara, el comodín, el tamaño del bloque (total de direcciones) y el número de hosts utilizables.

CIDRMáscara de subredCarácter comodínTotal de direccionesHosts utilizables
/24255.255.255.00.0.0.255256254
/25255.255.255.1280.0.0.127128126
/26255.255.255.1920.0.0.636462
/27255.255.255.2240.0.0.313230
/28255.255.255.2400.0.0.151614
/29255.255.255.2480.0.0.786
/30255.255.255.2520.0.0.342

Fíjate en la elegante pauta: cada paso de un bit en el prefijo reduce a la mitad el número de hosts, y cada valor de máscara en el último octeto es uno de los siguientes: 128, 192, 224, 240, 248 o 252. Esos son los únicos valores válidos que puede adoptar el octeto final de la máscara.

VLSM: subredes de diferentes tamaños

La subredación tradicional divide una red en partes de igual tamaño, lo cual supone un desperdicio cuando los departamentos tienen necesidades muy diferentes. El enmascaramiento de subredes de longitud variable (VLSM) resuelve este problema al permitir aplicar diferentes longitudes de prefijo dentro de la misma red global. En la práctica, se trata de crear una subred dentro de otra subred.

Supongamos que tienes 192.168.10.0/24 y necesitas dar servicio a un departamento de 100 hosts, otro de 50 hosts y dos enlaces de enrutador de 2 hosts cada uno. Con VLSM, asignarías:

  • Una /25 (126 hosts) para el departamento grande: 192.168.10.0/25.
  • A /26 (62 hosts) para el departamento mediano: 192.168.10.128/26.
  • Dos /30 bloques (2 hosts cada uno) para los enlaces de los routers, extraídos del espacio restante.

La regla de oro del VLSM es asignar primero las subredes más grandes e ir descendiendo, de modo que los bloques encajen perfectamente sin solaparse. Así es como los planes de direccionamiento del mundo real evitan el desperdicio y, al mismo tiempo, dejan margen para crecer.

Una nota sobre los prefijos IPv6

Todo lo anterior se refiere a IPv4, pero la notación CIDR se aplica directamente a IPv6, solo que con números mucho más grandes. Una dirección IPv6 tiene 128 bits en lugar de 32, por lo que los prefijos llegan hasta /128. El más importante que hay que conocer es el /64: según una convención de larga data, una sola subred IPv6 es un /64, que reserva los primeros 64 bits para el prefijo de red y los últimos 64 bits para el host, o «identificador de interfaz». Esto deja 2^64 direcciones por subred, una cifra casi inimaginable, razón por la cual IPv6 rara vez recurre a las complicadas maniobras de ahorro de direcciones que caracterizan a la subredificación de IPv4. Si deseas una comparación más detallada de ambos protocolos, consulta nuestra guía sobre IPv4 frente a IPv6.

Resumiendo

La subred se reduce a tres conceptos: una dirección IP tiene 32 bits, la máscara determina dónde termina la red y la fórmula 2^(32 − n) indica el tamaño de cada bloque. Domina estos conceptos y el resto es simple aritmética. Empieza por identificar el prefijo, conviértelo en un tamaño de bloque, calcula las direcciones de red y de difusión, y el rango utilizable aparecerá entre ambas. Practica con unos cuantos ejemplos y el proceso se te hará natural. Cuando quieras verificar tu trabajo al instante, introduce cualquier dirección y prefijo en nuestra herramienta «Calculadora de subredes» y compara los resultados con los tuyos.

Preguntas frecuentes

¿Por qué restamos 2 del total de direcciones para obtener los hosts utilizables?

En cada subred IPv4 hay dos direcciones reservadas que no se pueden asignar a dispositivos: la dirección de red (todos los bits de host a 0), que identifica a la subred, y la dirección de difusión (todos los bits de host a 1), que se utiliza para llegar a todos los hosts a la vez. Al restar estas dos, queda el número de direcciones que realmente se pueden asignar a los hosts, de ahí que sea 2^(32 − n) − 2.

¿Cuál es la diferencia entre una máscara de subred y un prefijo CIDR?

Ambos expresan exactamente la misma información en dos formatos distintos. Una máscara de subred como 255.255.255.0 es un valor decimal con puntos de 32 bits, mientras que el prefijo CIDR /24 es simplemente el número de bits a 1 en esa máscara. Cualquier máscara puede escribirse como un prefijo y viceversa; la notación CIDR es simplemente más breve y menos propensa a errores.

¿Qué significa realmente el /24 en una dirección IP?

El número que aparece después de la barra es la longitud del prefijo, es decir, cuántos de los 32 bits de la dirección definen la red. Un /24 reserva los primeros 24 bits para la red y deja 8 bits para los hosts, lo que da un total de 256 direcciones (2^8) y 254 utilizables. Es equivalente a la máscara de subred 255.255.255.0.

¿Por qué sustituyó el CIDR al direccionamiento por clases?

El direccionamiento por clases obligaba a que los tamaños de las redes dieran saltos enormes: 254 hosts, luego 65 000, luego 16 millones, sin nada entre medias. A las organizaciones se les asignaban habitualmente muchas más direcciones de las que necesitaban, lo que suponía un desperdicio del limitado espacio de IPv4. El CIDR permite que el límite de la red recaiga en cualquier bit, de modo que los bloques pueden dimensionarse a medida, y también permite resumir las rutas, reduciendo así las tablas de enrutamiento.

¿Para qué se utiliza una máscara comodín?

Una máscara comodín es el inverso bit a bit de una máscara de subred, que se obtiene restando 255 a cada octeto. Mientras que una máscara de subred coincide con la parte de red, una máscara comodín especifica qué bits pueden variar. Aparece principalmente en las listas de control de acceso de Cisco y en protocolos de enrutamiento como OSPF para describir rangos de direcciones de forma concisa.

¿Se aplican las mismas reglas de subredes a IPv6?

El concepto CIDR es idéntico: una longitud de prefijo tras una barra marca el límite de la red. La diferencia radica en la escala. Las direcciones IPv6 tienen 128 bits en lugar de 32, y el tamaño estándar de la subred es de /64, lo que proporciona 2^64 direcciones de host por subred. Dado que el espacio es tan vasto, la subred de IPv6 se centra en la estructura y la jerarquía, en lugar de aprovechar hasta la última dirección.