nc 命令简介
nc 全程是netcat 是Linux下常用的一种网络工具(网络的瑞士尖刀);nc 通信通过TCP/IP协议进行数据的读取和写入,
可以是TCP 、UDP进行网络链接后通信。
nc 扫描端口
- nc 最重用的功能就是用来扫描端口是否开通,跟telnet 有点类似:
nc -v -w 2 `hostname -i` 3901-3905
nc: connect to 10.246.46.15 port 3901 (tcp) failed: Connection refused
nc: connect to 10.246.46.15 port 3902 (tcp) failed: Connection refused
Connection to 10.246.46.15 3903 port [tcp/charsetmgr] succeeded! #端口开通
nc: connect to 10.246.46.15 port 3904 (tcp) failed: Connection refused
Connection to 10.246.46.15 3905 port [tcp/mupdate] succeeded! #端口开通
nc -v -w 2 `hostname -i` 3901
nc: connect to 10.246.46.15 port 3901 (tcp) failed: Connection refused
echo $?
1
nc -v -w 2 `hostname -i` 3903
Connection to 10.246.46.15 3903 port [tcp/charsetmgr] succeeded!
echo $?
0
nc 聊天工具
nc 是一个TCP/IP 网络协议工具,肯定就可以进行TCP连接后续的通信,可以用nc 模拟一个最简单的聊天工具:
nc -l 55555
shi ni
shiwo^H^H
ni hao shuming
shmming ni hao nc 10.246.46.15 55555
shi ni
shiwo
ni hao shuming
shmming ni hao
nc 传输文件
既然nc 是TCP/IP 协议的网络连接,可以用nc 建立连接来传输文件
- 传输文件方把文件内容写到nc 开启的端口listen中
cat rpyc.py |nc -l 33333
- 接收文件方,nc 连接传输文件机器的listen 端口,并把文件接收写入指定文件中
nc 10.246.46.15 33333 > rpyc.py
nc 使用详解:
|