IP adresinin coğrafi konumunu terminalden alın

terminalden bir IP'nin coğrafi konumunu öğrenmek hakkında

Bir sonraki makalede, nasıl yapabileceğimize bir göz atacağız. genel IP adresimizin coğrafi konumunu öğrenin. Bunu, Ubuntu terminalinden açık API'ler ve basit bir bash betiği aracılığıyla yapabileceğiz. Bugün İnternet'e bağlı tüm cihazların, dünyaya tanımlayıcıları olan bir IP'si var. Bu adres, konumunuzu elde etmek için kullanacağımız adrestir.

İnternette gezinirken, her sunucunun genel bir IP adresi vardır, bu doğrudan sunucuya veya o sunucuya ağ trafiği gönderen bir yönlendirici aracılığıyla atanır. IP adresleri, sunucunun dünyadaki coğrafi konumunu izlemenin kolay bir yolunu sağlar. Bu, tarafından sağlanan iki API kullanılarak sağlanabilir. ipinfo.io e ipvigilante.com sunucunun ülkesini, şehrin adını ve coğrafi koordinatlarını alabileceğimiz.

genel veya özel IP adresinizi alın
İlgili makale:
Genel veya özel IP adresinizi Gnu / Linux'ta alın

Aşağıdaki satırlarda nasıl olduğunu göreceğiz almak bir IP'nin coğrafi konumu terminalden curl ve jq konusunda bize yardım ediyor. Ana amaç ve kullanım için cURL dosya aktarımlarını veya denetimsiz işlem dizilerini otomatikleştirmek, jq JSON veri akışlarının geri takibi ve yönetimini destekleyen çok üst düzey bir işlevsel dildir.

Terminalden bir IP'nin coğrafi konumu

Curl ve jq'yi yükleyin

IP adresinin coğrafi konumunu elde etmek için yapmamız gerekecek curl yükle ve jq komut satırı aracı coğrafi konum API'lerinden elde edilen JSON verilerini işlemek için. Her ikisini de yüklemek için, bir terminalde (Ctrl + Alt + T) komutu yazmanız gerekir:

curl ve jq'yi yükle

sudo apt install curl jq

Sunucunun genel IP adresini alın

Konumu almadan önce yapmanız gerekenler Bağlandığımız sunucunun genel IP adresini bilmek. Bunun için, istekte bulunacağımız aşağıdaki cURL komutunu kullanacağız. ipinfo.io aşağıda gösterildiği gibi terminalden (Ctrl + Alt + T):

curl ve ipinfo.io ile elde edilen genel ip

curl https://ipinfo.io/ip

API sayesinde sisteminizin IP'sinin coğrafi konumuna ait verileri elde edin

Önceki komutu uyguladıktan sonra, genel IP adresini alacağız. Bir kez sahip olduğumuzda, yapabileceğiz coğrafi konum verilerini almak için ipvigilante.com'a bir talepte bulunun. Bunun için terminalde aşağıdaki komutu kullanacağız (Ctrl + Alt + T). Genel IP'yi önceki komutla elde edilenle değiştirmek önemlidir.

ipvigilante ile elde edilen bir IP'nin coğrafi konumu

curl https://ipvigilante.com/la-dirección-IP

Bash Script kullanarak API çağrısını otomatikleştirin

API ile iletişim sürecini otomatikleştirmek için adlı bir dosyanın içinde bir komut dosyası oluşturun ipgeolocator.sh (isim isteğe bağlıdır). Oluşturulması için, her birinin kendisini en rahat hissettiği komut satırı için herhangi bir düzenleyiciyi kullanabileceğiz.

vim ipgeolocalizador.sh

Düzenleyici açıldığında, içinde yapmanız gereken çizgiyi yapıştır aşağıda gösterilen:

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

Yapıştırdıktan sonra tek yapmanız gereken dosyayı kaydetmek ve düzenleyiciden çıkmaktır. Bundan sonra gerekli olacak betiği çalıştırılabilir yap. Bunu aynı terminalde yazarak yapacağız:

chmod +x ipgeolocalizador.sh

Bu noktada yapabiliriz IP'nin coğrafi konumunu almak için komut dosyasını aşağıdaki gibi çalıştırın kamu:

bash ile bir IP'nin coğrafi konumu

./ipgeolocalizador.sh

Yukarıdaki komut dosyası, şehir ve ülke adını yaklaşık enlem ve boylam koordinatlarıyla birlikte görüntüler. Gerçek şu ki Sahip olabileceği hata payını bilmiyorum.

Yukarıdaki uzun komutu bir dosyanın içine kaydetmek istemiyorsanız, aynı komutu doğrudan terminalde de çalıştırabilirsiniz. (Ctrl + Alt + T):

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

Bu kısa makalede nasıl olduğunu gördük terminal ve curl ve jq komutlarını kullanarak Ubuntu'dan bir IP'nin coğrafi konumunu alın. Hakkında daha fazla bilgi edinebilirsiniz jq veya hakkında cURL ilgili Wikipedia makalelerinde.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.