Apa perbedaan antara ncat, nc dan netcat?

20

Saya tidak yakin kapan harus digunakan nc, netcatatau ncat. Jika salah satu adalah versi usang dari yang lain? Jika satu hanya tersedia pada satu distribusi? Jika itu perintah yang sama tetapi dengan nama yang berbeda?

Sebenarnya saya agak bingung. Pertanyaan saya muncul karena ingin melakukan tes kecepatan jaringan antara dua server CentOS 7. Saya menemukan beberapa contoh menggunakan ncdan ddtetapi tidak banyak menggunakan netcatatau ncat.

Bisakah seseorang menjelaskan ini untuk saya?

Pozinux
sumber

Jawaban:

23

ncdan netcatdua nama untuk program yang sama (biasanya, satu akan menjadi symlink ke yang lain). Meskipun — untuk banyak kebingungan — ada dua implementasi berbeda dari Netcat ("tradisional" dan "OpenBSD"), dan mereka mengambil opsi yang berbeda dan memiliki fitur yang berbeda.

Ncat adalah ide yang sama, tetapi dari proyek Nmap. Ada juga socat, yang merupakan ide serupa. Ada juga /dev/tcp, fitur Bash (opsional).

Namun, jika Anda ingin melakukan tes kecepatan jaringan maka semua jawaban di atas adalah jawaban yang salah. Anda sedang mencari iperf3 ( situs 1 atau situs 2 atau kode ).

derobert
sumber
Apakah maksud Anda pengujian (tes cepat) kecepatan jaringan menggunakan dd dan nc tidak dapat diandalkan?
Pozinux
3
@Pozinux dd / nc akan memberikan Anda bandwidth rata-rata, tetapi tidak ada info tambahan yang bermanfaat yang diberikan iperf3 (apakah stabil, apakah TCP mengalami start lambat, ada transmisi ulang, dll.). Semua itu sangat berguna (hampir diperlukan) untuk memecahkan masalah bandwidth rendah yang tidak terduga, atau bahkan untuk memahami apa artinya "Anda mendapat X mbps".
derobert
Ok terima kasih, saya tidak tahu tentang alat ini.
Pozinux
7

Melihat paket-paket di Debian, ada dua implementasi berbeda dari netcat ( nc), saya pikir keduanya menginstal dengan netcatserta ncdisinkronkan ke biner yang sama (Meskipun mereka menggunakan sistem "alternatif" Debian untuk mengontrol mana salah satu implementasi muncul dengan nama utama.) Keduanya adalah netcat-traditional("netcat" "klasik", yang ditulis oleh Hobbit . Keduanya tidak memiliki banyak fitur yang ditemukan di netcat-openbsd. ") dan netcat-openbsd(" penulisan OpenBSD dari netcat, termasuk dukungan untuk IPv6, proksi, dan Unix soket. ").

ncatadalah versi netcat dari Proyek Nmap yang diklaim sebagai "implementasi yang jauh lebih baik dari Netcat yang terhormat".

Ketiganya tampaknya memiliki fungsi dasar yang sama, seperti untuk dapat membuka soket dan menyambungkan atau mendengarkan, tetapi untuk apa pun di atas itu, Anda mungkin ingin memeriksa manual versi Anda. (Yang OpenBSD tidak mendukung -euntuk mengeksekusi perintah setelah koneksi, misalnya.)

ilkkachu
sumber