Terminalda Linux Server Coğrafi Yerini Necə Tapmaq olar


Bu yazıda açıq API-lərdən və komanda xəttindən sadə bash skriptindən istifadə edərək uzaq Linux sisteminin IP ünvanının coğrafi yerini necə tapacağınızı sizə göstərəcəyik.

İnternetdə hər bir serverin birbaşa serverə təyin olunan və ya şəbəkə trafikini həmin serverə göndərən marşrutlaşdırıcı vasitəsilə açıq olan IP ünvanı var.

IP ünvanları şəhəri, əyaləti və ölkəni serverlə əlaqələndirmək üçün ipinfo.io və ipvigilante.com tərəfindən təmin edilən iki faydalı API istifadə edərək serverin dünyadakı yerini izləmək üçün asan bir yol təqdim edir.

Curl və jq quraşdırın

Serverin IP ünvanının coğrafi yerini əldə etmək üçün geolokasiya API-lərindən JSON məlumatlarını emal etmək üçün curl komanda xətti yükləyicisini və jq komanda xətti alətini quraşdırmalıyıq.

$ 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

Serverin ümumi IP ünvanını tapın

Göstərildiyi kimi terminalınızda ipinfo.io-ya API sorğusu etmək üçün curl əmrini əldə etmək üçün.

$ curl https://ipinfo.io/ip

API-dən IP Yer Məlumatlarını əldə edin

Serverin ictimai IP ünvanını əldə etdikdən sonra, indi aşağıdakı əmrdən istifadə edərək geolokasiya məlumatlarını əldə etmək üçün ipvigilante.com-un API-sinə sorğu göndərə bilərsiniz. ip ünvanınız>-u serverin ictimai IP-si ilə əvəz etməyinizə əmin olun.

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

Bu, yuxarıdakı əmrdən əldə etdiyimiz məlumatlardır.

Bash Script istifadə edərək API Zəngini avtomatlaşdırın

İndi API prosesini avtomatlaşdırmaq üçün sevimli komanda xətti redaktorlarınızdan istifadə edərək getipgeoloc.sh adlı skript yaradacağıq (onu istədiyiniz hər hansı bir ad verə bilərsiniz).

$ vim getipgeoloc.sh

Sonra aşağıdakı uzun əmri kopyalayıb içinə yapışdırın.

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

Faylı yadda saxlayın və aşağıdakı əmrlə skripti icra edilə bilən hala gətirin.

$ chmod +x getipgeoloc.sh

Nəhayət, aşağıdakı ekran görüntüsündə göstərildiyi kimi Linux IP coğrafi yerinizi əldə etmək üçün skripti işə salın.

$ ./getipgeoloc.sh

Yuxarıdakı skript təxmini enlik və uzunluq koordinatları ilə birlikdə şəhər və ölkənin adını göstərir.

Alternativ olaraq yuxarıdakı əmri göstərildiyi kimi skriptdə saxlamadan da işlədə bilərsiniz.

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

Aşağıdakı əlaqəli məqalələri də oxumaq istəyə bilərsiniz:

  1. Linux Terminalında Server Ümumi İP Ünvanını Tapmağın 4 Yolu
  2. Linux-da Şəbəkəyə Qoşulmuş Bütün Canlı Hostların IP ünvanlarını tapın
  3. Apache Veb Serverinizə daxil olan ən yaxşı 10 IP ünvanını tapın

Hələlik budur! Bu qısa məqalədə biz curl və jq əmrlərindən istifadə edərək terminaldan Linux IP coğrafi yerinizi necə əldə edəcəyinizi göstərdik. Fikirlərinizi bizimlə bölüşün və ya aşağıdakı rəy forması vasitəsilə hər hansı sualınızı verin.