
¿Cómo saben herramientas como ping o cualquier otra herramienta que utilice el protocolo tcp/ip que, por ejemplo, 192.168.1.1 o 10.0.0.1 es una dirección IP local mientras que 8.8.8.8 o 74.142.23.95 son públicas? ¿Están codificados 192.168.xx y 10.0.xx para conservarlos para uso local?
Respuesta1
Bueno, ellos sonreservadoporRFC 1918para uso en redes privadas.
Pero eso en realidad no importa mucho. Puedes obtener un bloque de direcciones IP "públicas" de RIPE o lo que sea, y usarlo para tu red privada, y todo seguirá funcionando. La reserva sólo es necesaria por motivos políticos, para permitir a los administradores configurar sus propias redes privadas sin ningún problema.
Herramientas comoping
No me importasi una dirección es "privada", "local" o "pública". Simplemente envían un paquete a la dirección dada y su sistema operativo mira eltabla de ruteopara decidir dónde enviarlo a continuación.
Por ejemplo, cuando configura una tarjeta Ethernet en Windows con dirección IP 10.2.3.4/16
(en formato de máscara de red:) 255.255.0.0
y puerta de enlace 10.2.0.1
, agrega las siguientes entradas a la tabla de enrutamiento:
10.2.3.4/32
(máscara de red255.255.255.255
) a la interfazLoopback
(Sus propias direcciones siempre se enrutan a través de la interfaz loopback, nunca van a la red).
10.2.0.0/16
(máscara de red255.255.0.0
) a la interfazLocal Area Connection
(Las direcciones en su propia subred son, por definición, locales).
0.0.0.0/0
(máscara de red0.0.0.0
) a la puerta de enlace10.2.0.1
(Todo lo demás no es local).
En otras palabras,le dijiste al sistema operativoque todas las direcciones dentro del 10.2.0.0/16
rango sean locales y que el sistema operativo se encargue de todo.
Para ver la tabla de enrutamiento:
- en Linux,
ip route
(IPv4) yip -6 route
(IPv6) - en Windows,
route print
(IPv4 en ≤XP, ambos v4/v6 en ≥Vista) - en Windows XP,
netsh interface ipv6 show route
(IPv6) - en Windows, Linux, BSD y otros sistemas similares a Unix
netstat -r -n
(IPv4) - en Linux y algunos similares a Unix
netstat -r -n -6
(IPv6)
La edición de la tabla de enrutamiento se puede realizar con las mismas herramientas. Por ejemplo, para marcar todo 172.16.0.0/16
como local, puede utilizarlo ip route add 172.16.0.0/16 dev eth0
en Linux.
Respuesta2
Las direcciones IP públicas y privadas se definen en RFC. Estas son direcciones IP privadas:
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16
Además, estas direcciones IP son loopback:
127.0.0.0/8
Otros son públicos.
La mayoría de las herramientas no necesitan conocer direcciones IP públicas o privadas.