最近在调试外接日志功能的时候,需要调试通过nc发送数据到UDP服务端的数据流的问题。
使用nc(netcat) 启动UDP服务端监听端口其实是很简单的事儿,然后在另外一台主机上,同样使用nc进行发送数据到服务端 ,可以在服务端进行看见数据传输。nc的功能很强大,这里不做详述, 可参考
nc命令用法举例
安装 nc:
yum install -y netcat
nc 监听udp端口
简单使用如下
主机(192.168.137.2-虚拟机)启动udp做服务端,监听端口60062,直接使用如下指令启动:
nc -lu 60062
在本地主机使用wsl打开端口,虚拟机监听端口发送一条数据:
echo -n "hello world!" | nc -4uv 192.168.137.2 60062
# nc 参数说明
# -4 使用ipv4协议
# u 表示,udp; t 表示tcp
# v 使用交互输出
查看端口交互信息如下图
在服务端可以看到有接收到的数据流,如下图
nc 结合 tcpdump监听某个服务端口是否有数据接收
很多时候,为了测试某个服务端口(tcp/udp)是否有数据写入,但是测试人员并没办法进入到服务本身去查看,或者也无法通过日志查看是否有数据通过某个端口接收数据,此时可以使用 tcpdump工具进行测试,方式如下,以udp为例子:
比如如下某台服务器udp端口如下:
查看upd端口
netstat -nulp