nc基本命令操作

一、基本使用 


1.想要连接到某处: nc [-options] hostname port[s] [ports] ... 
绑定端口等待连接: nc -l -p port [-options] [hostname] [port] 
参数: 
-e prog 程序重定向,一旦连接,就执行 [危险!!] 
-g gateway source-routing hop point[s], up to 8 
-G num source-routing pointer: 4, 8, 12, ... 
-h 帮助信息 
-i secs 延时的间隔 
-l 监听模式,用于入站连接 
-n 指定数字的IP地址,不能用hostname 
-o file 记录16进制的传输 
-p port 本地端口号 
-r 任意指定本地及远程端口 
-s addr 本地源地址 
-u UDP模式 
-v 详细输出——用两个-v可得到更详细的内容 
-w secs timeout的时间 
-z 将输入输出关掉——用于扫描时 
其中端口号可以指定一个或者用lo-hi式的指定范围。 
例如:扫描端口 
tcp扫描 
C:\nc>nc -v -z -w2 192.168.0.80 1-140 
net [192.168.0.80] 140 (?) 
net [192.168.0.80] 139 (netbios-ssn) open 
net [192.168.0.80] 138 (?) 
net [192.168.0.80] 137 (netbios-ns) 
net [192.168.0.80] 136 (?) 

udp扫描 
C:\nc>nc -u -v -z -w2 192.168.0.80 1-140 
net [192.168.0.80] 140 (?) open 
net [192.168.0.80] 139 (?) open 
net [192.168.0.80] 138 (netbios-dgm) open 

二、常见使用


1、远程拷贝文件


从server1拷贝文件到server2上。需要先在server2上,,用nc激活监听,

server2上运行: nc -l 1234 > text.txt

server1上运行: nc 192.168.10.11 1234 < text.txt

注:server2上的监听要先打开


2、克隆硬盘或分区


操作与上面的拷贝是雷同的,只需要由dd获得硬盘或分区的数据,然后传输即可。
克隆硬盘或分区的操作,不应在已经mount的的系统上进行。所以,需要使用安装光盘引导后,进入拯救模式(或使用Knoppix工具光盘)启动系统后,在server2上进行类似的监听动作:

 nc -l -p 1234 | dd of=/dev/sda

server1上执行传输,即可完成从server1克隆sda硬盘到server2的任务:

 dd if=/dev/sda | nc192.168.10.11 1234

※ 完成上述工作的前提,是需要落实光盘的拯救模式支持上的网卡,并正确配置IP。


3、端口扫描

可以执行:

nc -v -w 2 192.168.10.11 -z 21-24
nc: connect to 192.168.10.11 port 21 (tcp) failed: Connection refused
Connection to 192.168.10.11 22 port [tcp/ssh] succeeded!
nc: connect to 192.168.10.11 port 23 (tcp) failed: Connection refused
nc: connect to 192.168.10.11 port 24 (tcp) failed: Connection refused 
-z后面跟的是要扫描的端口

这样,双方就可以相互交流了。使用Ctrl+D正常退出。

4、传输目录


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

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

server1上运行:# tar czvf - nginx-0.6.34|nc 192.168.10.11 1234

 使用NC命令在两台服务器间传文件:
例:
x.2服务器将当前目录shell下文件传至x.3
使用nc命令传输
1.在x.3执行如下nc命令
  nc -l 1234|tar xzvf -
2.在x.2执行如下命令
tar czvf - shell |nc 10.7.1.29 1234

5、用nc命名操作memcached

1)存储数据:printf “set key 0 10 6rnresultrn” |nc 192.168.10.11 11211
2)获取数据:printf “get keyrn” |nc 192.168.10.11 11211
3)删除数据:printf “delete keyrn” |nc 192.168.10.11 11211
4)查看状态:printf “statsrn” |nc 192.168.10.11 11211
5)模拟top命令查看状态:watch “echo stats” |nc 192.168.10.11 11211
6)清空缓存:printf “flush_allrn” |nc 192.168.10.11 11211 (小心操作,清空了缓存就没了)

nc -p 1234 -w 5 host.example.com 80

建立从本地1234端口到host.example.com的80端口连接,5秒超时

nc -u host.example.com 53

u为UDP连接

nc -v -z host.example.com 70-80

扫描端口(70到80),可指定范围。-v输出详细信息。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值