测试UDP端口是否打开

前言

有的软件是通过UDP协议来连接的,当出现软件连不上时,首先需要排除是否是端口不通。这时候需要借助nc工具来测试。

安装

为了测试UDP端口是否打开并连通,需要在服务端和客户端都安装nc工具。

Centos

yum install -y nc

安装后输入nc --version如果正确显示版本号,则说明安装成功。

windows

下载netcat 1.11:https://eternallybored.org/misc/netcat/

如果访问不了,可以点击这里下载。

下载后解压,将nc.exenc64.exe拷贝到C:\Windows\System32目录下即可。

使用

服务端

服务端执行以下命令,用于开启一个6111的UDP端口,这个端口可以自定义。

nc -ul 6111

客户端

客户端执行以下命令,用于连接到服务器的指定UDP端口,需要将下面的<server ip>改为你的服务端IP地址

nc -u <server ip> 6111

查看是否连通

客户端输入nc -u <server ip> 6111命令后,任意按一些字符并按回车键发送这些字符,观察服务端是否按顺序接收打印出了这些字符,如果打印了,则说明连接成功。

客户端发送数据:

服务端接收数据:

调试

如果没有通,首先看看服务器是否开启了端口,可以通过firewall-cmd --list-all命令查看。

打开指定的UDP端口

firewall-cmd --zone=public --add-port 6111/udp && firewall-cmd --zone=public --add-masquerade

关闭指定的UDP端口

ffirewall-cmd --zone=public --remove-port 6111/udp && firewall-cmd --zone=public --remove-masquerade

安全组设置

如果使用的是云服务器,还要看看安全组中是否打开:

发表评论

邮箱地址不会被公开。 必填项已用*标注