Como encontrar a localização geográfica do servidor Linux no terminal
Neste artigo, mostraremos como localizar a localização geográfica do endereço IP de um sistema Linux remoto usando APIs e um script bash simples na linha de comando.
Na Internet, cada servidor tem um endereço IP voltado para o público, que é atribuído diretamente ao servidor ou através de um roteador que envia tráfego de rede para esse servidor.
Os endereços IP fornecem uma maneira fácil de rastrear a localização do servidor no mundo usando duas APIs úteis fornecidas pelo ipinfo.io e ipvigilante.com para obter o cidade , estado e país conectado a um servidor.
Instalar Curl e jq
Para obter a localização geográfica do endereço IP do servidor, precisamos instalar o curl-line-downloader e a ferramenta de linha de comando jq para processar os dados JSON das APIs de geolocalização.
$ sudo apt install curl jq #Ubuntu/Debian $ sudo yum install curl jq #CentOS/RHEL $ sudo dnf install curl jq #Fedora 22+ $ sudo zypper install curl jq #openSUSE

Encontrar o endereço IP público do servidor
Para obter o endereço IP público do servidor, use o seguinte comando curl para fazer uma solicitação da API para ipinfo.io em seu terminal, conforme mostrado.
$ curl https://ipinfo.io/ip

Obter dados de localização de IP da API
Depois de obter o endereço IP público do servidor, você pode fazer uma solicitação à API do ipvigilante.com para buscar os dados de geolocalização usando o seguinte comando. Substitua & lt; seu endereço IP & gt;
pelo IP público do servidor.
$ curl https://ipvigilante.com/<your ip address>

Estes são os dados que obtemos do comando acima.

Automatize a chamada da API usando o script Bash
Agora, para automatizar o processo da API, criaremos um script chamado getipgeoloc.sh
(você pode nomear o que quiser) usando qualquer um dos seus editores de linha de comando favoritos.
$ vim getipgeoloc.sh
Em seguida, copie e cole o seguinte comando longo nele.
curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'
Salve o arquivo e torne o script executável com o seguinte comando.
$ chmod +x getipgeoloc.sh
Por fim, execute o script para obter sua localização geográfica de IP do Linux, conforme mostrado na captura de tela a seguir.
$ ./getipgeoloc.sh

O script acima mostra o nome da cidade e país junto com as coordenadas aproximadas latitude e longitude .
Como alternativa, você também pode executar o comando acima sem salvá-lo em um script, conforme mostrado.
$ curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'

Você também pode gostar de ler os seguintes artigos relacionados:
- 4 Ways to Find Server Public IP Address in Linux Terminal
- Find Out All Live Hosts IP Addresses Connected on Network in Linux
- Find Top 10 IP Addresses Accessing Your Apache Web Server
É isso por enquanto! Neste pequeno artigo, mostramos como obter sua localização geográfica IP do Linux a partir do terminal usando os comandos curl e jq . Compartilhe seus pensamentos conosco ou faça perguntas através do formulário de comentários abaixo.