在 Linux 下,telnet 主要用于检查 TCP 端口是否能连通,常见用法和注意事项如下:
telnet <IP或域名> <端口>
telnet 192.168.1.10 80
telnet www.baidu.com 443
Connected to 192.168.1.10.
Connection refused
或长时间卡住(超时)按
Ctrl + ],再输入quit退出 telnet。
telnet 192.168.1.10 80
如果通,说明端口开放,但不代表 HTTP 服务一定正常。
telnet 192.168.1.10 22
看到 SSH banner 说明端口和服务正常。
telnet 127.0.0.1 3306 # MySQL
telnet 127.0.0.1 5432 # PostgreSQL
❌ 不能检查 UDP 端口
❌ 不能检查 HTTPS 是否正常(只能看端口)
❌ 不安全,很多系统已不默认安装
nc -vz 192.168.1.10 80
-v:显示过程-z:只扫描不发送数据ss -lntp
nmap -p 80 192.168.1.10
curl -I http://192.168.1.10
curl -Ik https://192.168.1.10
| 现象 | 可能原因 |
|---|---|
| Connection refused | 服务未启动 / 端口未监听 |
| 一直卡住 | 防火墙丢弃包 |
| 本地能通,外部不通 | 防火墙 / 安全组 |
| telnet 不存在 | 未安装 |
# CentOS / Rocky / Alma
yum install telnet -y
# Ubuntu / Debian
apt install telnet -y
✅ telnet = 快速检查 TCP 端口是否可达
❌ 不适合做服务健康检查
✅ 生产环境推荐 nc / nmap / curl
如果你有具体场景(比如:检查某个服务、排查连不上、docker / 云服务器),可以直接贴出来,我可以帮你一步步分析。