Vamos a considerar una red pública, es decir, formada por host con direcciones IP públicas, que pueden ser vistas por todas las máquinas conectadas a Internet. Hay que tener en cuenta que el desarrollo es igualmente válido para redes privadas, por lo que su aplicación práctica es válida para toda red corporativa. Y para hacer más claro el desarrollo, vamos a parir de una red con dirección IP real.
Vamos a tomar como ejemplo una red de clase C, teniendo claro que lo que expliquemos va a ser útil para cualquier tipo de red, séa de clase A, B o C.
Entonces, tenemos nuestra red, con dirección IP 210.25.2.0, por lo que tenemos para asignar a los host de la misma todas las direcciones IP del rango 210.25.2.1 al 210.25.2.254, ya que la dirección 210.25.2.0 será la de la propia red y la 210.25.2.255 será la dirección de broadcast general.
Si expresamos nuestra dirección de red en binario tendremos:
Con lo que tenemos 24 bits para identificar la red (en granate) y 8 bits para identificar los host (en azul).
La máscara de red será:
Para crear subredes a partir de una dirección IP de red padre, la idea es "robar" bits a los host, pasándolos a los de identificación de red.
¿Cuántos hay bits hay que "robar"?
Depende de las subredes que queramos obtener, teniendo en cuenta que cuántas más bits robemos, más subredes obtendremos, pero con menos host cada una. Por lo tanto, el número de bits a robar depende de las necesidades de funcionamiento de la red final.