在 Ubuntu 上 telnet 连接慢,通常不是网络带宽问题,而是域名解析 / 超时导致的。下面按常见原因和解决办法说明。
telnet 客户端在连接时,会尝试对对端 IP 做反向 DNS 解析(PTR),如果 DNS 服务器响应慢或超时,就会卡很久。
使用 -N 参数(部分发行版支持):
telnet -N ip port
如果没有 -N,可以用 nc 替代:
nc ip port
/etc/resolv.conf DNS 太慢cat /etc/resolv.conf
如果 nameserver 是:
都会拖慢 telnet。
改成稳定 DNS:
sudo nano /etc/resolv.conf
示例:
nameserver 223.5.5.5
nameserver 8.8.8.8
⚠️ 如果使用 systemd-resolved,应改:
sudo nano /etc/systemd/resolved.conf
然后:
sudo systemctl restart systemd-resolved
即使你本地没问题,服务端也可能在:
telnet ip
时做反向解析,导致你感觉“连接慢”。
/etc/hosts 添加客户端 IP1.2.3.4 client
Ubuntu 默认优先尝试 IPv6,若网络不支持会超时。
禁用 IPv6(临时):
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1
永久:
echo "net.ipv6.conf.all.disable_ipv6=1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
如果是云服务器:
会导致连接超时感
telnet ip port
如果卡住 10–30 秒,多半是 DROP。
telnet:
✅ 推荐替代:
ssh user@ip
nc ip port
time telnet ip portnc 测试是否还慢如果你愿意,可以告诉我:
telnet ip port 卡在哪一步我可以帮你精确定位。