¿Por qué las direcciones IP públicas no siempre se muestran con su máscara de subred?

¿Por qué las direcciones IP públicas no siempre se muestran con su máscara de subred?

Me han dicho que una dirección IP pública sin su correspondiente máscara de subred no tiene sentido, porque no se puede saber cómo dividir la identificación de la red de la identificación del host, lo cual tiene mucho sentido para mí.

Sin embargo, la mayoría de las veces veo direcciones IP (DNS, findmyip.com, etc.), solo se trata de IP sin el número cidr. Por ejemplo, acabo de darle a un sitio web solo una dirección IP y me devolvió el nombre de dominio correcto.

Qué me estoy perdiendo ? Supongo que existen otros protocolos que sólo pueden funcionar con direcciones IP, pero aún no he oído hablar de ellos.

Si mi pregunta revela una falta de comprensión básica de cómo funcionan las redes, agradezco mucho los recursos. Soy un desarrollador que me enseña todo esto por mí mismo y, excepto tutoriales de 5 minutos de duración o más de 1000 libros oscuros (Hola, TCP Illustrated), no puedo encontrar el material que estoy buscando.

Respuesta1

Ambas respuestas anteriores son correctas; aquí hay una más detallada y no técnica.

Una computadora solo necesita saber si una dirección IP pertenece a una computadora que se conecta directamente a ella, y las computadoras que pasan a través de un concentrador/conmutador/wifi en la misma "lan") se consideran conectadas directamente.

Para cualquier otra cosa, la computadora sólo necesita saber a dónde enviar el paquete a continuación, es decir, la dirección del enrutador (que a su vez sabe a dónde enviar los paquetes a continuación). Cuando haces un traceroute estás viendo este camino.

La máscara de subred se utiliza para agrupar máquinas que están conectadas directamente; por lo tanto, para las máquinas que no están conectadas directamente, no se requiere una máscara de subred para llegar a ellas.

En particular, un firewall u otro software también puede utilizar una máscara de subred para especificar un grupo de direcciones IP que se tratarán de la misma manera (razón por la cual a veces son relevantes fuera de una LAN), pero no son necesarias para la comunicación general en Internet.

Respuesta2

Todos los sistemas que utilizan TCP/IP para comunicarse con otros sistemas consultan una "Base de información de reenvío" local o una tabla de enrutamiento local mantenida por el sistema.

Una entrada de la tabla de enrutamiento básicamente se ve así:

Red de destino/Puerta de enlace/Máscara de subred de destino/Métrica

Aquí está mi tabla de enrutamiento actual:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    100    0        0 eth2
link-local      0.0.0.0         255.255.0.0     U     1000   0        0 eth2
172.16.160.0    0.0.0.0         255.255.255.0   U     0      0        0 vmnet8
192.168.2.0     0.0.0.0         255.255.255.0   U     100    0        0 eth2
192.168.87.0    0.0.0.0         255.255.255.0   U     0      0        0 vmnet1

Cada vez que el sistema quiere enviar tráfico a una IP, busca en esta tabla. Si encuentra una red de destino que coincide y se ajusta a la máscara de subred, envía tráfico fuera del adaptador de red identificado porYo afronto.

Todos estos adaptadores de red están "conectados directamente", por eso ves 0.0.0.0 para la puerta de enlace. Esto significa que si el sistema quiere enviar algo a 192.168.2.80, por ejemplo, puede enviarlo directamente a 192.168.2.80 a través de la interfaz eth2.

Sin embargo, debido a la máscara de subred, 192.168.87.80 no saldría a través de eth2, sino a través de vmnet1.

Si una IP cabe en dos entradas, se utiliza la que tiene la máscara de subred CIDR más grande (la "más específica"). Si hay dos con la misma máscara de subred, la métrica se usa para romper el empate, y si ese es el momento, el sistema puede elegir uno y seguir con él o equilibrar la carga entre ellos.

p.ej

192.168.2.0     0.0.0.0         255.255.255.0   U     100    0        0 eth2
192.168.2.0     0.0.0.0         255.255.255.240 U     100    0        0 ethX

255.255.255.240 es un CIDR /28 y 255.255.255.0 es un CIDR /24. Entonces, si existieran las dos entradas, algo que saliera a 192.168.2.1 saldría de la interfaz ethX, pero algo que saliera a 192.168.2.241 saldría de la interfaz eth2.

¿Qué pasa si nada coincide? Entonces se utiliza la puerta de enlace predeterminada. Observe que tiene la máscara de subred "más baja" 0.0.0.0 (que es una barra diagonal /0).

Para eso está la subred. Indicar al sistema a qué redes se puede acceder mediante qué interfaz. Su sistema usa esto cuando envía tráfico (para determinar la diferencia entre Internet y la red local) y los enrutadores lo usan para reenviar el tráfico.

Fuera de esas situaciones, no se necesita la máscara de subred. Básicamente, no es necesario pasar la capa de enrutamiento de la red. HTTP es la capa de aplicación.

Respuesta3

La máscara de subred es útil para el propio host y para el equipo de enrutamiento.

Su PC no necesita conocer la máscara de subred de un dispositivo remoto, sólo necesita conocer la dirección y compararla con supropia direccióny espropia máscara de subredsabrá si la dirección es local o remota.

Si es local, los paquetes se enviarán directamente; si es remoto, los paquetes se enviarán a la puerta de enlace predeterminada.

información relacionada