¿Cómo obtener la geolocalización de una dirección IP en Terminal?

21

¿Es posible obtener la geolocalización de una dirección IP en la Terminal?

No estoy seguro de lo que significan los números en una dirección IP, pero debe haber algo de lógica detrás, por lo que la búsqueda no puede ser tan difícil.

sanjihan
fuente
¿Quieres una geolocalización de un Ip? iplocation.net
Finduilas
Quizás con macappstore.org/geoip
Finduilas
1
O lea este artículo: hints.macworld.com/article.php?story=20100109053441706
Finduilas
1
También con respecto a su última afirmación, no, no existe una correlación forzada entre los valores de la dirección IP pública y la geografía. Las empresas y organizaciones alquilan bloques de IP; pueden hacer con ellos lo que quieran.
cortezas

Respuestas:

26

Puede hacerlo sin tener que instalar ninguna aplicación o software adicional. Simplemente use el comando curly el sitio web gratuito de geo ip http://freegeoip.app .

Ejecute el siguiente comando en la Terminal (estoy usando la IP de Apple para este ejemplo):

curl https://freegeoip.app/xml/17.178.96.59

Obtendrá sus resultados en formato XML:

<Response>
    <IP>17.178.96.59</IP>
    <CountryCode>US</CountryCode>
    <CountryName>United States</CountryName>
    <RegionCode>CA</RegionCode>
    <RegionName>California</RegionName>
    <City>Cupertino</City>
    <ZipCode>95014</ZipCode>
    <TimeZone>America/Los_Angeles</TimeZone>
    <Latitude>37.3042</Latitude>
    <Longitude>-122.0946</Longitude>
    <MetroCode>807</MetroCode>
</Response>

Incluso puede emitir el mismo comando usando el nombre de dominio en lugar de la IP:

curl https://freegeoip.app/xml/apple.com

Otros formatos ...

freegeoip.app también es compatible con CSV, JSON y JSONP

CSV: curl https://freegeoip.app/csv/apple.com

17.178.96.59,US,United States,CA,California,Cupertino,95014,America/Los_Angeles,37.30,-122.09,807

JSON curl https://freegeoip.app/json/apple.com

{"ip":"17.178.96.59","country_code":"US","country_name":"United States","region_code":"CA","region_name":"California","city":"Cupertino","zip_code":"95014","time_zone":"America/Los_Angeles","latitude":37.3042,"longitude":-122.0946,"metro_code":807}

Para verificar su propia ip ...

Simplemente omita la ip o el dominio:

curl https://freegeoip.app/xml/

Alano
fuente
77
NOTA: vincular una dirección IP a una ubicación geográfica no es una ciencia difícil. Si bien la mayoría de las direcciones serán confiables, hay millones de direcciones que, cuando se buscan, se resolverán en una ubicación general, como el centro de una ciudad, o incluso el centro del país. Hay un artículo interesante sobre cómo una granja aleatoria en el medio de Kansas ha sido objeto de abuso e investigaciones criminales porque un importante servicio de geolocalización colocó su bandera de "ubicación general para los Estados Unidos" en su granja. fusion.net/story/287592/internet-mapping-glitch-kansas-farm es un enlace al artículo.
Nzall
2
Este punto final de API está en desuso y dejará de funcionar el 1 de julio de 2018. Para obtener más información, visite: github.com/apilayer/freegeoip#readme </ DeprecationMessage >
0n1cOn3
Parece que el nuevo "freegeoip.app" funciona como se esperaba. "freegeoip.net" quedó en desuso
dwightk