Resumen del direccionamiento IP
Una dirección IP (V4) es un identificador compuesto de 32 bits. Estos 32 bits se agrupan en cuatro octetos. Estos octetos convertidos decimal y separados por un punto es lo llamamos una dirección IP.
Ejemplo formato decimal por puntos: 192.168.35.48
Evidentemente el valor de cada octeto es 0-255.
En el origen de IP, la división en octetos del espacio de 32 bits, fue motivado para que el esquema de direccionamiento se pudiera adaptar a redes de diferentes tamaños. Así se definieron cinco clases de redes, de la A a la E.
La clase de red quedaba determinada por los tres primeros bits de orden más alto (los de la izquierda) de una dirección IP.
Este última frase es clave para entender cómo funcionó IP inicialmente y porqué el sistemas de clases IP perdió fuelle con el tiempo.
La siguiente tabla resume las clases de red IP:
Clase | Bits de inicio | Intervalo | N.º de redes | N.º de direcciones por red | N.º de hosts por red | Máscara de red | Id. broadcast |
---|---|---|---|---|---|---|---|
A | 0 | 0.0.0.0 – 127.255.255.255 | 126 | 16 777 216 | 16 777 214 | 255.0.0.0 | x.255.255.255 |
B | 10 | 128.0.0.0 – 191.255.255.255 | 16 384 | 65 536 | 65 534 | 255.255.0.0 | x.x.255.255 |
C | 110 | 192.0.0.0 – 223.255.255.255 | 2 097 152 | 256 | 254 | 255.255.255.0 | x.x.x.255 |
D (Multicast) | 1110 | 224.0.0.0 – 239.255.255.255 | 255.255.255.255 | ||||
E (experimental) | 1111 | 240.0.0.0 – 255.255.255.255 | 255.255.255.255 |
Dirección red es aquella en la que todos los bits de la porción de host están a cero.
La dirección de broadcast en aquella en la que todos los bits de la porción de host están a 1. Esta dirección especial se llama dirección de broadcast de la red IP y se utiliza apara enviar paquetes a todos los host de la red IP definida.
Por lo tanto estas dos direcciones especiales, hacen que el rango de host válido en una red IP sea el número máximo de host posibles menos dos.
Ahora podemos hacernos una pregunta simple ¿que parte de la dirección 172.17.57.99 es la red y qué la dirección de host? Para eso se crearon las máscaras de red. Una máscara de red no es más que un número binario de 32 bits que contiene unos «1» en todos los bits de la dirección que identifica a la red, y ceros «0»en las posiciones de la dirección que corresponden al host.
Como se puede entender, las clases A, B y C poseen máscaras implícitas llamadas máscaras naturales, ya que en la dirección IP se están definiendo bits de inicio implícitos de una red.
El subnetting IP
Tras la expansión en el uso del sistema de direccionamiento IP, surgió la necesidad de cosas como disponer de espacios de redes mayores de 256 para clase C o menores de 16.384 para clase B por ejemplo. Con el juego de los bits de máscara podemos definir redes IP diferentes a las clases stándares.
Por ejemplo, sabemos que la red 172.17.0.0 es una red de tipo B y le corresponde de manera natural la máscara 255.255.0.0.
Por tanto si tengo por ejemplo la dirección de host 172.17.12.95 ya sabemos que es de clase B y que pertenece a la red 172.17.0.0 sin necesidad de especificar máscara ninguna. Y esto es así porque el 172 inicial de la dirección pertenece a la clase B.
Ahora bien ¿Y si queremos disponer de redes más pequeñas que pertenezcan al espacio de direccionamiento 172.17.x.x?
Nada impide hacer lo siguiente:
172.17.1.0 255.255.255.0
172.17.2.0 255.255.255.0
172.17.3.0 255.255.255.0
..etcétera.
Pero claro la red 172.17.1.0 255.255.255.0 no es en realidad una red de clase C, sino que con la máscara hemos definido una subred (subnet) de tipo C dentro de la red 172.17.0.0 que es una red tipo B y mucho más amplia.
Así pues este subnetting permite tener redes más pequeñas dentro de una red estándar mayor.
A nivel de routing todas esas subredes de tipo C quedan englobadas en una sola ruta de tipo B y el router de la red sólo necesita una ruta para el encaminameinto de estas subredes.
Además del subnetting, este juego con los bits de máscara permite hacer lo contrario que el subnetting y se llamó sumarizacion de redes IP.
Si tenemos redes de tipo C como por ejemplo:
189.34.1.0
189.34.2.0
189.34.3.0
… etcétera.
podrían ser sumarizadas en una red 189.34.0.0 con máscara 255.255.0.0 que en realidad no es una red de tipo B. Este tipo de cosas se ha utilizado especialmente en enrutamiento IP.
CIDR
CIDR, en esencia, aplica lo mismo que el subnetting pero ampliando el concepto.
En CIDR no existen clases A, B o C. El valor de la dirección IP no implica ninguna máscara implícita, como sucedía antes con los primeros bits de la dirección. Toda definición de una red IP debe ser acompañada de una definición de máscara que concreta la red.
Por ejemplo, cuando hablamos en términos de CIDR no podemos decir que la dirección 172.17.25.12 pertenezca a la red 172.17.0.0 a menos que se especifique como 172.16.25.12/16.
En CIDR ya no se utiliza el término «clase de una red», ya no hay clases como tal, sino redes definidas por el prefijo que acompaña a la dirección de red.
Como se puede entender en CIDR tampoco podemos aplicar el concepto de subnetting tradicional. CIDR define una jerarquía de redes, cada una con su tamaño específico, y que algunas pueden encajar dentro de otras.
Este concepto de encaje es importante.
El que hablemos de IP subnetting o CIDR dentro del direccionamiento de una red local no es en sí relevante, sino más bien en el campo del routing IP donde anteriores técnicas de «sumarización de redes» ahora son tratadas como simple especificación del espacio de red por CIDR.
Por otra parte CIDR hizo suya la nomenclatura de barra invertida, del tipo /xx (donde xx representa los bits puestos a 1 de la máscara en binario) y está basada en lo que se denominó variable-length subnet masking (VLSM).
Así por ejemplo, hablando en términos de subnetting, podemos decir que la red:
172.17.11.25 con máscara 255.255.255.0 (que no es en realidad una red de clase C) es una subred (o subnet) de la red de clase B 172.17.0.0.
Evidentemente existe una coincidencia entre las máscaras tradicionales de las clases de red IP y las equivalentes en CIDR como se muestra en la siguiente tabla:
Clase | Bits de inicio | IP Subred | IP Broadcast | Máscara en decimal | CIDR |
---|---|---|---|---|---|
A | 0000 | 0.0.0.0 | 127.255.255.255 | 255.0.0.0 | /8 |
B | 1000 | 128.0.0.0 | 191.255.255.255 | 255.255.0.0 | /16 |
C | 1100 | 192.0.0.0 | 223.255.255.255 | 255.255.255.0 | /24 |
D | 1110 | 224.0.0.0 | 239.255.255.255 | 255.255.255.255 | /32 |
E | 1111 | 240.0.0.0 | 255.255.255.254 | 255.255.255.255 | /64 |