curl 测试端口 连通性

测试一下端口连通性

使用 curl 可以简单地测试服务器的端口连通性,以下是一些常见的用法:

1. 测试 TCP 端口连通性

使用 curl 尝试连接目标服务器的特定端口。如果端口打开且可访问,则会返回成功的信息;如果端口关闭或被防火墙阻止,则会返回错误。

curl -v telnet://<服务器IP或域名>:<端口号>

示例:

curl -v telnet://example.com:80

2. 测试 HTTP/HTTPS 端口连通性

如果你需要检查 HTTP 或 HTTPS 端口是否可用,可以直接请求相应的 URL:

curl -I http://<服务器IP或域名>:<端口号>
curl -I https://<服务器IP或域名>:<端口号>

示例:

curl -I http://example.com:8080

3. 只查看响应的 HTTP 状态码

可以在 curl 命令中添加 -o /dev/null -s -w "%{http_code}\n" 参数,只输出状态码,这对调试连通性非常有用:

curl -o /dev/null -s -w "%{http_code}\n" http://<服务器IP或域名>:<端口号>

状态码为 200 表示端口连接成功,如果是 000 或其他错误代码,说明连接有问题。

4. 使用超时选项

可以使用 --connect-timeout 指定最大连接等待时间:

curl --connect-timeout 5 telnet://<服务器IP或域名>:<端口号>

这样在连接超时的情况下,可以快速结束测试。