Linux
奇怪的 netcat(OpenBSD 版本)行為
我使用的是 Ubuntu 伺服器 16.04.3,它帶有 OpenBSD 版本的 netcat。
我之前在 Fedora 中使用過 OpenBSD 版本的 netcat,在 Fedora 中我不能使用
-p
帶有選項的-l
選項,例如以下是非法的:nc -l -p 12345
但在 Ubuntu 伺服器 16.04.3 中,上述命令有效(“有效”,我的意思是 netcat 開始監聽)!
即使
man nc
在 Ubuntu 伺服器 16.04.3 本身上說它是非法的:為什麼會這樣?!
這是因為 Debian/Ubuntu 版本的“netcat-openbsd”實際上不是OpenBSD 程式碼。它是 OpenBSD 程式碼,對 Debian/Ubuntu 進行了重大修改,尚未發回給原始軟體的維護者。
其中一項更改是由 Debian 人員 Aron Xu 編寫的,它可以將
-p
選項與選項一起使用-l
。和往常一樣,這個更新檔只是完成了一半的工作,並沒有修復 doco 以匹配程序。如文件所述,使用香草程序,這是不可能的。
進一步閱讀