versi netcat

8

Saya sudah mencoba dua versi utama netcat: GNU dan BSD. (milik saya adalah Versi BSD).

Pada versi GNU, perintah $ nc -l -p 12345 berfungsi dengan baik tetapi dengan BSD, opsi -l (dengarkan) tidak dapat digunakan bersamaan dengan -p (port lokal).

Saya tidak mengerti mengapa ada perbedaan antara kedua versi ini? Dalam versi BSD, ketika saya menggunakan opsi -p, ia memanggil secara otomatis -l (dengarkan)?

terima kasih ;-)

Ps: https://bugs.launchpad.net/ubuntu/+source/netcat-openbsd/+bug/590925/comments/3 -p berbeda antara keduanya. Versi OpenBSD menggunakannya untuk mengatur port sumber untuk koneksi jarak jauh, sedangkan nc tradisional menggunakannya untuk menentukan port lokal di mana ia akan mendengarkan ketika dalam mode mendengarkan.


sumber
3
Dalam versi BSD, -lgunakan port untuk mendengarkan, jadi -ptidak diperlukan sama sekali. Saya tidak yakin apa yang -ptanpa -l. Saya tidak tahu mengapa ada perbedaan.
1
Coba ncat (di distro nmap).
William Pursell
1
Coba socat, sintaks yang sama sekali berbeda, tetapi jauh lebih banyak kemampuan daripada netcat lama yang bagus.
Marcin
@icktoofay jika Anda menggerakkan Anda mengomentari jawaban, saya akan angkat suara lalu pilih untuk menutup ... cukup tandai saya di pos jadi saya melihatnya
RobotHumans
Paket Ubuntu adalah netcat-traditionaluntuk GNU, dan netcat-openbsddan netcatuntuk BSD.
Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功

Jawaban:

4

Dalam versi BSD, -l membutuhkan port untuk mendengarkan, jadi -p tidak diperlukan sama sekali. Saya tidak yakin apa yang dilakukan -p tanpa -l. Saya tidak tahu mengapa ada perbedaan. - icktoofay <- kredit untuk solusi diberikan kepada orang itu ... tapi saya tidak berpikir dia memiliki akun di SU, hanya SO.

RobotHumans
sumber