首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于nc -l和nc -lp的混淆

关于nc -l和nc -lp的混淆
EN

Ask Ubuntu用户
提问于 2020-06-23 04:16:18
回答 2查看 1.4K关注 0票数 0

nc -l的手册中,它说:

代码语言:javascript
复制
It is an error to use this option in conjunction with the -p, -s, or -z options.

但是,我在网上看到的使用此命令的大多数示例都使用nc -lp [port]

你能在-p-l一起使用nc吗?对于nc -l [port],这是正确的用法,因为当我用nc [ip address] [port]连接到另一个终端上时,它可以工作。另外,当我使用nc -lp [port]并使用nc [ip address] [port]连接到它时,它也能工作。这两个命令有什么区别吗?

EN

回答 2

Ask Ubuntu用户

回答已采纳

发布于 2020-06-23 05:00:04

请注意,有两个netcat包。对于它们提供的nc命令,选项是不一样的:

网猫-传统将此命令显示为主要示例之一:

代码语言:javascript
复制
nc -l -p port [-options] [hostname] [port]

netcat-openbsd声明:

-l侦听传入的连接,而不是启动到远程主机的连接。要侦听的目标和端口可以指定为非可选参数,也可以分别使用选项-s和-p。不能与-x或-z一起使用。此外,使用-w选项指定的任何超时都将被忽略。

因此,是的,这两个命令都执行相同的操作,但是您可能会遇到一些不适用于netcat版本的示例。例如,-e

票数 2
EN

Ask Ubuntu用户

发布于 2020-06-23 04:52:46

当您使用侦听模式-l时,必须指定端口。例如:

代码语言:javascript
复制
nc -l 3000  # Listen at port 3000 to all network interfaces
代码语言:javascript
复制
nc -l4 3000  # Listen at port 3000 to all IPv4 network interfaces
代码语言:javascript
复制
nc -l6 3000  # Listen at port 3000 to all IPv6 network interfaces

因此,实际上,您不需要像-p这样的附加选项来指示nc命令在哪个端口侦听。使用-lp选项的示例可能是基于旧版本的nc,或者编写人员没有像您一样阅读手册:)也可能在使用-lp组合时省略了-p选项。

此外,下面是如何创建基于nc如何从命令行监听新端口Ubuntu?的侦听服务

票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1252972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档