如何测试服务器上的某个特定端口是否打开,特别是 1443?

如何测试服务器上的某个特定端口是否打开,特别是 1443?

尝试在 Windows 机器上打开一个洞来访问 SQL 服务器。

我如何测试端口是否打开(不使用 SQL 测试登录等)

我正在寻找一种更通用的测试方法,不涉及 SQL 服务器,只是为了隔离无法连接的问题,即它是登录问题还是连接/防火墙问题。

答案1

您可以使用端口扫描工具,例如网络映射或者如果它是一个 TCP 端口,只需简单地 telnet 到相关端口即可。telnet 主机端口 - 例如 telnet server01 1433

答案2

首先,我要验证相关服务器是否确实在监听 1443。最简单的方法可能是(在服务器上,在 cmd 窗口中)netstat -an | find "1443"并查看您得到什么返回结果。

其次,如果您正在寻找 TCP 连接,您可能能够telnet <hostname> 1443查看是否获得连接。您将无法用它做任何事情,但这应该会告诉您是否可以建立连接。

如果您正在寻找 UDP,那么如果您有一种在无连接协议上建立连接的好方法,我会感到惊讶。

答案3

如果你想从公共互联网验证端口是否开放,你可以使用类似https://www.monitostech.com/tool/port。这在测试 Web 服务器是否可供公众访问时特别有用,或者如果您的系统地理分散,您可以验证它们是否具有开放的路径。

在检查本地 LAN 上的 Web 服务器和 SQL 服务器之间的连通性时,我发现这个 powershell 命令运行得很好:

try { $cn=new-object System.Net.Sockets.TcpClient; $cn.connect("host",port); $cn.close() ; "Test worked" } catch { "Test failed" }

相关内容