Entiendo que las direcciones privadas como 10.0.0.0/8
, 172.16.0.0/12
y192.168.0.0/16
no son enrutables. Sin embargo, ¿qué es exactamente lo que impide que estas direcciones sean enrutables? ¿Los ISP implementan ACL que impiden el enrutamiento de estas redes o es algo más alto?
Además, ¿es IANA quien creó este diseño?
networking
routing
ipv4
QuantumRads
fuente
fuente
Respuestas:
Las direcciones IP privadas son enrutables, aunque no se enrutan públicamente . Básicamente, un enrutador enrutará una dirección privada a una LAN privada / interna, en lugar de a Internet.
Para ampliar mi respuesta: un enrutador puede enrutar una dirección privada al lado público, a través de su puerta de enlace predeterminada. Sin embargo, el paquete se "perderá" en tránsito debido a que otros enrutadores lo dejarán caer, o debido a que el TTL del paquete llegue a 0.
Por ejemplo, eche un vistazo a esto (parcialmente ofuscado)
traceroute -I -n 192.168.200.1
:Como puede ver, el paquete se enruta a Internet público a través de la puerta de enlace predeterminada de la máquina. Sin embargo, se deja caer durante el tránsito y nunca llega a ningún destino adecuado.
Después de todo, las IP / clases privadas se superponen (por definición) entre el cliente, entonces, ¿en cuál de las miles de redes 192.168.200.x / 24 se debe enrutar este paquete?
Una nota al margen interesante: los proveedores de internet a menudo usan direcciones privadas para su enrutamiento interno. Si, por ejemplo, un privadas 192.168.200.x / 24 clases se utiliza para el encaminamiento interno, el primer router / máquina con IP 192.168.200.1 será recibir pero descartar el paquete, porque era no solicitado. ICMP es una excepción interesante, ya que los enrutadores / máquinas generalmente responden a PING no solicitados. Esto significa que en algún momento puede usar escaneos de direcciones privadas para mapear su red privada de ISP.
fuente
Por lo general, el ISP filtra las direcciones IP privadas. Su enrutador de acceso también debe configurarse para que no se filtren.
Las direcciones IP privadas no se pueden usar en Internet porque cualquiera podría estar usándolas . Probablemente hay muchos millones de dispositivos que utilizan 192.168.1.1 de forma privada, ¿cuál se supone que un enrutador de Internet envía el paquete?
Las direcciones de Zeroconf (169.254.0.0/16) en realidad no son enrutables. Se pueden usar en cualquier lugar de manera ad-hoc, pero no pueden acceder a Internet ni a ninguna subred que no sea la local. No se pueden enrutar porque solo pueden ser válidos dentro del dominio de difusión donde cada dispositivo puede seleccionar una dirección no utilizada por sí mismo. Por definición, zeroconf no tiene una instancia de administración como un servidor DHCP.
fuente
Sin embargo, ¿qué es lo que impide que estas direcciones sean enrutables?
Estándares aceptados que se hacen cumplir por las entidades que se comunican. Estos se aplican en software, hardware y configuraciones.
¿Los ISP implementan ACL que impiden el enrutamiento de estas redes o es algo más alto?
Pueden hacerlo, pero lo que realmente se está deteniendo es simplemente una traducción no válida que no sigue los estándares.
Si usted es como la mayoría de los usuarios domésticos, tiene una dirección IP asignada como dirección IP pública. Para que el tráfico de todos sus dispositivos conectados se comunique, el enrutador realiza la traducción de esas direcciones IP internas mediante NAT (traducción de direcciones de red) o PAT (traducción de direcciones de puerto).
Básicamente, su enrutador recuerda qué direcciones IP internas en su LAN (red de área local) iniciaron una sesión que se extendía fuera de su LAN, a través del enrutador y fuera de la interfaz WAN (red de área amplia). Cuando los datos salen del enrutador, contienen esa única dirección IP asignada a usted como la IP de origen. Cuando ingresa, el paquete contiene la misma dirección que la IP de destino. El enrutador decide entonces a dónde se dirige desde allí.
En el exterior, solo tiene una única dirección IP, que en realidad es la IP del enrutador. El enrutador puede rastrear esas sesiones y determinar qué tráfico pertenece a cada dirección IP interna en su LAN y dirige ese tráfico en consecuencia. Es un proceso de administración complejo, pero la idea es bastante simple una vez que comprende que todo se está traduciendo en cada enrutador.
Además, la mayoría de los enrutadores domésticos tienen puertos de conmutación, por lo que el tráfico se entrega a través de la dirección MAC, no de la dirección IP. La dirección MAC de origen en el paquete permanece igual hasta que llega a un enrutador. El enrutador elimina esa dirección MAC de origen e inserta la dirección MAC de su propia interfaz WAN.
Además, ¿es IANA quien creó este diseño?
Estos estándares no fueron diseñados originalmente por IANA. Hoy, aunque toman la iniciativa de establecer estándares, ciertamente no los hacen cumplir por ningún medio legal. Son estándares que se hacen cumplir por consenso. Buscar RFC 791.
Tienen "autoridad" en la medida en que todos estén dispuestos a adherirse a ellos. Es completamente posible desafiar estos estándares, pero eventualmente se encontrará con un ISP en algún lugar a lo largo del camino que le exigirá que se adhiera o dejarán caer su tráfico.
Espero que eso ayude..
fuente
Como punto de aclaración de las otras respuestas, los rangos de direcciones IP privadas que está utilizando localmente no se dirigen a Internet porque tienen sus propias entradas explícitas en la tabla de enrutamiento. Aquí está mi tabla de rutas desde mi escritorio en casa, por ejemplo:
Tenga en cuenta la
172.17.0.0/16
y172.18.0.0/16
. Los paquetes a estas redes irán directamente a mis puentes acoplables, sin salir de mi computadora, porque tienen una entrada específica en mi tabla de rutas. La192.168.1.0/24
entrada dice explícitamente que el tráfico a esa red saldrá delenp5s0
interfaz. La tabla de rutas de mi enrutador tendrá una entrada similar que enviará todo el tráfico de esa red privada a la interfaz a la que está conectado mi escritorio.Solo los paquetes para redes que no están explícitamente en la tabla irán a la ruta predeterminada. Puede marcar explícitamente una red como inalcanzable mediante:
Esto cambia mi tabla de ruta a:
Ahora, mi escritorio ni siquiera intentará preguntarle a la puerta de enlace predeterminada sobre las direcciones en ese rango. Las búsquedas de esa dirección devuelven inmediatamente "No hay ruta al host".
Los paquetes para redes inalcanzables que no están marcados explícitamente como inalcanzables en la tabla de rutas simplemente se seguirán enviando a través de las rutas predeterminadas, hasta que el paquete llegue a un enrutador que sepa explícitamente que la red es inalcanzable, o el TTL caduca.
fuente