linux系统nc命令的使用

linux系统nc命令的使用,第1张

用yum进行安装,若安装旧版本的可能会有些命令参数无法正常使用

nc -z -v -n 192.168.137.2 1-100 扫描192.168.137.2地址1-100的端口

可以运行在TCP或者UDP模式,默认是TCP,-u参数调整为udp

z 参数告诉netcat使用0 IO,连接成功后立即关闭连接,不进行数据交换

v 参数指使用冗余选项

n 参数告诉netcat不要使用DNS反向查询IP地址的域名

nc -v 192.168.137.2 22

连接该地址开放的22端口,并且打印运行在这个端口上服务的banner信息

现有两台服务器:192.168.137.2和192.168.137.10,分别命名为A和B

使A和B可以互相聊天

A nc -n -l -u -p 1000

B nc -n -u 192.168.137.2 1000

-u参数调整为udp

-l 表示在服务器端启用监听模式

-n  不做域名解析

-p 指定监听的端口

这时A和B两台服务器便可在命令行进行聊天

使A和B之间相互传输单个文件

A nc -l 2000 >file.txt 在A中开一个2000端口并进行监听,将写入的内容放到本地命名为file.txt

B nc 192.168.137.2 2000 <file.txt 将B中file.txt传送到Aip的2000端口

在A与B之间互传文件夹

在A中/root/下创建ceshi目录,并在ceshi下创建test.txt

A tar -cvf - ceshi |nc -l 1000

B nc 192.168.137.2 1000 |tar -xvf -

这时发现在B中已经有了A传送过去的ceshi目录

=======================================================================

A:192.168.0.131(接收方) B:192.168.0.10(发送方)

本次打算用3333端口传送数据,在 *** 作前先确保两台服务器的防火墙不会禁止3333端口

先在A上 *** 作:进入要接收数据的目录下

while true

do

nc -l 3333|tar -xvf -

done

这时在看该机器3333端口已打开

再去B上 *** 作:进入要传送的目录下

tar -cvf - 文件/目录名 |nc 192.168.0.131 3333

这时两台机器间便开始传送数据

Linux中nc命令是一个功能强大的网络工具,全称是netcat。

语法:

nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...]

参数说明:

-g<网关>设置路由器跃程通信网关,最丢哦可设置8个。

-G<指向器数目>设置来源路由指向器,其数值为4的倍数。

-h 在线帮助。

-i<延迟秒数>设置时间间隔,以便传送信息及扫描通信端口。

-l 使用监听模式,管控传入的资料。

-n 直接使用IP地址,而不通过域名服务器。

-o<输出文件>指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。

-p<通信端口>设置本地主机使用的通信端口。

-r 乱数指定本地与远端主机的通信端口。

-s<来源位址>设置本地主机送出数据包的IP地址。

-u 使用UDP传输协议。

-v 显示指令执行过程。

-w<超时秒数>设置等待连线的时间。

-z 使用0输入/输出模式,只在扫描通信端口时使用。

实例:

1、TCP端口扫描

# nc -v -z -w2 127.0.0.1 1-100

Connection to 127.0.0.1 22 port [tcp/ssh] succeeded!

Connection to 127.0.0.1 53 port [tcp/domain] succeeded!

Connection to 127.0.0.1 80 port [tcp/http] succeeded!

...

nc: connect to 127.0.0.1 port 100 (tcp) failed: Connection refused

2、从192.168.1.2拷贝文件到192.168.1.3

首先在接收端192.168.1.3上: nc -l 1234 >test.txt

然后在发送端192.168.1.2上: nc 192.168.1.3 <test.txt

注意:先运行接收端,指定一个端口为1234,文件为test.txt,再执行发送端,并且发送端必须存在同名的文件test.txt

3、传输目录

从server1(192.168.16.233)拷贝nginx目录内容到server2(192.168.48.47)上。需要先在server2上,用nc激活监听,

server2上运行:# nc -l 1234 | tar xzv-

server1上运行:# tar czv- nginx | nc 192.168.48.47 1234

4、简单聊天工具

在192.168.1.2上: nc -l 1234

在192.168.1.3上: nc 192.168.1.2 1234

这样,双方就可以相互交流了。使用ctrl+C(或D)退出

echo -n “foo" | nc -4u -w1 <host><udp port>

或者

echo -n "hello" >/dev/udp/localhost/8000


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8287566.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存