当前位置:   article > 正文

nc命令详解

nc命令详解

nc(netcat)是一个简单、可靠的网络工具,可以用于实现任意TCP/UDP端口的侦听、端口扫描、机器之间传输文件等任务。

常用参数说明:

  • -h:打印帮助。

  • -k:强制nc在其当前连接完成后继续侦听另一个连接。-k 必须与 -l 一起使用。

  • -l:用于指定nc将处于侦听模式,即作为server侦听指定端口。

  • -n:不对任何指定的地址、主机名或端口进行任何DNS或服务查找。

  • -p:指定本机应该使用的源端口。

  • -s:指定发送数据的源IP地址,适用于多网卡机。

  • -u:指定nc使用UDP协议,默认为TCP。

  • -v:输出交互或出错信息,新手调试时尤为有用。

  • -w:超时秒数,后面跟正整数。

  • -z:表示zero,表示扫描时不发送任何数据。

nc命令的用法示例:

1. 测试远程主机指定tcp/udp端口是否开放

  1. nc -zv 8.8.8.8 53
  2. nc -uzv 8.8.8.8 53

2. 打开一个到 10.0.10.9 的52端口的TCP连接,使用31337端口作为源端口,超时时间为5秒:

nc -p 31337 -w 5 10.0.10.9 52

3. 打开一个到 10.0.10.9 52端口的TCP连接,使用10.1.2.3作为连接本地端的IP地址:

nc -s 10.1.2.3 10.0.10.9 52

4. 创建并监听一个UNIX流套接字:

nc -lU /var/tmp/usocket

5. 传输文件:

  1. #server:
  2. nc -lp 5050 > tfile
  3. #client
  4. nc -nv 192.168.56.2 5050 < tfile
  5. Connection to 192.168.56.2 port 5050 [tcp/*] succeeded!

测试截图如下

6. 扫描指定范围的端口(扫TCP端口的速度很慢):

  1. nc -zv 192.168.1.123 20-1024
  2. nc -uzv 192.168.1.123 20-1024

PS:

nc和ncat命令在Linux操作系统中是不一样的。首先,nc是"netcat"的缩写,而ncat则是"netcat (from Nmap)"的缩写,其中nc来自于netcat原始版本,而ncat则来自于nmap项目。其次,ncat比nc多了一些特性,例如SSL/TLS加密、通过HTTP代理进行转发等等,因此ncat的功能更为强大。最后,需要注意的是,在某些Linux发行版中,nc已经被替换为了ncat,因此在使用nc命令时需要注意查看命令的具体帮助信息。


参考文档:

相关阅读:

PS:

本文首发于公众号: 程序熵, 更多有用文章请点击关注 code-shang

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/541396
推荐阅读
相关标签
  

闽ICP备14008679号