GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So finden Sie den geografischen Standort von Linux Server im Terminal

In diesem Artikel zeigen wir Ihnen, wie Sie mithilfe offener APIs den geografischen Standort der IP-Adresse eines Remote-Linux-Systems finden und ein einfaches Bash-Skript über die Befehlszeile.

Im Internet hat jeder Server eine öffentlich zugängliche IP-Adresse, die dem Server direkt oder über einen Router zugewiesen wird, der Netzwerkverkehr an diesen Server sendet.

IP-Adressen bieten eine einfache Möglichkeit, den Standort des Servers weltweit zu verfolgen, indem zwei nützliche APIs verwendet werden, die von ipinfo.io bereitgestellt werden und ipvigilante.com um die Stadt zu bekommen , Zustand und Land mit einem Server verbunden.

Curl und jq installieren

Um den geografischen Standort der IP-Adresse des Servers zu erhalten, müssen wir den Curl-Befehlszeilen-Downloader und jq installieren Befehlszeilentool zum Verarbeiten der JSON-Daten aus den Geolokalisierungs-APIs.

$ 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

Finden Sie die öffentliche IP-Adresse des Servers

Verwenden Sie zum Abrufen der öffentlichen IP-Adresse des Servers den folgenden curl-Befehl, um eine API-Anfrage an ipinfo.io zu senden in Ihrem Terminal wie gezeigt.

$ curl https://ipinfo.io/ip

IP-Standortdaten von der API erhalten

Sobald Sie die öffentliche IP-Adresse des Servers erhalten haben, können Sie jetzt eine Anfrage an ipvigilante.com stellen ’s API, um die Geolocation-Daten mit dem folgenden Befehl abzurufen. Stellen Sie sicher, dass Sie <your ip address> ersetzen mit der öffentlichen IP des Servers.

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

Dies sind die Daten, die wir vom obigen Befehl erhalten.

API-Aufruf mit Bash-Skript automatisieren

Um nun den API-Prozess zu automatisieren, erstellen wir ein Skript namens getipgeoloc.sh (Sie können es beliebig benennen) mit einem Ihrer bevorzugten Befehlszeilen-Editoren.

$ vim getipgeoloc.sh

Kopieren Sie dann den folgenden langen Befehl und fügen Sie ihn ein.

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

Speichern Sie die Datei und machen Sie das Skript mit dem folgenden Befehl ausführbar.

$ chmod +x getipgeoloc.sh

Führen Sie schließlich das Skript aus, um Ihren geografischen Linux-IP-Standort zu erhalten, wie im folgenden Screenshot gezeigt.

$ ./getipgeoloc.sh

Das obige Skript zeigt die Stadt und Land Name zusammen mit dem ungefähren Breitengrad und Längengrad Koordinaten.

Alternativ können Sie den obigen Befehl auch ausführen, ohne ihn wie gezeigt in einem Skript zu speichern.

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

Vielleicht möchten Sie auch die folgenden verwandten Artikel lesen:

  1. 4 Möglichkeiten, die öffentliche IP-Adresse des Servers im Linux-Terminal zu finden
  2. Ermitteln Sie die IP-Adressen aller Live-Hosts, die mit dem Netzwerk unter Linux verbunden sind
  3. Finden Sie die 10 wichtigsten IP-Adressen, die auf Ihren Apache-Webserver zugreifen

Das war es fürs Erste! In diesem kurzen Artikel haben wir gezeigt, wie Sie Ihren geografischen Linux-IP-Standort mithilfe von curl vom Terminal abrufen können und jq Befehle. Teilen Sie uns Ihre Gedanken mit oder stellen Sie Fragen über das Feedback-Formular unten.


Linux
  1. So verwenden Sie FIND unter Linux

  2. 4 Möglichkeiten, die öffentliche IP-Adresse des Servers im Linux-Terminal zu finden

  3. So finden Sie eine Datei in Linux

  4. Wie kann ich eine bestimmte Datei von einem Linux-Terminal aus finden?

  5. Wie lösche ich Ordner mit Regex vom Linux-Terminal

So öffnen Sie ein Linux-Terminalfenster

So finden Sie Ihre IP-Adresse unter Linux

So finden Sie den geografischen Standort eines Linux-Servers mithilfe des Terminals unter CentOS 8

So finden Sie den geografischen Serverstandort (IP) mit dem Terminal unter Debian 11

So finden Sie heraus, welche IP-Adressen mit Linux verbunden sind

So öffnen Sie eine PDF-Datei im Linux-Terminal