¿Por qué necesitamos una máscara de subred?

37

Dado que una dirección IPv4 ya proporciona la información de la red y el host, ¿por qué todavía necesitamos una máscara de subred?

El 1er octeto ya especifica la clase de red (1-127: A, 128-191: B, 192-223: C, etc.). A, B o C implica el número de octetos para la red (respectivamente, 255.0.0.0, 255.255.0.0, 255.255.255.0), que le indica automáticamente cuántos hosts se permiten para cada clase de red.

La IP proporciona toda la información que tiene una máscara de subred y más. ¿Por qué necesitamos una máscara de subred en primer lugar? Si la información que contiene una subred no es completamente un subconjunto de la que está dentro de una IP, entonces, ¿qué más contiene o qué hace la subred, además, que requiere que la especifiquemos de forma independiente?

KMC
fuente
21
Las clases A, B, C son de 1980 y han muerto hace mucho tiempo. Cuando se produjo el agotamiento de la dirección, se dio cuenta de que una gran cantidad de espacio asignado de Clase A y B se desperdiciaba totalmente en los titulares, por lo tanto, CIDR y la asignación dada de pequeños bloques de direcciones utilizables en todo el espacio de direcciones.
Fiasco Labs
2
@FiascoLabs Eso no responde a su pregunta, amigo. ¿Los enrutadores todavía usaban esas máscaras de subred? Sí, con clase (si no hay más subredes, lo que tal vez sea poco probable), la máscara de subred se puede calcular a partir de la dirección. Pero a) ¿es necesario usar una máscara de subred con un AND lógico, si ya sabe cuántos bits desea, y por qué es eso? Probablemente debido a que las operaciones de la CPU no pueden probar x bits de un byte, por lo que otros deben cerrarse y se aplica el operador EQU.
barlop
8
Los enrutadores con los que he trabajado no suponen que el primer octeto de Clase A, B o C signifique algo. Siempre he tenido que configurar una máscara de red o CIDR para que el enrutador sepa las direcciones donde se ubicaron la red y la transmisión. Por supuesto, las asignaciones de direcciones de clase tienen máscaras de red realmente fáciles, 255.0.0.0, 255.255.0.0 y 255.255.255.0, por lo que sí, es necesario usar una máscara de subred.
Fiasco Labs
VLSM: máscaras de sumbet de longitud variable, ¡puede crear una red o dominio de difusión tan grande o tan pequeño como desee!
Mark S.
3
Incluso en los días de clases, puede tener una red grande dividida en subredes (sic) en varias otras más pequeñas. Una estación de trabajo en una universidad grande aún tendría una dirección en una red de clase A, pero podría ser una subred de una subred de una subred de toda la clase A. Así que, naturalmente, los enrutadores no hicieron suposiciones.
Alexios

Respuestas:

38

Necesitamos una máscara de subred para las direcciones IPv4 porque la dirección no proporciona ninguna información sobre el tamaño de la red. Los tamaños de clase no son los tamaños de red. En las redes prácticas, todas las redes IPv4 se dividen en subredes que son más pequeñas que el tamaño de la clase.

Por ejemplo, podría dividir la red de clase C 200.200.200.0/255.255.255.0 en dos redes más pequeñas (potencialmente en ubicaciones separadas) 200.200.200.0/255.255.255.128 y 200.200.200.128/255.255.255.128 suponiendo que ninguna de ellas necesita más de 126 hosts. En realidad, la mayoría de las empresas solo obtienen suficientes direcciones IPv4 para los servidores que necesitan estar en la Internet pública. Personalmente he visto configuraciones con redes de 32,16 y 8 direcciones (que serían máscaras de 255.255.255.224, 255.255.255.240 y 255.255.255.248 respectivamente)

Tener redes IP solo en bloques de tamaño de clase era demasiado restrictivo ya que limitaba el número de redes que podían permitirse: las 127 redes de clase A ocupaban la mitad del espacio. Sin mencionar que tener una red de 24 mil millones de nodos es completamente inmanejable. En cambio, en 1993 se introdujo el enrutamiento entre dominios sin clase (CIDR) para permitir que las redes se dividieran.

