Setiap server memiliki alamat IP publik yang ditetapkan ke server secara langsung melalui router. Alamat IP publik ini dapat digunakan untuk menentukan geolokasi server, yang mencakup informasi seperti benua, negara, dan bahkan perkiraan garis lintang dan garis bujur server.
Ada banyak situasi di mana Anda perlu menentukan lokasi geografis mesin Linux jarak jauh berdasarkan alamat IP-nya. Anda mungkin tahu cara mengetahui geolokasi server melalui browser web, tetapi hari ini kita akan melihat cara menemukannya melalui aplikasi terminal di sistem operasi Debian. Dalam artikel ini, kami akan memberi tahu Anda cara mengetahui alamat IP publik suatu sistem dan kemudian mengambil geolokasinya menggunakan dua API terbuka ipinfo.io.
Informasi geolokasi dapat digunakan dalam beberapa cara. Beberapa kasus penggunaan tercantum di bawah ini:
- Keamanan siber
- Iklan digital
- Personalisasi konten
- Pemasaran Geo
- Penegakan hukum
Kami menjalankan perintah dan prosedur yang disebutkan dalam artikel ini di Debian 11.
Tampilkan Lokasi Geografis Alamat IP di Terminal
Untuk mengambil lokasi geografis server Anda, Anda memerlukan pengunduh Curl dan alat baris perintah JQ. Alat ini akan memungkinkan Anda mendapatkan dan memproses data yang diperlukan dari API geolokasi di Internet. Harap ikuti langkah-langkah ini untuk menginstal alat ini, lalu ambil informasi lokasi yang diperlukan dengan menggunakan IP publik mesin Anda.
Langkah 1:Instal curl dan jq
Luncurkan terminal di OS Debian Anda. Untuk itu, buka Aktivitas tab di sudut kiri atas desktop. Kemudian di bilah pencarian, ketik terminal . Saat ikon Terminal muncul, klik untuk meluncurkannya.
Beralih ke akun superuser di OS Debian Anda dengan menggunakan perintah berikut di terminal dan kemudian masukkan kata sandi yang diperlukan.
$ su
Kemudian jalankan perintah berikut di Terminal untuk memperbarui indeks repositori sistem Anda:
$ apt-get update
Curl akan digunakan untuk membuat permintaan HTTP dan jq akan digunakan untuk memproses data JSON dari API geolokasi. Curl dan jq tersedia di repositori resmi Debian, jadi kita bisa menginstalnya menggunakan perintah apt-get di Terminal.
Jalankan perintah berikut di Terminal untuk menginstal curl dan jq:
$ apt get insntall curl jq
Sistem akan memberi Anda Y/n pilihan untuk melanjutkan atau membatalkan proses instalasi. Masukkan Y lalu tekan enter. Kemudian, tunggu beberapa saat hingga penginstalan alat-alat di atas selesai.
Langkah 2:Temukan IP Publik mesin/server Debian
Untuk menemukan data lokasi geografis server, kita memerlukan alamat IP publiknya. Ini adalah alamat yang diberikan ke server atau router Anda oleh ISP. Semua server di Internet dikenali oleh alamat IP ini. Untuk mengambil alamat IP Publik, kami akan menggunakan API yang disediakan oleh ipinfo.io .
Kita harus menggunakan perintah curl untuk membuat panggilan API ke ipinfo.io . Untuk melakukannya, buka Terminal dan jalankan perintah berikut:
$ curl https://ipinfo.io/ip
Output di atas, (diburamkan di sini karena masalah privasi), adalah IP Publik dari server yang terhubung dan dikenali di dunia Internet.
Langkah 3:Dapatkan Geolokasi berdasarkan IP Publik
Sekarang kita telah mendapatkan Alamat IP publik server, sekarang kita akan membuat permintaan ke ipinfo.io API untuk mengambil data geolokasi server. Kami akan menggunakan perintah curl untuk tujuan ini. Ini akan mengambil detail berikut:
- Benua
- Negara
- Negara bagian/provinsi
- Kota
- Lintang dan Bujur
Jalankan perintah di bawah ini di Terminal untuk mengambil data geolokasi dari ipinfo.io API menggunakan curl:
$ curl https://ipinfo.io/<Public_IP>
Ganti
Penyedia GeoLocation IP alternatif:
curl http://api.geoiplookup.net/?query=<Public_IP>
curl https://json.geoiplookup.io/<Public_IP>
Ganti
Gunakan skrip Bash untuk Mencetak Lokasi Geo
Setiap kali, Anda harus memeriksa lokasi geografis server Anda, Anda harus mengikuti semua langkah yang dijelaskan di atas. Alih-alih ini, kita dapat mengotomatiskan proses ini dengan membuat skrip bash. Skrip ini akan memungkinkan pengambilan lokasi geografis server Anda dengan menjalankan hanya satu perintah. Ikuti langkah-langkah di bawah ini untuk membuat skrip.
Kita dapat membuat skrip menggunakan editor teks apa pun. Untuk skenario saat ini, kami menggunakan editor nano, jadi kami akan mengetik nano diikuti dengan nama skrip (beri nama apa pun yang Anda inginkan).
$ nano geolocation.sh
Kemudian salin dan tempel baris berikut menggunakan menu klik kanan.
$ curl -s https://ipinfo.io/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'
Tekan Ctrl+o untuk menyimpan skrip dan Ctrl+x untuk keluar
Sekarang kita akan membuat skrip di atas dapat dieksekusi dengan memberikan izin yang dapat dieksekusi untuk itu. Untuk melakukannya, jalankan perintah berikut di Terminal:
$ chmod +x geo_location.sh
Sekarang kita siap untuk menguji skrip. Jalankan perintah berikut di Terminal untuk menjalankan skrip.
$ ./geo_location.sh
Dari output di atas, Anda dapat melihat bahwa skrip telah mencetak nama lintang, bujur, kota, dan negara server dengan rapi ke Terminal.
Itu saja untuk saat ini! Kami telah mempelajari cara menemukan lokasi geografis server menggunakan Terminal Debian. Lokasi geografis IP memberikan informasi yang berguna yang terdiri dari nama negara, kota, garis lintang, dan garis bujur. Anda dapat menggunakan informasi ini dapat digunakan dalam beberapa cara seperti yang dibahas di artikel di atas.