Po připojení k internetu je každému serveru přidělena veřejná IP adresa. Tuto adresu lze přiřadit přímo směrovači, který se používá k odesílání signálů nebo provozu na server.
Tento článek ukazuje, jak lze určit IP adresu a geografickou polohu vzdáleného systému Linux pomocí otevřených rozhraní API a jak lze pomocí terminálu spustit bash skript. V systému CentOS 8 jsme provedli všechny příkazy a skripty, které jsou uvedeny níže:
Najděte geografickou polohu linuxového serveru na CentOS 8
Chcete-li najít geografickou polohu vašeho serveru, musíte v systému spustit různé příkazy. Přihlaste se do systému CentOS 8 jako uživatel root a proveďte následující kroky:
Otevřít terminál
Otevřete okno terminálu pomocí zkratkové metody ‚Ctrl + Alt + t‘ nebo klikněte na ‚Aktivity‘ a spusťte terminál zadáním ‚terminál‘ do vyhledávacího pole aplikace takto:
Nainstalujte curl a jq
Chcete-li zjistit IP adresu a geografickou polohu linuxového serveru, musíte nainstalovat nástroje příkazového řádku Curl a Jq, které budou použity ke zpracování dat JSON pomocí geolokačních API. Za tímto účelem na terminálu provedete následující příkaz:
$ sudo yum install curl jq
Stisknete ‚y‘ a ‚Enter‘, což vám umožní využít další prostor pro instalaci.
Po chvíli uvidíte, že curl a jq byly úspěšně nainstalovány do vašeho systému CentOS 8.
Jak zjistit veřejnou IP adresu vzdáleného serveru?
Pomocí příkazu curl můžete získat veřejnou IP adresu serveru. Příkaz curl se používá k odeslání požadavku API na následující adresu URL ipinfo.io pomocí terminálu takto:
$ curl https://ipinfo.io/ip
Jak získat údaje o zeměpisné poloze z rozhraní API?
Jakmile je načtena IP adresa serveru, nyní odešlete požadavek na ipvigilante.com API, který načte geografickou polohu. Pro tento účel použijte následující příkaz, ve kterém nahradíte
$ curl https://ipvigilante.com/<Enter your IP address>
Získejte údaje o zeměpisné poloze pomocí skriptu bash
Proces API můžete automatizovat pomocí metody skriptu bash. Chcete-li vytvořit skript, musíte vytvořit textový soubor, do kterého vložíte následující skript:
curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'
Nyní uložte výše uvedený soubor skriptu s názvem ‚getipgeoloc.sh‘. Můžete také uložit s požadovaným jménem podle vašich požadavků. Znovu se přesuňte do okna terminálu a zadejte příkaz k vytvoření spustitelného souboru následovně:
$ chmod +x getipgeoloc.sh
Nyní je čas spustit výše uvedený soubor skriptu a zobrazit geografickou polohu IP serveru Linux pomocí následujícího příkazu:
$ ./getipgeoloc.sh
Po provedení výše uvedeného skriptu se zobrazí město, název země spolu se souřadnicemi zeměpisné délky a šířky.
Výše uvedený skript můžete spustit, aniž byste jej ukládali do spustitelného souboru skriptu. Na terminálu tedy napíšete následující příkaz:
$ curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'
Uvidíte, že přibližné souřadnice s vaší zeměpisnou polohou se na terminálu zobrazí následovně:
Závěr
V tomto článku jste prozkoumali, jak najít geografickou polohu vzdáleného linuxového serveru s veřejnou IP adresou. Dále jste se naučili, jak nainstalovat a používat nástroje curl, jq na vašem CentOS 8, jak je používat k nalezení geografické polohy vašeho vzdáleného serveru. V případě jakýchkoliv dotazů prosím napište komentáře do pole pro komentáře.