网络猫的版本

8 networking shell command-line netcat

我已经尝试过 netcat 的两个主要版本:GNU 和 BSD。(我的是 BSD 版本)。

在 GNU 版本上,命令 $ nc -l -p 12345 可以正常工作,但是对于 BSD,选项 -l(listen)不能与 -p(本地端口)结合使用。

我不明白为什么这两个版本之间有这么大的区别?在 BSD 版本中,当我使用选项 -p 时,它会自动调用 -l (listen) ?

谢谢 ;-)

Ps:https : //bugs.launchpad.net/ubuntu/+source/netcat-openbsd/+bug/590925/comments/3 -p 两者不同。OpenBSD 版本使用它来设置远程连接的源端口,而传统的 nc 使用它来指定在侦听模式下将侦听的本地端口。

Rob*_*ans 5

在 BSD 版本中,-l 使用端口进行侦听,因此根本不需要 -p。我不确定 -p 没有 -l 会做什么。我不知道为什么有区别。– icktoofay <--解决方案的功劳归功于那个人......但我认为他没有 SU 的帐户,只是 SO。