2 poin oleh GN⁺ 2026-02-02 | 1 komentar | Bagikan ke WhatsApp
  • CLI tool yang dapat memperkirakan alamat IP hingga tingkat negara, negara bagian, dan kota dengan memanfaatkan latensi
  • Menggunakan lebih dari 3000 probe di jaringan Globalping untuk melakukan pengukuran ping dan traceroute pada setiap IP
  • Membandingkan latensi secara bertahap dari benua → negara → negara bagian → kota dan menganggap wilayah dengan nilai terendah sebagai lokasi sebenarnya
  • Hasil pengujian menunjukkan akurasi yang sesuai dengan hasil ipinfo, seperti di Polandia, Florida, dan Miami
  • Siapa pun dapat menjalankannya sebagai CLI tool open source, dan ini membuktikan kepraktisan metode verifikasi lokasi IP berbasis latensi

Ringkasan estimasi lokasi IP berbasis latensi

  • Dibuat sebuah CLI tool yang dapat menginterpretasikan alamat IP hingga tingkat negara, negara bagian di AS, dan kota
  • Mengacu pada kasus saat ipinfo membuktikan bahwa penyedia VPN mendaftarkan data lokasi palsu
    • ipinfo membangun jaringan probe berskala besar untuk melacak semua IP dan menguji ping guna memverifikasi lokasi fisik sebenarnya
  • Pendekatan ini memungkinkan penentuan lokasi yang andal berdasarkan data latensi dan hop, sambil menyingkirkan kesalahan pada data publik

Memanfaatkan jaringan Globalping

  • Globalping adalah proyek berbasis komunitas open source yang memungkinkan self-hosting probe berbentuk container
    • Saat ini ada lebih dari 3000 probe yang tersebar di seluruh dunia
    • Pengguna dapat menjalankan pengujian jaringan seperti ping dan traceroute melalui jaringan ini
  • CLI tool mengotomatiskan proses dengan library globalping-ts
    • Menguji ping IP yang dimasukkan dari berbagai benua
    • Memilih benua dengan latensi terendah
    • Lalu melakukan pengukuran yang lebih rinci dengan beberapa probe di benua tersebut

Struktur pengukuran per tahap

  • Tahap 1 (deteksi benua): uji ping dengan 5 probe di tiap benua
    • Contoh hasil: Eropa 32.39ms, Amerika Utara 137.18ms → memilih Eropa
  • Tahap 2 (deteksi negara): pengukuran dengan 50 probe di benua terpilih
    • Hasil: Polandia 7.29ms, Jerman 13.42ms, Lituania 17.65ms → diputuskan sebagai Polandia
  • Tahap 3 (deteksi negara bagian di AS): pengujian dengan 50 probe di AS
    • IP 'Bahama' milik NordVPN ternyata terdeteksi sebagai Florida (0.45ms)
  • Tahap 4 (deteksi kota): pengukuran dengan 36 probe di dalam negara bagian
    • Hasil: Miami (0.00ms), diikuti West Palm Beach dan Tampa

Akurasi dan keterbatasan

  • 'magic field' milik Globalping memilih probe secara acak pada tingkat benua, sehingga negara tertentu bisa terlewat
    • Akibatnya, ada kemungkinan terjadi salah deteksi ke negara tetangga
  • Untuk meningkatkan akurasi, perlu menentukan probe secara langsung per negara dan negara bagian, serta menyesuaikan jumlah probe
    • Contoh: untuk Amerika Utara, disarankan 200 probe AS, 20 probe Kanada, dan 10 probe Meksiko
  • Versi saat ini menggunakan jumlah probe minimum agar pengguna tanpa autentikasi pun dapat menjalankannya
    • Dengan autentikasi, tersedia hingga 500 pengujian per jam, dan kredit tambahan bisa diperoleh melalui hosting probe atau sponsor GitHub

Menjalankan dan memanfaatkan tool open source

  • Perintah: geolocate $IP
    • Opsi –limit dapat digunakan untuk menyesuaikan jumlah probe di tiap tahap
  • Panduan penggunaan lengkap tersedia di dokumentasi GitHub
  • Usulan perbaikan melalui Pull Request sangat disambut
  • Bisa juga meminta kredit gratis dan ikut berpartisipasi dalam hosting probe

