Linux nc常用命令

Linux nc常用命令

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

nc/netcat(选项)(参数)
选项:

-g<网关>:设置路由器跃程通信网关,最多设置8个;
-G<指向器数目>:设置来源路由指向器,其数值为4的倍数;
-h:在线帮助;
-i<延迟秒数>:设置时间间隔,以便传送信息及扫描通信端口;
-l:使用监听模式,监控传入的资料;
-n:直接使用ip地址,而不通过域名服务器;
-o<输出文件>:指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存;
-p<通信端口>:设置本地主机使用的通信端口;
-r:指定源端口和目的端口都进行随机的选择;
-s<来源位址>:设置本地主机送出数据包的IP地址;
-u:使用UDP传输协议;
-v:显示指令执行过程;
-w<超时秒数>:设置等待连线的时间;
-z:使用0输入/输出模式,只在扫描通信端口时使用。

参数:

主机:指定主机的IP地址或主机名称;
端口号:可以是单个整数或者是一个范围。

TCP端口扫描

# nc -v -z -w2 192.168.0.3 1-100
-v:显示指令执行过程;
-z:使用0输入/输出模式,只在扫描通信端口时使用。
-w2:设置等待连线的时间为2s;
root@kali:~/Desktop# nc -v -z -w2 192.168.211.106 38324
192.168.211.106: inverse host lookup failed: Unknown host
(UNKNOWN) [192.168.211.106] 38324 (?) open

root@kali:~/Desktop# nc -v -z -w2 192.168.211.106 38322-38325
192.168.211.106: inverse host lookup failed: Unknown host
(UNKNOWN) [192.168.211.106] 38324 (?) open

UDP端口扫描

# nc -u -z -w2 192.168.0.1 1-1000 //扫描192.168.0.3 的端口 范围是 1-1000

扫描指定端口

# nc -nvv 192.168.0.1 80 //扫描 80端口
(UNKNOWN) [192.168.0.1] 80 (?) open

使用netcat实现局域网聊天

一端先启好监听:

nc -l 9999

另一端端进行连接:

nc 192.168.220.128 9999

连接之后的任一边的输入在另一边都可看到

#Ubantu (192.168.118.137 9999)

ldl@ubuntu:~$ nc -l 9999
wode
我的
Linux真好用 ^H,^H^H-=13
#kali(192.168.118.134)

root@kali:~/Desktop# nc 192.168.118.137 9999
wode^H^H^H
我的
Linux真好用-=13

发现输入的内容(中文英文字符)都可以正确解析,但是非打印字符不会传输。退格等键无用。

Ctrl+C 断开连接。

使用netcat实现文件传输

和局域网聊天是原理一样的,不过把输入输出重定向到文件
接收入端先启好监听:

nc -l 9999 > recv.txt

发送端进行发送:

nc 192.168.220.128 9999 < send.txt

不过传输完之后不会自动断开连接得手动ctrl+c断开,而且转输完成并没有什么标志不知是否已传完。


接收端:

ldl@ubuntu:~/Desktop$ ls
源代码
ldl@ubuntu:~/Desktop$ nc -l 9999 > test.c
^C
ldl@ubuntu:~/Desktop$ ls
test.c  源代码

发送端:
root@kali:~/Desktop# nc 192.168.118.137 9999 < test.c


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值