ipinfo.io
Você pode experimentar o serviço online ipinfo.io . O ipinfo.io fornece uma API de localização geográfica baseada em JSON.
Tente isto:
curl ipinfo.io
Aqui está um exemplo da saída retornada:
{
"ip": "84.215.115.185",
"hostname": "snf-86437.vm.okeanos.grnet.gr",
"city": "Athens",
"region": "Attiki",
"country": "GR",
"loc": "37.9833,23.7333",
"org": "AS5408 Greek Research and Technology Network S.A"
}
GeoIP
Agora você pode instalar o GeoIP, que é uma biblioteca C que permite encontrar o país de origem de qualquer endereço IP ou nome de host. Ele usa um banco de dados baseado em arquivo.
Primeiro, você precisa instalar
geoip-database-contrib
Este pacote contém um script que baixa a última versão do o sabor binário dos quatro bancos de dados MaxMind GeoLite (País, IPv6 País, Cidade e ASN).
Execute este comando para instalar o pacote
sudo apt-get install geoip-database-contrib
Após este comando ser executado, ele instala uma tarefa cron que atualizará os bancos de dados GeoLite. Está localizado em
/etc/cron.d/geoip-database-contrib
Então, como isso instalou os bancos de dados baseados em arquivos, se quisermos usar a ferramenta de linha de comando como geoiplookup, precisamos instalar outro pacote. Este pacote é chamado geoip-bin. Execute
sudo apt-get install geoip-bin
Agora você pode executar o comando
geoiplookup google.com
Aqui está um exemplo da saída retornada da ferramenta.
GeoIP Country Edition: US, United States
GeoIP City Edition, Rev 1: US, CA, Mountain View, 94043, 37.419201, -122.057404, 807, 650
GeoIP City Edition, Rev 0: US, CA, Mountain View, 94043, 37.419201, -122.057404
GeoIP ASNum Edition: AS15169 Google Inc.
Para executar este comando com o tipo de IP do seu servidor:
geoiplookup $(curl ipv4.icanhazip.com)
Nota:
Deve-se notar que você não possui o seu endereço IP - o seu ISP ou provedor de serviços o faz. Assim, todas as informações públicas sobre esse endereço IP provavelmente se referirão apenas a elas.
Fonte