Netcat 使用的端口与请求的端口不同

0 linux portforwarding netcat

我有以下问题。我正在使用 Debian GNU/Linux Stretch,并尝试使用 netcat 作为简单的服务器。我使用以下命令启动它:

$ netcat -l 127.0.0.1 33333
Run Code Online (Sandbox Code Playgroud)

它启动得很好并接受连接,但端口与请求的端口不同:

$ netstat -tulpn | grep netcat
tcp        0      0 0.0.0.0:38782           0.0.0.0:*               LISTEN      2851/netcat    
Run Code Online (Sandbox Code Playgroud)

此行为与请求的端口、用户或 ufw 状态无关。最近我用以下软件包安装了 LXC:

  • 阿帕莫尔
  • 桥接工具
  • CG经理
  • libapparmor-perl
  • 长沙

后来所有内容都被删除了,但不知何故,我觉得这种行为可能与配置中的一些更改有关。

Ken*_*ney 5

看起来您正在使用传统的,这需要为侦听端口netcat提供参数:-p

netcat -l 127.0.0.1 -p 33333
Run Code Online (Sandbox Code Playgroud)

nc -h

   -p port                 local port number
Run Code Online (Sandbox Code Playgroud)

您使用的语法适用于OpenBSD netcat