версії netcat


8

Я спробував дві основні версії netcat: GNU та BSD. (моя версія BSD).

У версії GNU команда $ nc -l -p 12345 працює нормально, але при BSD опція -l (прослуховування) не може бути використана в поєднанні з -p (локальний порт).

Я не розумію, чому існує така різниця між цими двома версіями? У BSD-версії, коли я використовую опцію -p, вона викликає автоматично -l (прослуховування)?

Дякую ;-)

Ps: https://bugs.launchpad.net/ubuntu/+source/netcat-openbsd/+bug/590925/comments/3 -p відрізняється між ними. Версія OpenBSD використовує його для встановлення вихідного порту для віддалених підключень, тоді як традиційний nc використовує його для визначення локального порту, на якому він буде прослуховуватись у режимі прослуховування.


3
У BSD-версії -lприймає порт для прослуховування, тому він -pвзагалі не потрібен. Я не впевнений, що -pбез цього -l. Я не знаю, чому є різниця.

1
Спробуйте ncat (у дистрибутиві nmap).
Вільям Перселл

1
Спробуйте socat, зовсім інший синтаксис, але набагато більше можливостей, ніж старий добрий netcat.
Marcin

@icktoofay, якщо ви перейдете, ви коментуєте відповіді, я піднесуть голосування, а потім проголосуйте, щоб закрити ... просто позначте мене на посаді, щоб я бачив це
RobotHumans

Пакети Ubuntu призначені і netcat-traditionalдля GNU, netcat-openbsdі netcatдля BSD.
Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功

Відповіді:


4

У BSD-версії -l приймає порт для прослуховування, тому -p взагалі не потрібен. Я не впевнений, що -p робить без -l. Я не знаю, чому є різниця. - icktoofay <- кредит на рішення йде на того хлопця ... але я не думаю, що у нього є обліковий запис на SU, просто ТАК.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.