Subnetting – Parte 1

Aquí estamos de nuevo. Alguna vez se han preguntado porque ese valor que llamán máscara de subred, a veces tiene valores que no son 255?, solía preguntármelo hace unos cuantos años y se debe a que no siempre usamos direcciones IP con clase. Además, últimamente he tenido varios casos de gente que requiere un empujón aprendiendo a hacer subnetting, así que decidí explicar un poco todo este tema, es algo largo así que lo picaré en varias partes. Y bueno aquí vamos.

IP con clase

[7] Like a sir

Antes de empezar con el tema debemos saber que existe una clasificación de las IP que indica que pueden ser IP con clase (classfull) o IP sin clase (classless), no, no es un meme de like a sir. Cuando decimos que una IP es con clase solo quiere decir que según el 1er octeto de la IP ya debemos saber que máscara de red tiene la IP sin que nadie lo diga. Y cuando decimos que una IP es sin clase siempre debemos indicar la máscara de subred que lleva o la información estará incompleta.

A continuación coloco la tabla de direcciones IP con clase y cómo podemos reconocerla (si no lo recuerda) simplemente viendo el primer octeto en binario.

Clase

Rango

Máscara

1er octeto (bin)

A

0.0.0.0 – 127.255.255.255

255.0.0.0

0XXX XXXX

B

128.0.0.0 – 191.255.255.255

255.255.0.0

10XX XXXX

C

192.0.0.0 – 223.255.255.255

255.255.255.0

110X XXXX

D

224.0.0.0 – 239.255.255.255

N/A

1110 XXXX

E

240.0.0.0 – 255.255.255.255

N/A

1111 XXXX

Es importante destacar que las de clase D, no deben ser asignadas a dispositivos y sólo se usan para dar funciones de red (i.e. enviar mensajes multicast (i.e. protocolo de enrutamiento (i.e. RIPv2 (224.0.0.10)))). Y las clase E son solo para uso experimental o militar, así que los mortales no les damos uso tampoco.

¿Por qué no usar siempre IP’s con clase? El problema de usar IP’s con clase no es – como muchos piensan- que se acabaron las dirección, el principal problema es el tamaño de los dominios de broadcast; para mandar un broadcast en una red clase A por ejemplo, un equipo debe mandar 16.777.214 (2˄24 – 2) paquetes a todos los dispositivos (existentes o no), imagínense lo que sufre el pobre equipo que le toque la tarea de enviar un tonto broadcast, y también las consecuencias para el ancho de banda local.

Subnetting es la solución

Si hacemos que esos dominios de broadcast sean más pequeños, más ajustados a la cantidad de host que realmente están conectados, podemos ser más eficientes. Imagine que la dirección con clase es la torta completa, y según las reglas de subnetting debemos picarla en partes iguales y más pequeñas, suficientes para todos, por ejemplo los 5 dominios que vemos en la imagen.

[7] Subnetting-1

Y ahora la vamos picando en 2, luego horizontalmente dan 4, y si picamos uno más tenemos los 5. ¡Pero no! Como buenos venezolanos hay que picar en partes iguales, para llevarles a mamá y al hermanito, de manera que los cortes deben ser simétricos y binarios. Pueden ver que intentando picar en 5, hemos picado la cosa en 8 partes.

[7] Subnetting-2

Eso explica el principio de la siguiente inecuación, donde:

2˄n ≥ cant. de subredes.

Y n representa en este caso la cantidad de bits de host que la porción de red de una dirección ip debe tomar prestada para picar la cantidad de subredes que deseamos.

Para este ejemplo, 2˄n ≥ 5, entonces n debe ser igual a 3 para que se cumpla la inecuación. En cristiano, en la dirección de red con clase, debemos tomar 3 bits de host prestados, que pasaran a formar parte de la porción de red, generando al menos 5 subredes (8 en realidad).

Empezaré por colocar los parámetros para el segmento A, desglosando en binario para poder sacar las cuentas adecuadas. Como pueden ver, la porción de red original es intocable, por eso ni siquiera la desgloso en binario. Luego, vean que tomé los 3 bits prestados a continuación trazando una línea imaginaria que marca la nueva máscara de subred. Ahora, del lado izquierdo de la línea coloco un identificador único para todos los cálculos de este segmento, simplemente puedo decir que son 0, el siguiente segmento es 1, el siguiente es 2 (en binario) y así sucesivamente. Y del lado derecho van parámetros que definen una subred y que valga la redundancia son una definición.

192.168.16.

0 0 0 | 0 0 0 0 0

>

Dir. de Red

0 0 0 | 0 0 0 0 1

>

1er Host

0 0 0 | 1 1 1 1 0

>

Ult. Host

0 0 0 | 1 1 1 1 1

>

Broadcast

Dirección de Red: Dirección que defina la subred. Todos los bits de host apagados.

1er Host: siguiente combinación a la dirección de red.

Ult. Host: último host utilizable de la red, antes del Broadcast.

Dirección de Broadcast: Dirección de difusión de la red. Todos los bits de host encendidos.

Y la máscara que sería igual para todas las subredes porque estamos picando en partes iguales, debe ser colocar 1’s de izquierda a derecha en toda la porción de red y 0’s en la porción de host. Es decir,

11111111.11111111.11111111.11100000 = 255.255.255.224 = /27

/27 quiere decir que hay 27 1’s encendidos de izquierda a derecha. Simplemente otra forma de expresar una mácara.

Si lo traducimos al sistema decimal, que es el que en realidad  usamos:

Dir. de Red: 192.168.0.0/27

1er Host: 192.168.0.1/27

Ult. Host: 192.168.0.30/27

Broadcast: 192.168.0.31/27

A continuación, podemos hacer lo mismo con el segmento B, sólo que ahora debemos fijar un identificador de subred distinto para no solapar una subred con otra:

192.168.16.

0 0 1 | 0 0 0 0 0

>

Dir. de Red

0 0 1 | 0 0 0 0 1

>

1er Host

0 0 1 | 1 1 1 1 0

>

Ult. Host

0 0 1 | 1 1 1 1 1

>

Broadcast

En decimal:

Dir. de Red: 192.168.0.32/27

1er Host: 192.168.0.33/27

Ult. Host: 192.168.0.62/27

Broadcast: 192.168.0.63/27

Y así, poco a poco podríamos calcular las 5 subredes que necesitamos.

Seg Red 1er Host Ult. Host BC
A 192.168.0.0 192.168.0.1 192.168.0.30 192.168.0.31
B 192.168.0.32 192.168.0.33 192.168.0.62 192.168.0.63
C 192.168.0.64 168.168.0.65 192.168.0.94 192.168.0.95
D 192.168.0.96 192.168.0.97 192.168.0.126 192.168.0.127
E 192.168.0.128 192.168.0.129 192.168.0.158 192.168.0.159

Todas con la máscara 255.255.255.224, o lo que es lo mismo, /27.

Tips:

  1. Luego de sacas un par de redes, como esto es subnetting y son partes iguales, es fácil ver que hay un patrón. Por ejemplo aquí hay saltos de 32 en 32.
  2. Al picar en partes iguales estamos diciendo que la máscara es igual para todos.
  3. La dirección de Red siempre es un número par.
  4. La dirección de Broadcast siempre es un número impar.

Espero les sea de utilidad, en cuanto pueda explicaré la segunda parte, como hacerlo no en función de cuantas redes se necesitan, sino en función de cuantos host existen en cada red, lo cual se apega más a la realidad de lo que se aplica en la calle.

 

[Subnetting – Parte 2]
@betor86

Beto

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s