Libtraceroute adalah perpustakaan traceroute lintas platform untuk Rust, yang memungkinkan menampilkan kemungkinan rute (jalur) dan mengukur penundaan transit paket melalui jaringan Internet Protocol (IP). Libtraceroute menggunakan pnet, perpustakaan jaringan tingkat rendah, untuk mengirim dan menangkap paket pada lapisan tautan data, yang memungkinkannya beroperasi tanpa memerlukan hak akses root pada MacOS dan Windows, namun masih memerlukan sudo di Linux.
Libtraceroute bekerja pada lapisan data link dengan paket yang dibuat khusus, yang memberi pengguna banyak opsi untuk penyesuaian. Perpustakaan memungkinkan untuk mengonfigurasi parameter berikut:
Untuk menggunakan libtraceroute di proyek Anda, tambahkan yang berikut ke Cargo.toml Anda:
[dependencies]
libtraceroute = "0.1.0"
CATATAN! Jika Anda menggunakan Windows, ikuti petunjuk berikut agar pnet berfungsi:
jendela
- Anda harus menggunakan versi Rust yang menggunakan toolchain MSVC
- Anda harus sudah menginstal WinPcap atau npcap (diuji dengan versi WinPcap 4.1.3) (Jika menggunakan npcap, pastikan untuk menginstal dengan "Instal Npcap dalam Mode yang kompatibel dengan API WinPcap")
- Anda harus menempatkan
Packet.lib
dari paket Pengembang WinPcap di direktori bernamalib
, di root repositori ini. Alternatifnya, Anda dapat menggunakan salah satu lokasi yang tercantum dalam variabel lingkungan%LIB%
/$Env:LIB
. Untuk toolchain 64 bit ada diWpdPack/Lib/x64/Packet.lib
, untuk toolchain 32 bit ada diWpdPack/Lib/Packet.lib
.
Sumber: https://github.com/libpnet/libpnet/blob/master/README.md