Recherche de site Web

Comment trouver l'emplacement géographique du serveur Linux dans le terminal


Dans cet article, nous allons vous montrer comment trouver l'emplacement géographique de l'adresse IP d'un système Linux distant à l'aide d'API ouvertes et d'un simple script bash à partir de la ligne de commande.

Sur Internet, chaque serveur possède une adresse IP publique, qui est attribuée directement au serveur ou via un routeur qui envoie le trafic réseau à ce serveur.

Les adresses IP offrent un moyen simple de suivre l'emplacement du serveur dans le monde en utilisant deux API utiles fournies par ipinfo.io et ipvigilante.com pour obtenir le ville, état et pays connectés à un serveur.

Installez Curl et jq

Pour obtenir l'emplacement géographique de l'adresse IP du serveur, nous devons installer le téléchargeur de ligne de commande curl et l'outil de ligne de commande jq pour traiter les données JSON des API de géolocalisation.

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

Trouver l'adresse IP publique du serveur

Pour obtenir l'adresse IP publique du serveur, utilisez la commande curl suivante pour effectuer une requête API à ipinfo.io dans votre terminal, comme indiqué.

curl https://ipinfo.io/ip

Obtenez des données de localisation IP à partir de l'API

Une fois que vous avez obtenu l'adresse IP publique du serveur, vous pouvez maintenant faire une requête à l'API de ipvigilante.com pour récupérer les données de géolocalisation à l'aide de la commande suivante. Assurez-vous de remplacer par l'adresse IP publique du serveur.

curl https://ipvigilante.com/<your ip address>

Ce sont les données que nous obtenons de la commande ci-dessus.

Automatisez l'appel d'API à l'aide du script Bash

Maintenant, pour automatiser le processus API, nous allons créer un script appelé getipgeoloc.sh (vous pouvez le nommer comme vous le souhaitez) en utilisant l'un de vos éditeurs de ligne de commande préférés.

vim getipgeoloc.sh

Ensuite, copiez et collez la longue commande suivante.

curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'

Enregistrez le fichier et rendez le script exécutable avec la commande suivante.

chmod +x getipgeoloc.sh

Enfin, exécutez le script pour obtenir votre emplacement géographique IP Linux, comme indiqué dans la capture d'écran suivante.

./getipgeoloc.sh

Le script ci-dessus montre le nom de la ville et du pays ainsi que les coordonnées approximatives de latitude et de longitude.

Alternativement, vous pouvez également exécuter la commande ci-dessus sans l'enregistrer dans un script, comme indiqué.

curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'

Vous aimerez peut-être également lire les articles connexes suivants :

  1. 4 façons de trouver l'adresse IP publique du serveur dans un terminal Linux
  2. Découvrez toutes les adresses IP des hôtes en direct connectés au réseau sous Linux
  3. Trouvez les 10 principales adresses IP accédant à votre serveur Web Apache

C'est tout pour le moment! Dans ce court article, nous avons montré comment obtenir votre emplacement géographique IP Linux à partir du terminal à l'aide des commandes curl et jq. Partagez vos réflexions avec nous ou posez des questions via le formulaire de commentaires ci-dessous.