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,简单用法举例
1)端口扫描
# nc -v -w 2 192.168.2.34 -z 21-24 nc: connect to 192.168.2.34 port 21 (tcp) failed: Connection refused Connection to 192.168.2.34 22 port [tcp/ssh] succeeded! nc: connect to 192.168.2.34 port 23 (tcp) failed: Connection refused nc: connect to 192.168.2.34 port 24 (tcp) failed: Connection refused
2)从192.168.2.33拷贝文件到192.168.2.34 在192.168.2.34上:# nc -l 1234 > test.txt 在192.168.2.33上:# nc 192.168.2.34 < test.txt
3)简单聊天工具 在192.168.2.34上: nc -l 1234 在192.168.2.33上: nc 192.168.2.34 1234 这样,双方就可以相互交流了。使用ctrl+C(或D)退出。
4)建立从本地1234端口到host.example.com的80端口连接,5秒超时
nc -p 1234 -w5 host.example.com 80
5)u为UDP连接
nc -u host.example.com 53
1)存储数据:printf “set key 0 10 6rnresultrn” |nc 192.168.2.34 11211 2)获取数据:printf “get keyrn” |nc 192.168.2.34 11211 3)删除数据:printf “delete keyrn” |nc 192.168.2.34 11211 4)查看状态:printf “statsrn” |nc 192.168.2.34 11211 5)模拟top命令查看状态:watch “echo stats” |nc 192.168.2.34 11211 6)清空缓存:printf “flush_allrn” |nc 192.168.2.34 11211 (小心操作,清空了缓存就没了)
3,用nc代替scp远程复制文件
接收端先监听 #nc -l 1234 > file1 发送端链接接受端发送文件 #nc -w 1 192.168.1.100 1234 < file1
At the server console:
$ nc -v -w 30 -l 5600 > filename.back
and on the client side:
$ nc -v -w 2 10.0.1.1 5600 < filename
3,克隆硬盘或者分区
操作与上面的拷贝是雷同的,只需要由dd获得硬盘或分区的数据,然后传输即可。 克隆硬盘或分区的操作,不应在已经mount的的系统上进行。所以,需要使用安装光盘引导后,进入拯救模式(或使用Knoppix工 具光盘)启动系统后,在server2上进行类似的监听动作: # nc -l -p 1234 | dd of=/dev/sda server1上执行传输,即可完成从server1克隆sda硬盘到server2的任务: # dd if=/dev/sda | nc 192.168.228.222 1234 ※ 完成上述工作的前提,是需要落实光盘的拯救模式支持服务器上的网卡,并正确配置IP。
4,发送web请求
file内容,web请求 GET / HTTP/1.0 Host: www.baidu.com 这里两个空行 用nc发送请求 # cat file | nc www.baidu.com 80