Kā iegūt sistēmas ģeogrāfisko atrašanās vietu no Bash skripta

Varat atrast attālās Linux sistēmas ģeogrāfisko atrašanās vietu, izmantojot atvērtās API un vienkāršu bash skriptu. Servera ģeogrāfiskās atrašanās vietas noteikšana varētu palīdzēt izsekot tam fiziskajā pasaulē, nodrošinot, ka serveri atrodas reģionālajos karstajos punktos.
Katram interneta serverim ir publiska saskarne IP adrese . Tas ir vai nu tieši piešķirts serverim, vai arī maršrutētājam, kas sūta trafiku uz šo serveri. IP adreses sniedz mums nojausmu par to, kur pasaulē atrodas šis serveris. Mēs varam iegūt šos ģeogrāfiskās atrašanās vietas datus, izmantojot divas atvērtas API, ko nodrošina ipinfo.co un IP Vigilante, un izmantot tos, lai redzētu pilsētu, štatu un valsti, kas saistīta ar serveri vai citu attālo sistēmu. Tas nedod jums precīzu GPS atrašanās vietu; tas tikai ļauj jums redzēt vispārējo IP adreses apgabalu.
Izveidojiet savienojumu ar attālo sistēmu
Linux serverī vai citās attālās sistēmās, kurām vēlaties noteikt ģeogrāfisko atrašanās vietu, tiks darbinātas šādas komandas, tāpēc vispirms ir jāizveido savienojums ar serveri un jāpiekļūst tā apvalkam. Piemēram, jūs varētu izveidot savienojumu, izmantojot SSH . Varat palaist komandas savā vietējā sistēmā, lai atrastu tās atrašanās vietu, taču jūs, iespējams, jau zināt, kur atrodaties!
Instalējiet curl un jq
Lai piekļūtu ģeogrāfiskās atrašanās vietas API, mums ir nepieciešami divi rīki: |_+_| lai veiktu HTTP pieprasījumus un |_+_| lai apstrādātu saņemtos JSON datus. Atveriet termināli un izmantojiet |_+_| lai instalētu šos rīkus sistēmās, kuru pamatā ir Ubuntu vai Debian. Citos Linux izplatījumos izmantojiet sava Linux izplatīšanas pakotnes instalēšanas rīku.
curl
Atrodiet servera publisko IP adresi
Lai iegūtu ģeogrāfiskās atrašanās vietas datus, mums ir nepieciešama arī servera publiskā IP adrese. Izmantojiet |_+_| lai termināļa logā veiktu API zvanu uz ipinfo.io.
jq
Iegūstiet atrašanās vietas datus no API
Tagad, kad mums ir servera publiskais IP, mēs varam piezvanīt uz ipvigilante.com API, lai iegūtu ģeogrāfiskās atrašanās vietas datus. Aizstāt |_+_| ar adresi, kas tika atgriezta iepriekšējā komandā.
apt-get
Reklāma
Sīkāk apskatīsim, kādus datus mēs saņemam no šī zvana:
API atgriež pilsētu, valsti un kontinentu, kurā atrodas mūsu serveris. Tas arī atgriež aptuvenās platuma un garuma koordinātas, ja mēs vēlamies uzzīmēt šo serveri interaktīvā kartē. Mēs savā skriptā izmantosim platuma, garuma, pilsētas_nosaukums un valsts_nosaukums. |_+_| komanda saprot, kā apstrādāt API datus un izvilkt šos četrus laukus.
Skripta izveide, lai automatizētu API zvanu
Mēs varam izveidot skriptu, kas satver ģeogrāfiskās atrašanās vietas datus un ieraksta tos failā CSV formātā. Dati tiks ierakstīti failā ar nosaukumu |_+_| sadaļā |_+_| direktoriju. Atveriet savu iecienītāko redaktoru un izveidojiet skriptu ar nosaukumu |_+_| . Ievietojiet tālāk redzamo skripta saturu un noteikti nomainiet IP adresi ar savu:
curl
Saglabājiet skriptu un dodieties atpakaļ uz termināli. Padariet skriptu izpildāmu no termināļa, piešķirot izpildes atļauju šim failam.
Tagad esat gatavs to pārbaudīt. Palaidiet |_+_| skriptu un pārbaudiet izvades faila saturu:
jq
Ģeolokācijas datu atjaunināšana reizi dienā, izmantojot Cron darbu
Izveidosim cron darbu, lai mūsu serveris vienu reizi dienā atjauninātu savu ģeogrāfisko atrašanās vietu un saglabātu to failā. Ikdienas cron darbs atjaunina failu ar nosaukumu |_+_| sadaļā |_+_| servera mapi. 24 stundu cron darba izveide ir tikpat vienkārša kā mūsu skripta ievietošana |_+_| direktoriju. Mums ir jāizmanto komanda sudo, lai kopētu failu kā root lietotājam, lai izvairītos no problēmām ar atļaujām. Palaidiet šo komandu, lai kopētu |_+_| uz |_+_| direktoriju.
server_location.txt
Reklāma Šīs izmaiņas ir tūlītējas, un mūsu skripts darbosies ik pēc 24 stundām, lai atjauninātu |_+_| failu. Mēs varam izmantot šos datus, lai veiktu interesantas darbības, piemēram, uzzīmētu mūsu serverus kartē, kā arī apvienotu ģeogrāfisko atrašanās vietu ar satiksmes žurnāliem, lai redzētu, kur pasaulē atrodas mūsu serveru karstie punkti.
LASĪT TĀLĀK- › Funkcijas un formulas programmā Microsoft Excel: kāda ir atšķirība?
- › Kas ir MIL-SPEC aizsardzība pret kritienu?
- › 5 vietnes, kas katram Linux lietotājam ir jāiekļauj grāmatzīmēs
- › Datora mape ir 40: kā Xerox Star izveidoja darbvirsmu
- › Kā atrast savu Spotify iesaiņojumu 2021. gadam
- & rsaquo; Kiberpirmdiena 2021: labākie tehnoloģiju piedāvājumi

Teilors Gibs ir profesionāls programmatūras izstrādātājs ar gandrīz desmit gadu pieredzi. Viņš divus gadus strādāja par Microsoft reģionālo direktoru Dienvidāfrikā un ir saņēmis vairākas Microsoft MVP (Visvērtīgākā profesionāļa) balvas. Pašlaik viņš strādā pētniecības un attīstības jomā Derivco International.
Lasīt pilnu biogrāfiju