如何测试udp端口是不是正常?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何测试udp端口是不是正常?相关的知识,希望对你有一定的参考价值。

测试udp 服务的端口是否可用 d 服务上,就会报错, 因为telnet 走的是tcp 协议, 比如说192.168.80.131 在8888 端口上上启了个udp 的服务,这是使用telnet 192.168.80.131 8888,就会报如下错误:Trying 192.168.80.131... telnet: connect to address 192 .168.80.131: Connection refused 此时, 可以使用nc 这个工具, 大多数的发行版都自带这个工具, fedora 9 的/usr/bin/nc 所属的安装包是 nc-1.84-16.fc9.i386nc -l -u 192.168.80.129 8001 使用命令nc -u 192.168.80.129 8001, 在这里输入字符串, 服务端就会回显相同的字符串,表示8001 端口上的udp 服务是否启用.suse 上的是用netcat, 方法基本上差不多:netcat -l -u -p 8001 这样就可以在0.0.0.0 上侦听udp 的8001 端口从另外一台机器,或者打开本机的另外一个虚拟终端, 输入:netcat -u 192.168.1.123 8001 在这里输入字符串, 就会回显一个相同的字符串,表示链接是OK 的 参考技术A TCP端口大家都知道,比如80端口,可以使用 telnet ip 80,来验证端口是否正常监听,那UDP端口是否可以同样测试呢?详细如下:
下面我们来进行测试,123端口是服务器42.11.12.13打开的UDP端口,
udp 0 0 42.11.12.13:123 0.0.0.0:* 1472/ntpd

1.我们首先使用telnet连接,如下
[root@kr-sg-test ~]# telnet 42.11.12.13 123
Trying 42.11.12.13…
telnet: connect to address 42.11.12.13: Connection refused
telnet: Unable to connect to remote host: Connection refused
很明显,telnet连接被拒绝,无法测试成功。

2.我们使用nc来进行测试,如下
[root@kr-sg-test ~]# nc -vuz 42.11.12.13 123
Connection to 42.11.12.13 123 port [udp/ntp] succeeded!
结果证明UDP 123端口正常监听。
nc命令用法:
usage: nc [-46DdhklnrStUuvzC] [-i interval] [-p source_port]
[-s source_ip_address] [-T ToS] [-w timeout] [-X proxy_version]
[-x proxy_address[:port]] [hostname] [port[s]]

以上是关于如何测试udp端口是不是正常?的主要内容,如果未能解决你的问题,请参考以下文章

测试特定协议下指定端口是不是开启

【udp】如何检测UDP端口的连通性

nc测试UDP是否正常

如何在路由器上测试远端UDP端口通不通

java中如何检测本机指定的UDP服务端口是不是被占用?并且自动分配一个可用udp端口;

UDP - Nginx配置端口保持时间proxy_timeout