Вероятно сте забелязали различни услуги в интернет, които автоматично знаят грубо къде се намирате в света. От услугите за музика и видео потоци до онлайн магазини, тези услуги използват техника, наречена IP геолокация, която съответства на приблизителното ви физическо местоположение с IP адреса, който използвате. Всеки път, когато се свързвате с интернет, на вашето устройство се присвоява IP адрес от група от адреси, разпределени на различни телекомуникационни компании. Начинът, по който работят тези адреси, може да бъде доста сложен, но тъй като те се разпределят на блокове, е възможно да се създаде база данни, която да картографира блок от адреси в дадена страна или дори в определена област или град.

Добрата новина е, че това търсене на геолокация не е само за големите корпоративни и мега уеб сайтове. Има редица безплатни онлайн услуги и дори инструмент за команден ред за Linux, който ви позволява да търсите IP адреси и да получите информация за това, къде е определен този адрес. Това може да бъде много полезно, когато разследвате подозрителен имейл или странни коментари, оставени на блог. Тя е полезна и при използване на услуги, които маскират вашия IP адрес, като VPN, за да се гарантира, че те работят като рекламирани.

За да търсите IP адрес от командния ред на Linux, трябва да инсталирате инструмента "geoiplookup". За Ubuntu и Raspbian използвайте:

 sudo apt-get инсталирате geoip-bin 

За да търсите IP адрес, въведете следното:

 geoiplookup 8.8.4.4 

Заменете 8.8.4.4 с адреса, който искате да търсите. В този пример адресът 8.8.4.4 (който е един от DNS сървърите на Google) се отчита правилно като адрес от САЩ.

Базата данни, предоставена с вашата Linux дистрибуция, вероятно е остаряла; можете да проверите, за да видите кога е създаден с флага -v :

 geoiplookup -v 8.8.4.4 

В този случай виждаме, че базата данни е създадена през август 2013 г.

Базата данни за геолокация се предоставя от MaxMind, а компанията обновява своите бази данни всеки месец. Можете да актуализирате базата данни, като изтеглите най-новите файлове директно от MaxMind.com.

 wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz gzip GeoIP.dat.gz sudo cp GeoIP.dat / usr / share / GeoIP / 

Вече можете да заявите заявката в базата данни отново за нейната дата на създаване:

 geoiplookup -v 8.8.4.4 

Инструментът вече съобщава, че базата данни е създадена през април 2014 г.

MaxMind също така предоставя база данни за града, която в много случаи дава по-голяма точност. За да го инсталирате, използвайте следните команди, за да изтеглите базата данни и да я копирате в директорията на GeoIP:

 wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz Гугъл GeoLiteCity.dat.gz sudo cp GeoLiteCity.dat / usr / share / GeoIP / 

За да получите информация за града, трябва да кажете на инструмента " geoiplookup " да използва базата данни на града:

 geoiplookup -f /usr/share/GeoIP/GeoLiteCity.dat 71.3.9.242 

Този път geoiplookup ни казва, че адресът е във Флорида и по-специално в Summerfield, Флорида.

Онлайн услуга

Освен инструмента за геополитика, има и редица онлайн услуги, които могат да предоставят информация за геолокация. Ако например отворите geoiptool.com във вашия уеб браузър, сайтът ще ви даде информация за текущото ви местоположение.

Друг сайт freegeoip.net има API, който е предназначен да бъде използван в бекенда на уеб сайтове или в рамките на приложения. Въпреки това, той може да се използва и от командния ред, използвайки " curl ." Първо, уверете се, че сте инсталирали " curl ":

 sudo apt-get инсталирате къдряне 

За да получите информация за геолокация в XML формат, използвайте:

 безплатна безплатна / xml / 72.4.9.242 

XML изходът показва, че IP адресът 72.4.9.242 се използва в Evansville, Indiana. Също така можете да получите същите данни във формат CSV или JSON, като промените частта "xml" на URL адреса съответно на "csv" или "json".

Инструментът geoiplookup и онлайн услугите могат да бъдат много полезни. Ако имате някакви въпроси относно използването им, моля, попитайте в секцията за коментари по-долу.