¿Por qué obtengo resultados diferentes para mi IP cuando escribo en google "¿Cuál es mi IP" y cuando escribo en el terminal de macOS "ifconfig | grep inet"?

4

Obtengo resultados diferentes para mi IP cuando escribo google "¿Cuál es mi IP" y cuando escribo en el terminal macOS ' ifconfig |grep inet

¿Por qué estos resultados son diferentes en macOS versión 10.13.2 High Sierra?

    
pregunta Jacob Warbler 21.12.2017 - 16:10

3 respuestas

8

A menos que su computadora esté directamente conectada a su ISP a través del módem, la dirección IP de su computadora es realmente asignada por su enrutador (ya sea proporcionada por el ISP o usted mismo). La dirección IP que ve cuando visita un sitio web de whatsmyip es la dirección IP pública que el ISP le ha asignado a su enrutador, que es la única dirección IP a la que pueden comunicarse los dispositivos cuando intentan hablar con un dispositivo de su red. Usando una técnica llamada Traducción de direcciones de red , su enrutador permite que varios dispositivos (por ejemplo, su computadora portátil, su teléfono y su PlayStation) compartan esa información. Una sola dirección IP pública de su ISP entre cada uno de los dispositivos.

Es probable que sus dispositivos conectados a su red interna tengan direcciones IP como 192.168.XXX.XXX o 172.16.XXX.XXX - 172.31.XXX.XXX o 10.XXX.XXX.XXX. Estas son Direcciones IP privadas reservadas para redes internas y no se pueden utilizar en Internet.

    
respondido por el moneyt 21.12.2017 - 16:32
7

La que recibe de Google es su dirección externa, su pública, que su ISP asigna a la conexión WAN (externa) de su enrutador.

La dirección de ifconfig es su dirección privada interna, que se asigna desde la interfaz LAN (interna) de su enrutador.

Puede usar la utilidad de almacenamiento en caché para encontrar su dirección IP pública externa:

AssetCacheLocatorUtil 2>&1 | awk '/This.*public/{sub(/\.$/, ""); print $NF}'

Su enrutador usa una estructura conocida como NAT (Traducción de dirección de red) para que los paquetes destinados a usted se envíen a la computadora correcta, sin exponer su dirección interna al mundo exterior.

Enlace de Wikipedia a Traducción de direcciones de red - que, honestamente, no necesita saber & entender;)

    
respondido por el Tetsujin 21.12.2017 - 16:31
2

Me encantó el método usando AssetCacheLocatorUtil, así que lo mejoré un poco extrayendo solo la IP de la cadena:

AssetCacheLocatorUtil 2>&1 | grep public | grep This | awk '{match($0,/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/); ip = substr($0,RSTART,RLENGTH); print ip}'
    
respondido por el lotcarneiro 22.12.2017 - 18:12

Lea otras preguntas en las etiquetas