- netcat(nc):
- 作用:一个功能强大的网络工具,提供了简单的网络测试和网络编程功能。
- 工作原理:可以用于建立TCP或UDP连接,并发送和接收数据。
- 示例用法:
- 监听TCP端口:
nc -l 12345
(在本地主机的12345端口上监听TCP连接)。- 连接到远程主机的TCP端口:
nc host 12345
(连接到指定主机的12345端口)。- 发送UDP数据包:
nc -u host 12345 < file.txt
(将file.txt的内容作为UDP数据包发送到指定主机的12345端口)。
当前的linux环境的nc命令仅支持TCP客户端:
TCP客户端测试
在windows启动一个TCP server:
连接:
服务器发数据:
客户端发送数据
它对有些字符支持的不好,这个拿来测试就好。上面的^H^H^H^H^H是按backspace按键的时候出来的。
TCP服务器测试
nc -l 9990 //监听9990端口
建立连接:
发送数据:
nc服务器向客户端发送数据:
UDP测试:
nc -u 192.168.0.5 9990 < test.txt
通讯流程如下,首先nc先向的端口 192.168.0.5 9990发送文件test.txt的内容,然后它就开始等待接收数据,网络助手接收到数据后,手动发送一个数据,是I am a server。nc收到数据。
发送广播包
nc -u -w1 -b 192.168.0.255 9990 < broadcast.txt
执行一次,接收端会收到两个包:有点诡异啊