Netcat 是一个功能强大的网络工具,可以用于创建 TCP 或 UDP 连接、传输数据等。它可以作为客户端或服务器端使用,并提供多种用途,如端口扫描、端口监听、数据传输等。下面是一些常用的用法
创建基本的 TCP 连接
类似于 Telent,将创建到指定主机和端口的 TCP 连接。你可以在连接建立后通过键盘输入发送数据.
nc {ip} {port}
如果连接成功,可以发送对应的信息,如下图所示:
在另一端可以通过 tcpdump 抓包得到对应的结果,如下图所示:
如果连接失败,那就不能发送对应的信息,会报找不到对应的路由,有可能是因为防火墙的原因,如下图所示:
信息收集
服务器:10.10.20.1 客户端:10.10.20.2
在服务器上监听端口
在服务器上监听 5604 端口
nc -l 5604
在服务器上监听 5604 端口并将内容写入到文件中
nc -l 5604 > text.txt
在客户端上发送对应的信息
nc {服务器IP} 5604
客户端发送对应的消息给服务端,服务端接收到消息并打印出来,如下图所示:
服务端可以把接收到的消息写入到文件中。
客户端也可以读取文件中的信息,发送给服务端,如下图所示:
可以将二进制文件如 tar 文件、mp4 流媒体文件发送给客户端,如下图所示:
直到有客户端执行 nc {ip} 5604 接收对应的 tar 文件
这个需要服务器端打开对应的监听端口,才能发送对应的数据。一般不用 nc 来进行文件传递。
端口扫描
nc {ip} 1-65535