繁体   English   中英

如何测试远程 UDP 端口

[英]How to test a remote UDP Port

我正在寻找一种简单的方法来查看服务器上是否打开了远程 UDP 端口

请注意,几个防火墙/网络设置/IDS 等可能会影响结果......以下方法不是 100% 可靠,但它是 UDP 恕我直言的唯一可能方法(因为 UDP 是无连接的)。

您可以使用UdpClient ,在底层套接字设置接收超时建立与该远程服务器/端口的连接, Send一些小消息( byte[] !)并调用Receive

如果端口已关闭,您会收到一个异常,表示连接被强行关闭( SocketException with ErrorCode 10054 = WSAECONNRESET )...这意味着端口未打开。

否则,您要么收到答案,要么收到超时异常 - 两者都应解释为“UDP 端口已打开”。

你不能。 这是设计使然,因为 UDP 是无连接的。 你必须在应用层解决这个问题。

  1. 两者都在客户端ans服务器上安装nc: yum install nc (用于centos)
  2. 在服务器上侦听UDP端口: nc -ul 6111
  3. 在客户端nc -u <server> 6111
  4. 在客户端上键入任何内容,然后按Enter键-您应该在服务器上看到此文本

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM