Я попробовал две основные версии netcat: GNU и BSD. (моя версия BSD).
В версии GNU команда $ nc -l -p 12345 работает нормально, но с BSD опция -l (listen) не может использоваться в сочетании с -p (локальный порт).
Я не понимаю, почему существует такая разница между этими двумя версиями? В версии BSD, когда я использую опцию -p, она автоматически вызывает -l (прослушивать)?
Спасибо ;-)
Ps: https://bugs.launchpad.net/ubuntu/+source/netcat-openbsd/+bug/590925/comments/3 -p отличается между этими двумя. Версия OpenBSD использует его для установки исходного порта для удаленных подключений, в то время как традиционный nc использует его для указания локального порта, который будет прослушиваться в режиме прослушивания.
-l
принимает порт для прослушивания, поэтому он-p
вообще не нужен. Я не уверен, что-p
обходится без-l
. Я не знаю, почему есть разница.netcat-traditional
для GNU,netcat-openbsd
а такжеnetcat
для BSD.Ответы:
В версии BSD -l принимает порт для прослушивания, поэтому -p вообще не нужен. Я не уверен, что -p обходится без -l. Я не знаю, почему есть разница. - icktoofay <- кредит на решение достается этому парню ... но я не думаю, что у него есть аккаунт на SU, просто ТАК.
источник