También para ser claros, el propósito de la máscara de subred es determinar qué hosts están en la red local y cuáles están fuera de la red. Los hosts pueden comunicarse directamente con los hosts en la misma red, pero necesitan comunicarse con un enrutador para comunicarse con los hosts en redes externas.

shf301
fuente
cuando utiliza CIDR, adjunta un prefijo para especificar el número de bits utilizados para el direccionamiento de red y el resto para las direcciones de host. Por ejemplo, 200.200.200.0/27, implica automáticamente que la dirección del host debe ser 63 o inferior. Una vez más, la IP aún le dice esta información, por lo tanto, persista mi pregunta ...
KMC
Sigue siendo una dirección y una máscara de red cuando todo está dicho y hecho, y eso es lo que utiliza el hardware subyacente para calcular su bloqueo de red, ¿no es así?
Fiasco Labs
Mi pregunta es persistente porque la IP todavía contiene toda la información que necesita tener una máscara de subred. Todavía no encuentro ninguna razón para que exista una máscara de subred.
KMC
1
@KMC: Realmente no recibo su comentario, un prefijo CIDR es comparable a una máscara de subred y software, por lo tanto, a menudo usa el prefijo o la máscara, por gusto.
Legolas
20
@KMC: /27 es la máscara de subred, recién escrita en una notación diferente.
Heinzi
20

El 1er octeto ya especifica la clase de red (1-127: A, 128-191: B, 192-223: C, etc.). A, B o C implica el número de octetos para la red (respectivamente, 255.0.0.0, 255.255.0.0, 255.255.255.0), que le indica automáticamente cuántos hosts se permiten para cada clase de red.

Correcto, pero si alguien conectara esa red, necesitaría la máscara de subred para saber qué tan grande era una subred. Sí, con direccionamiento con clase, la clase le indica el tamaño de la red y le permite saber si un El host está en la misma red que usted, pero si esa red está dividida en subredes, sin la máscara de subred, ¿cómo podría saber si otro nodo está en la misma subred que usted?

Digamos que estás en una red Ethernet. Utilizamos direccionamiento con clase con subredes. Su dirección IP es 1.2.3.4y desea llegar 1.3.1.1. ¿Utiliza ARP para llegar a esa dirección? Bueno, depende de si 1.2.3.4y 1.3.1.1están en la misma subred . Incluso si están en la misma red, si hay subredes diferentes, se debe usar un enrutador. Si están en la misma subred, entonces se debe usar ARP.

Por lo tanto, necesita la máscara de subred si la subred está en uso, incluso con redes con clase.

Creo que en realidad estás confundiendo subredes con CIDR. Sin CIDR, incluso con subredes, no necesita la máscara de subred entre regiones administrativas. ¡Pero aún lo necesitas dentro de la red!

David Schwartz
fuente
6

Una máscara de subred se utiliza para realizar operaciones con bits en una dirección IP, junto con una dirección de red. Si mi memoria me sirve, tomas una dirección IP y haces un poco de Y en ella y la máscara de subred para una red determinada. Si el resultado es igual a la dirección de red, entonces la dirección IP está en esa red en particular. Los enrutadores que tienen tablas de enrutamiento de direcciones de red y máscaras de subred pueden usar cálculos matemáticos binarios simples (que es muy rápido, si no el más rápido para que lo manejen las computadoras) para averiguar desde qué interfaz eliminar un paquete.

Adrian Thompson Phillips
fuente
3

"El primer octeto ya especifica la clase de red (1-127: A, 128-191: B, 192-223: C, etc.)".

Hoy en día no hay muchos protocolos de uso común que respeten esto (vea el comentario de @Fiasco Labs: RIP es el único que se me ocurre). Entonces, esta declaración en su pregunta:

La IP proporciona toda la información que tiene una máscara de subred y más.

