[英]How to test a remote UDP Port
我正在寻找一种简单的方法来查看服务器上是否打开了远程 UDP 端口
请注意,几个防火墙/网络设置/IDS 等可能会影响结果......以下方法不是 100% 可靠,但它是 UDP 恕我直言的唯一可能方法(因为 UDP 是无连接的)。
您可以使用UdpClient
,在底层套接字上设置接收超时, 建立与该远程服务器/端口的连接, Send
一些小消息( byte[]
!)并调用Receive
。
如果端口已关闭,您会收到一个异常,表示连接被强行关闭( SocketException
with ErrorCode
10054 = WSAECONNRESET
)...这意味着端口未打开。
否则,您要么收到答案,要么收到超时异常 - 两者都应解释为“UDP 端口已打开”。
你不能。 这是设计使然,因为 UDP 是无连接的。 你必须在应用层解决这个问题。
yum install nc
(用于centos) nc -ul 6111
nc -u <server> 6111
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.