Windows Tips & News

Získajte informácie o geolokácii IP adresy v Bash v systéme Linux

ODPORÚČANÉ: Kliknite sem, ak chcete opraviť problémy so systémom Windows a optimalizovať výkon systému

Niekedy potrebujete rýchlo získať informácie o geolokácii pre IP adresu. V Linuxe môžete využiť silu konzolových aplikácií na šetrenie času a rýchle získavanie týchto informácií. Pozrime sa, ako sa to dá.

Reklama


Ak chcete získať informácie o geografickej polohe o konkrétnej adrese IP, musíte použiť nejakú online službu, ktorá poskytuje príslušné rozhranie API. Je dobré použiť nejakú verejnú službu, aby ste sa vyhli autorizačnému postupu a správe kľúčov API. Jednou z takýchto služieb je FreeGeoIP.net.

Poskytuje verejné HTTP API na vyhľadávanie geolokácie IP adries. Používa databázu IP adries, ktoré sú spojené s mestami, spolu s ďalšími relevantnými informáciami, ako je časové pásmo, zemepisná šírka a dĺžka. Toto je veľmi užitočné.

Služba môže poskytovať výsledky vyhľadávania ako JSON alebo XML. Takže, ak skombinujeme curl s nejakým JSON parserom, môžeme získať požadované informácie.

Použijem svoj obľúbený analyzátor JSON, jq:

jq-in-reposJe veľmi ľahký a rýchly.

V našom prípade by mal byť dopyt nasledovný:

http://freegeoip.net/json/119.94.116.145

Časť „json“ tu predstavuje požadovaný formát údajov. Okrem JSON to môže byť XML alebo CSV.

Spustite dotaz pomocou curl a pozrime si výstup:

geo-query-rawVýsledkom je nespracovaný výstup JSON, ktorý je ťažko čitateľný. Na zlepšenie vzhľadu sady výsledkov použite nástroj jq. Skombinujte ho s curl takto:

zvlniť http://freegeoip.net/json/119.94.116.145|jq

Výstup bude ľahšie čitateľný:vo formáte geo-query

Pomocou jq môžete filtrovať výstup a nastaviť, aby zobrazoval iba požadované polia. Nasledujúci príkaz zobrazí iba názov krajiny, zemepisnú šírku a dĺžku:

zvlniť http://freegeoip.net/json/119.94.116.145|jq -r '.názov_krajiny,.zemepisná šírka,.zemepisná dĺžka'

geo-query-filtredTento príkaz môžete uložiť ako nasledujúci skript shellu:

#!/bin/sh. curl -s http://freegeoip.net/json/$1|jq -r '.názov_krajiny,.zemepisná šírka,.zemepisná dĺžka'

Keď budete nabudúce potrebovať získať informácie o geolokácii, môžete skript spustiť takto:

./geo.sh IP_adresa

To je všetko.

ODPORÚČANÉ: Kliknite sem, ak chcete opraviť problémy so systémom Windows a optimalizovať výkon systému

PowerToys vám čoskoro umožní zistiť, ktorá aplikácia bráni vymazaniu súboru

Možno poznáte bezplatnú aplikáciu Unlocker, ktorá umožňuje mazanie používaných súborov. Aplikácia...

Čítaj viac

Zabezpečte, aby Firefox automaticky klikol na Odmietnuť všetko v súhlase s bannerom cookie

Zabezpečte, aby Firefox automaticky klikol na Odmietnuť všetko v súhlase s bannerom cookie

Vývojári prehliadača Firefox pridali úhľadnú funkciu, ktorá dokáže automaticky kliknúť na Odmietn...

Čítaj viac

Kanál pre vývojárov Windows 11 má teraz možnosť vždy zobraziť úplné kontextové ponuky

Kanál pre vývojárov Windows 11 má teraz možnosť vždy zobraziť úplné kontextové ponuky

V zostavách kanála pre vývojárov spoločnosť Microsoft pridala novú skrytú možnosť, vďaka ktorej b...

Čítaj viac