No es cierto para la gran mayoría de los protocolos que se utilizan actualmente en Internet.

Si tiene varias máquinas conectadas entre sí, y solo se comunican entre sí, sin ningún enrutador, entonces la máscara de subred no es realmente necesaria (aunque las pilas TCP / IP modernas insisten en que especifique una).

Los enrutadores definen los bordes de las (sub) redes. Cualquier cosa que necesite pasar por un enrutador está en una red diferente, y viceversa: cualquier cosa que necesite ir a una red diferente debe pasar por un enrutador.

La máscara de subred es cómo todas las máquinas pueden determinar si el tráfico es para la red actual o si debe enviarse a un enrutador para llegar a su destino. La pila TCP / IP de su computadora enviará su tráfico directamente al destino si está dentro de la máscara de subred, de lo contrario, consulta su tabla de enrutamiento, y la situación habitual es que envía otro tráfico a la puerta de enlace predeterminada.

LawrenceC
fuente
3

El 1er octeto ya especifica la clase de red (1-127: A, 128-191: B, 192-223: C, etc.). A, B o C implica el número de octetos para la red (respectivamente, 255.0.0.0, 255.255.0.0, 255.255.255.0), que le indica automáticamente cuántos hosts se permiten para cada clase de red.

Si bien esto fue históricamente cierto. Esto no ha sido cierto durante años. Hace años, 24.0.0.0/8 se entregó en partes a varios ISP. (Creo que esto fue principalmente para los proveedores de cable).

Incluso cuando era cierto para las asignaciones de red, las máscaras de red eran necesarias para que las redes internas simplificaran el enrutamiento. El enrutamiento eficiente de una red como 10.0.0.0/8 requiere subdivisión en redes más pequeñas. Este puede ser un esquema simple que utiliza subdivisiones / 16 y / 8, pero es más probable que sea una subdivisión sin clases. Las subredes más grandes hacen un uso más eficiente del espacio de direcciones (más del 99% de a / 24 está disponible para dispositivos, mientras que solo el 50% de a / 30 está disponible).

La red local se enruta directamente desde el dispositivo, mientras que otras direcciones se pasan a través de un enrutador. Los hosts con múltiples interfaces pueden conectarse a redes de diferentes tamaños.

Para subredes sin hosts con múltiples hosts, a / 24 contiene más direcciones de las requeridas. La mayoría de los enrutadores con los que he trabajado tienen 24, 48 o 96 puertos y se pueden admitir con subredes / 27, / 26 o / 25. Esto permite algunas direcciones adicionales para DCHP y / o multi-homing. Las organizaciones pueden estandarizar la asignación de subredes de / 24 o / 23 para el enrutamiento.

Dado que una dirección IPv4 ya proporciona la información de la red y el host, ¿por qué todavía necesitamos una máscara de subred?

Muchos dispositivos usan una máscara de red predeterminada de / 24 que en muchos casos coincide con el tamaño de la subred local (localnet) asignada al enrutador. Esto es igualmente aplicable a las clases A, B y C. A menos que el tamaño de la subred coincida con la subred predeterminada, se requiere una máscara de red.

Si las direcciones se especifican utilizando el formato CIDR, la máscara de red y la red se pueden calcular a partir de la dirección. Si no, la red se puede calcular a partir de la dirección y la máscara de red. No es posible calcular de manera confiable la máscara de red a partir de la dirección y la red.

Proporcionar una dirección de puerta de enlace (enrutador) para una subred permite configurar la ruta predeterminada permitiendo el enrutamiento a direcciones fuera de la subred.

BillThor
fuente
2

Excepto por la respuesta de @ Adrian, no estoy seguro de que ninguno de ellos mencione realmente POR QUÉ usamos la máscara en lugar de una solución más simple de entender, y solo mencionó el hecho de que el enmascaramiento es RÁPIDO, quiero decir, ¿por qué no solo especificas que eres interesado en las direcciones 192.168.1.200-192.168.1.220, o ¿por qué no usar nombres como * .my.address.com para esto, simplemente nombrar cada computadora en lugar de asignar números?