Kesimpulan

  • Estimasi lokasi IP berbasis latensi adalah metode yang akurat dan praktis jika tersedia cukup banyak titik observasi
  • Dengan jaringan Globalping dan CLI tool open source, siapa pun dapat dengan mudah memverifikasi lokasi sebenarnya dari sebuah IP
  • Potensi pemanfaatannya juga beragam, termasuk verifikasi pemalsuan lokasi VPN, analisis routing jaringan, dan debugging performa

1 komentar

 
GN⁺ 2026-02-02
Komentar Hacker News
  • Ini proyek kecil untuk menguji apakah estimasi lokasi geografis bisa dilakukan dengan layanan seperti Globalping
    Masih sebatas demo sederhana, jadi belum memadai untuk penggunaan operasional nyata
    Agar benar-benar layak dipakai, tiap tahap membutuhkan setidaknya 500 probe
    Optimisasi sengaja dihindari agar tidak melampaui batas pengguna anonim
    • Sepertinya bisa dicoba pendekatan gradient descent untuk mengurangi jumlah probe sambil meningkatkan efisiensi
      Awalnya mengukur 3 kali dari beberapa benua, lalu membuang probe yang paling lambat dan menambahkan probe baru di dekat yang lebih cepat, lalu mengulang prosesnya
      Dengan begitu, alih-alih membaginya menjadi 5 tahap, posisi sebenarnya tampaknya bisa “dilacak” secara real time
      Konsepnya adalah melihat latency sebagai medan potensial skalar dan memanfaatkan gradiennya
    • Secara teori, bukankah 3 probe saja sudah cukup?
  • Mengesankan karena dibuat tanpa AI
    Pesan commit yang cuma satu kata memang lucu, tapi justru terasa lebih manusiawi
    • Ada garis pemisah “══════” di dalam kode, jadi saya merasa sebagian mungkin dibuat oleh Claude
  • Saya penasaran apakah server yang diukur bisa menambahkan latensi buatan berdasarkan IP sumber untuk memalsukan lokasinya
    • Sangat mungkin
      Misalnya, dengan alat seperti fakeroute, tipuan yang lebih canggih juga bisa dilakukan
      Hampir tidak ada nilai praktisnya, tapi idenya menarik
    • Bukan tidak mungkin, tetapi jauh lebih mudah kalau cukup tidak merespons ping
    • traceroute sendiri adalah alat yang sulit diinterpretasikan, jadi sangat mudah dipalsukan
      Seperti kasus lama ketika The Pirate Bay berpura-pura pindah ke Korea Utara, sebuah AS juga bisa menambahkan AS palsu ke rute BGP agar terlihat lebih meyakinkan
      Teknik seperti ini bisa berkembang menjadi permainan kucing-dan-tikus dengan VPN
      Referensi terkait: diskusi Reddit, kasus di HN
    • Beberapa ISP regional di AS (Xfinity, Charter, dll.) sudah mengalami latensi buatan akibat Bufferbloat
      Bahkan pada koneksi 1000/30Mbps, latensi bisa mencapai 2500ms
  • Saya pernah melihat pendekatan serupa dalam riset ‘You Can’t Cheat Time’ yang dipresentasikan di DEFCON 31
    Video presentasi
    Keterbatasan geolokasi berbasis ping adalah sebagai berikut:
    IP biasanya sudah punya informasi lokasi di DB, asimetri routing merusak model berbasis jarak, Anycast/CDN membuat satu IP hadir di banyak lokasi, dan ICMP bisa diblokir atau diberi prioritas rendah
    Saya memakai model latensi HTTP(S) + ML(SVR) alih-alih ping, dan melatihnya dengan 39 ribu data
    Untuk server di balik CloudFront, galatnya sekitar 600 km
    Yang lebih penting daripada presisi adalah deteksi sandbox, malware geofence, dan memberikan sinyal lokasi tambahan saat DB IP gagal
    • Jika ingin menghindari pelacakan, Anda bisa menambahkan latensi acak ke semua paket, atau membuat aturan latensi sengaja per sumber ping agar terlihat seolah-olah berada di lokasi yang diinginkan
  • Mengejutkan bahwa pendekatan seperti ini tetap bisa bekerja meski variasi latensinya besar
    Dulu saat berbicara dengan teman dari Belanda, saya pernah mengakses konten NL dari Inggris dengan latensi lebih rendah
    Mungkin itu karena perbedaan kualitas peering
    • Saya bekerja di IPinfo
      Kami sedang menjalankan proyek berbagi data routing dan peering bekerja sama dengan IXP dan lembaga internet utama
      Di beberapa negara, ada peering langsung dengan IXP di benua lain sehingga perbedaan latensinya setara ribuan km
      Bahkan ada kasus nyata di mana lalu lintas antara dua operator dalam satu negara justru memutar lewat luar negeri
      Fenomena ini sedang kami koreksi dengan algoritme geoinformasi berbasis pengukuran
      Tujuan akhirnya adalah membantu IXP, operator, dan lembaga tata kelola internet menyelesaikan masalah seperti ini
    • Bisa juga semata-mata karena latensi jalur lokal
      Pada VDSL atau DOCSIS, segmen 1 km saja bisa menambah 5–15ms latensi
      Sementara London–Amsterdam sekitar 7ms
    • Mungkin juga karena kontennya diambil dari cache pada PoP terdekat
      Dulu bahkan kota-kota besar di Belanda kekurangan kabel serat optik
    • Dari kota saya ke server di Prancis jarak garis lurusnya 250 km, tetapi jika dihitung dari ping hasilnya 2000 km
      Artinya, jaraknya terlihat lebih dari 8 kali lebih jauh daripada kenyataannya
      Server di Inggris lebih jauh, tetapi ping-nya justru lebih rendah
      Pendekatan berbasis traceroute lebih realistis daripada ping
  • Terima kasih kepada Dimitry. Seluruh tim IPinfo juga berterima kasih atas penyebutannya
    Peneliti kami Calvin akan membawakan presentasi tentang geolokasi IP berbasis pengukuran di NANOG96
    Tautan presentasi
  • Ide dan eksekusinya benar-benar keren
    Saya berharap lebih banyak proyek seperti ini muncul di HN
  • Dari tulisannya, kelihatannya pendekatannya hanya memilih ping terpendek sebagai lokasi
    Ini terlalu sederhana, jadi sepertinya akan lebih akurat jika memakai triangulasi (triangulation)
    • Seperti yang juga disebutkan dalam tulisan itu, tujuannya hanyalah proof of concept sederhana
      Dengan probe yang cukup dan sedikit keberuntungan, hasilnya ternyata bisa bekerja lumayan baik
      Tentu saja ada banyak cara yang lebih cerdas
    • Tetapi paket tidak bergerak dalam garis lurus, jadi perhitungan jarak sederhana tidak terlalu bermakna
  • Saya membagikan pengalaman memakai teknik seperti ini di lingkungan layanan nyata
    1. Dalam routing internet, trilaterasi (trilateration) hampir tidak berfungsi
      Karena itu, memakai satu pengukuran terdekat adalah pendekatan yang paling realistis
      Untuk mendapatkan data yang berguna, dibutuhkan ribuan node pada skala kota
    2. Pengukuran seperti ini lebih cocok untuk memvalidasi data lokasi yang sudah ada
    3. Hop traceroute berguna untuk menemukan lokasi router
      RIPE IPmap sudah memetakan sebagian besar router publik dengan akurat
    4. Ini bekerja baik untuk infrastruktur atau IP server, tetapi punya keterbatasan pada jaringan pengguna biasa
      Sebagai alat pembanding, saya juga merekomendasikan ping.sx
  • Jika melihat IP route dari jalur balik, sering kali hasilnya cukup akurat hingga level state di AS
    FQDN pada hop terakhir sering kali memuat kode bandara atau kode kota, sehingga cukup membantu