Wéi fannt Dir Linux Server Geographic Location am Terminal


An dësem Artikel wäerte mir Iech weisen wéi Dir d'IP Adress geographesch Lag vun engem Remote Linux System fënnt mat oppenen APIen an engem einfachen Bash Skript vun der Kommandozeil.

Um Internet huet all Server eng ëffentlech viséiert IP Adress, déi direkt un de Server zougewisen gëtt oder iwwer e Router deen den Netzverkéier op dee Server schéckt.

IP Adressen bidden en einfache Wee fir de Standort vum Server op der Welt ze verfolgen andeems Dir zwee nëtzlech APIen benotzt, déi vun ipinfo.io an ipvigilante.com zur Verfügung gestallt gëtt, fir d'Stad, de Staat an d'Land mat engem Server ze verbannen.

Installéiert Curl an jq

Fir d'IP Adress geographesch Lag vum Server ze kréien, musse mir Curl Kommandozeil Downloader an jq Kommandozeil Tool installéieren fir d'JSON Daten vun de Geolocation APIs ze veraarbecht.

$ 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

Fannt déi ëffentlech IP Adress vum Server

Fir de Curl Kommando ze kréien fir eng API Ufro un ipinfo.io an Ärem Terminal ze maachen wéi gewisen.

$ curl https://ipinfo.io/ip

Kritt IP Location Daten Vun der API

Wann Dir de Server ëffentlech IP Adress kritt hutt, kënnt Dir elo eng Ufro un d'API vun ipvigilante.com maachen fir d'Geolocatiounsdaten mat dem folgenden Kommando ze sichen. Vergewëssert Iech datt Dir <Är IP Adress> mat der ëffentlecher IP vum Server ersetzt.

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

Dëst sinn d'Donnéeën déi mir vum uewe genannte Kommando kréien.

Automatiséiert API Call mat Bash Script

Elo fir den API-Prozess ze automatiséieren, kreéiere mir e Skript mam Numm getipgeoloc.sh (Dir kënnt et alles nennen wat Dir wëllt) mat engem vun Äre Liiblings Kommandozeil Editoren.

$ vim getipgeoloc.sh

Da kopéiert a paste de folgende laange Kommando dran.

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

Späichert d'Datei a maacht de Skript ausführbar mam folgendem Kommando.

$ chmod +x getipgeoloc.sh

Endlech, fuert de Skript fir Är Linux IP geographesch Positioun ze kréien wéi am folgende Screenshot gewisen.

$ ./getipgeoloc.sh

De Skript hei uewen weist d'Stad- a Landnumm zesumme mat de geschätzte Breet- a Längtekoordinaten.

Alternativ kënnt Dir och den uewe genannte Kommando ausféieren ouni et an engem Skript ze späicheren wéi et ugewise gëtt.

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

Dir kënnt och gären dës folgend Zesummenhang Artikelen liesen:

  1. 4 Weeër fir Server ëffentlech IP Adress am Linux Terminal ze fannen
  2. Fannt All Live Hosts IP Adressen, déi um Netzwierk am Linux verbonne sinn
  3. Fannt Top 10 IP Adressen Zougang zu Ärem Apache Webserver

Dat ass et fir elo! An dësem kuerzen Artikel hu mir gewisen wéi Dir Är Linux IP geographesch Location vum Terminal kritt mat de Curl- a jq Kommandoen. Deelt Är Gedanken mat eis oder stellt all Froen iwwer de Feedbackformular hei ënnen.