En realidad, ahora podría eliminar por completo hasta cierto punto los números del enrutamiento, la mayoría de las PC podrían manejar los tipos de tráfico que se envían, pero todavía hay un problema en los dispositivos de mayor escala.

Filtrar de esta manera está sucediendo todo el tiempo, y está sucediendo MUCHO. El enmascaramiento se puede hacer en hardware, eliminando por completo la necesidad de perder tiempo en paquetes poco interesantes (que solían ser el 99% de los paquetes que pasaría por su cable, ahora con concentradores conmutados no debería ver ninguno que no sea dirigido a su máquina, de nuevo haciéndola menos relevante

Para una solución que es tan fácil para el hardware, también es muy flexible. El mismo hardware puede enrutar una red completa de clase A (10.xxx) o solo una o dos direcciones IP con la misma implementación.

Este no es un reemplazo para ninguna de las otras respuestas, solo un poco más de información.

Bill K
fuente
"¿por qué no simplemente usar nombres como * .my.address.com para esto, simplemente nombrar cada computadora" - quieres decir, como, DNS?
Piskvor
@Piskvor Exactamente! DNS se resuelve en direcciones IP, puede usar DNS directamente pero la potencia de procesamiento utilizada aumenta. Incluso podría subdividir dominios para que * .meh.com vaya a una dirección excepto * .alt.meh.com a otra ...
Bill K
Eso funciona, sí, es decir, cuando funciona (complejidad adicional); Además, necesita saber dónde está el servidor DNS; problema de huevo y gallina.
Piskvor
@Piskvor Solo digo que hay otras posibilidades que funcionarían bien, excepto el rendimiento, que aún es importante en algunos casos, y el hecho de que requeriría volver a escribir TODO. (¿Realmente cree que el problema con un servidor DNS sería diferente si cambiara a un esquema de direccionamiento diferente?)
Bill K
No, el problema persistiría. (y por cierto, el impulso para una pila de red simple no va a desaparecer; todo lo contrario, fortaleciéndose con el "internet de las cosas": simple también significa menos energía necesaria y mayor duración de la batería)
Piskvor
1

Ya hay muchas cosas explicadas en otras respuestas, pero no lo principal.

Desea saber, si la dirección IP ya puede proporcionarle la dirección completa del destinatario, entonces por qué existen máscaras de subred. Usted sabe, en organizaciones grandes, a veces los departamentos necesitan redes separadas, por lo que, por ejemplo, los contadores están en una subred diferente y no pueden acceder a las direcciones IP internas del departamento de marketing. Entonces, por ejemplo, un empleado con la IP 192.168.10.3 no podría acceder a la impresora en 192.168.15.76, porque estaría en una subred diferente.

Luka Ramishvili
fuente
1

Hasta la fecha, todavía no hay respuesta en cuanto a por qué las subredes (a diferencia de CIDR) todavía están en uso. Hay dos problemas con las máscaras de subred:

  1. puede especificar máscaras no contiguas, que no son válidas.
  2. (también se aplica a CIDR) introducen una posible superposición: los ISP podrían proporcionar la misma dirección IP como parte de diferentes subredes. p.ej

    cliente A: 22.132.124.121 máscara de subred 255.255.255.0
    cliente B: 22.132.114.55 máscara de subred 255.255.0.0

que no es inmediatamente visible como debería ser.

https://blog.certskills.com/ccent/vlsmo_01_01/

LogicBreaker
fuente
0

Noralmente, la máscara de subred funciona como un indicador de las subredes siguientes. por lo general, una red contiene varias subredes y la máscara de subred es la forma, el enrutador utiliza, para entregar tráfico al destino específico (en cualquier subred que use la máscara de subred) este enlace contiene una introducción a las máscaras de subred

Salah Amean
fuente
1
Agregue la información importante del enlace aquí, agregue el enlace como fuente.
avirk