La semana pasada prometí mostrar cómo se hace subnetting y me fui por las ramas XD Lo siento, ahora les voy a describir un pequeño ejemplo de subnetting usando una red similar a la que hemos venido usando. Disfrútenlo.
Introducción: agencia de turismo «Ahí te ves»
Antes de continuar los invito a que echen un ojo a la entrada anterior, dado que tiene las bases de lo que voy a describir hoy. La topología típica que hemos usado tiene dos routers, un switch y dos redes LAN, en ese escenario les he dicho que tenemos tres subredes: Lan1, Lan2 y el enlace entre los routers. El día de hoy vamos a usar un escenario un poco más realista y tendremos tres sucursales interconectadas directamente entre sí y asumiremos que es una agencia de turismo llamada «Ahí te ves». La actividad principal está en Mérida, donde se prevén 100 empleados en principio, luego la otra sucursal está en Ciudad de México y tendrá máximo 50 empleados pero ambas deben acceder a un Datacenter que está en Guadalajara y tendrá 10 servers con diferentes propósitos. El escenario lo esquematizaríamos de la siguiente manera:
Finalmente, por ahora la organización sólo necesita conectividad interna (sin acceso a Internet) y se tiene disponible una IP privada clase C: 192.168.0.0/24, de ésta tomaremos todos los segmentos. En los temarios de CCNA se llama a éste ejercicio: subneteo de una IP Clase C y es el ejercicio más fácil que se puede hacer.
Análisis: subredes, cantidades de hosts y máscaras
Cuántos segmentos IP tiene el diagrama? Tenemos tres redes LAN y tenemos tres enlaces entre routers, es decir, tenemos seis segmentos IP o subredes. Hay que tener en cuenta, que una de las IPs que se usan serían asignadas a la interfaz del router que atiende la red (podría estar contemplada en el requerimiento inicial).
Nuestras decisiones de base son que las direcciones a asignar a los routers serán las primeras disponibles en el segmento y están incluídas en el requerimiento. Según lo anterior, la red más grande es la de Mérida con 100 hosts (incluido la puerta de enlace), le sigue CDMX con 50 y luego el Datacenter de GDL con 10, después de contemplados éstos segmentos, en ese orden, se deben asignar las IPs de los enlaces entre los routers: CDMX-GDL, CDMX-MER y MER-GDL, cada uno necesita sólo 2 IPs (un router en cada lado).
Las fórmulas clásicas
Vamos a denominar h a la cantidad de bits de hosts, n a la porción de red y sn a la porción de subred, es decir, una IP consistiría en n bits de red, sn bits de subred y h bits de host y la suma debe dar 32. La porción de red está dada por la clase, en éste caso clase C que significa que la cantidad de bits de red es 24, nos quedan 8 bits para dividir entre subred y host. Podemos asignar las porciones según el requerimiento: si nos basamos en la cantidad mínima de hosts, decidimos cuánto debe ser h, si nos dicen que deben ser cierta cantidad de subredes decidimos sn, en éste caso, tomaremos como base la cantidad de hosts.
La cantidad potencial de hosts de una subred es 2^h – 2, es decir, 2 elevado a la potencia h (cantidad de bits de host) pero quitandole la 1a dirección y la última, que son dirección de red y de broadcast respectivamente. Para hallar h debemos pensar un poco a la inversa: cuántos bits de host me alcanzan para numerar hasta la cantidad de hosts que se requieren, por ejemplo, si piden capacidad para 50 hosts, la solución está dada por la fórmula: 2^h – 2 > 50, es decir, dos elevado a la cantidad de bits de host menos dos debe ser igual al nro de hosts solicitado. Juguemos con h: si h es, digamos, 5, 2^5=32 – 2 = 30, no es mayor a 50, por ende no nos sirve. Me voy a saltar las otras posibilidades, h debe ser 6 dado que 2^6-2=62, lo cual es claramente mayor que 50 y me sirve, es decir, las direcciones IP de ésta subred tendrán 24 bits de red (n), 2 bits de subred (sn) y 6 bits de host (h). Operativamente los hosts no saben de los bits de subred, en realidad ellos sólo tienen porción de red y de host, lo cual lo determinan a partir de la máscara, que en éste caso sería /26 o 255.255.255.192. Para cualquier host en esa red, la parte de red de su dirección IP son los primeros 26 bits de su propia dirección seguida de 6 ceros.
¿Cómo calcular el broadcast (y el rango de IPs válidas)?
Si conocemos la máscara, sabemos la porción de host, es decir, si la máscara es /26 la porción de host debe ser 6, si la máscara es /18, la porción de host es 14 y así. La porción de host es lo que falte para completar 32. Una dirección de red consiste en una dirección que tiene la porción de host en ceros, por ejemplo: 192.168.0.0/24, si se fijan los últimos 8 están en cero (en binario), igual para 192.168.0.32/28, la porción de host son los últimos 4 bits y 32 en binario es 00100000, es decir, tenemos los últimos 4 bits en cero.
De otro lado, la dirección de broadcast de una red es lo contrario que la de red: una dirección que tiene toda la porción de host en unos. En el ejemplo anterior, la dirección 192.168.0.255/24 es el broadcast de la red porque tiene los últimos 8 bits en 1 (11111111b = 255d), el otro ejemplo es 192.168.0.47/28, porque si nos fijamos en el nro 47 en binario 00101111 éste tiene los últimos 4 bits en 1, pero todo lo demás coincide con la dirección de red a la cual pertenece. Tómense un tiempo para analizar éste cálculo, que es determinante para aprobar el examen 200-301.
Cómo se calcula la dirección de broadcast? Vamos a sumar cierto número relacionado con la cantidad de hosts de la red, si la red tiene un potencial de 64 IPs (incluyendo red y broadcast), sumamos 63 a la dirección de red, si la red tiene potencial de 16 IPs (incluyendo red y bcast.), se le suman 15 a la dirección de red. Por qué? simple, dado que sabemos cuánto es la porción de host, esa misma cantidad de bits en 1 es 2^h-1. Por ejemplo, en el primer ejemplo la máscara es /24, por ende h es 8. 2^8 es 256, y 256-1 en binario es 11111111, es decir, 8 unos seguidos. Segundo ejemplo: la red es 192.168.0.32/28, la porción de host es 4, 2^4=16, 15 en binario es 1111, por ende la dirección de broadcast es 192.168.0.47/28 (32 + 15). Comprender y ser capaz de calcular los rangos de las subredes es crítico para aprobar el examen de certificación, si quiere leer más al respecto lo invito a echarle un ojo a ésta publicación: conversión binaria fácil.
Los métodos: VLSM versus máscara fija
Hoy en día se usa una técnica muy simple llamada VLSM para asignar las subredes, antes se usaba que todas las subredes fueran del mismo tamaño, es decir, con la misma máscara (la de mayor capacidad). Este método desperdiciaba muchas direcciones IP y por ende ya no se usa. VLSM en realidad es muy simple: sólo se ordenan las redes de mayor a menor y se asignan las direcciones de subred.
En nuestro caso, las redes en orden serían así (en paréntesis el nro de hosts solicitado): MER (100), CDMX (50), GDL (10), MER-CDMX (2), CDMX-GDL(2) y MER-GDL (2). Lo más importante es que las direcciones IP no se traslapen, es decir, que una subred no tenga una parte que se corresponda con otra, por ejemplo, si una subred tiene la dirección 192.168.1.0/26 y otra tiene la 192.168.1.32/27, las direcciones IP de la primera incluyen las direcciones IP de la segunda. Ésta es la situación que debemos evitar. Si quiere leer y hacer algunos ejercicios útiles, lea mi publicación Ejercicios fáciles de VLSM.
Para asignar la primera subred, se usa la misma red base sólo que con una máscara diferente. Tenemos que calcular qué máscara sirve y hallar la primera y la última dirección, éstas serán la red y el broadcast que no se podrán usar, todo lo demás son direcciones IP asignables o válidas, entre éstas usaremos una para la puerta de enlace y el resto para cada host que haya que configurar.
Vamos a hacer el ejercicio propuesto:
- MER: para numerar hasta 100 hosts necesitamos 7 bits en la porción de host (2^7-2=126), por ende la máscara sería /25 o 255.255.255.128. Para hallar la última IP, es decir la dirección de broadcast, le sumamos a la red 2^h-1, es decir 127 en éste caso. El rango de ésta subred es 192.168.0.0/25 hasta 192.168.0.127/25, excluyendo éstos dos, todos los números entre ellos son direcciones IP válidas, por ejemplo: 192.168.0.1/25 que podría ser la IP de la interfaz del router que atiende ésta subred. La última dirección IP utilizable sería la 192.168.0.126/25.
- CDMX: para numerar hasta 50, necesitamos 6 bits (2^6-2=62), la máscara sería /26 o 255.255.255.192 y el rango de IPs sería desde 192.168.0.128/26 hasta 192.168.0.191/25 (le sumé 61 a la red) y, excluyendo éstas dos IPs estarían todas las IPs válidas de ésta subred.
- GDL: para numerar hasta 10 necesito 4 bits (2^4-2=14), la máscara sería /28 o 255.255.255.240, el rango de IPs sería desde 192.168.0.192/28 hasta 192.168.0.207/28
- Enlaces: El caso de los enlaces es un caso particular, en el que sólo necesitamos dos direcciones IP, 2^2-2=2, por ende la máscara es /30 y el broadcast suma 3. Las subredes serían: MER-CDMX: 192.168.0.208/30 – 192.168.0.211/30, CDMX-GDL: 192.168.0.212/30 a 192.168.0.215/30 y MER-GDL: 192.168.0.216/30 a 192.168.0.219/30 (todas direcciones de red y broadcast respectivamente).
Resultado final
Con todo lo que acabamos de hacer, el resultado de nuestra red sería el siguiente, en el cual reemplazamos las direcciones de red por las direcciones específicas de cada dispositivo, es decir, las que debemos configurar:
El siguiente paso sería hacer la configuración, pero todavía tenemos que ver con más detalle el tema del enrutamiento 🙂
Conclusiones y siguientes pasos
Mi intención con ésta publicación fue compensar lo que quedó faltando de la publicación anterior, por eso es sólo un ejercicio simple explicado paso a paso y con un buen nivel de detalle, lo cual da un buen inicio y se ve como algo simple. Sin embargo, el tema de las subredes se va volviendo cada vez más complejo y se deben hacer muchos ejercicios, yo les recomiendo leer mis otras publicaciones sobre el tema, una a una y hacer los ejercicios para alcanzar la maestría. Les dejo mi tutorial de subredes por si quieren practicar de una vez.
Queda pendiente, hacer el mismo contenido en IPv6, probablemente lo haré la próxima semana. Si les gustó el ejercicio comenten y compartan. Gracias