温馨提示×

ubuntu telnet慢怎么解

小樊
46
2026-09-28 02:25:38
栏目: 智能运维

在 Ubuntu 上 telnet 连接慢(一般是敲命令或建立连接要等很久),通常不是网络带宽问题,而是 DNS 反向解析 / 系统配置 导致的。下面按“最常见 → 少见”给你排查和解决思路。


一、最常见原因:Telnet 服务端做反向 DNS 解析(90% 情况)

很多 telnetd / inetd 在连接时会:

  • 对客户端 IP 做 反向 DNS 查询
  • 如果 DNS 不通或超时,就会卡住 5~30 秒

✅ 解决方案 1:服务端禁止 DNS 解析

如果你能控制 被连接的那台 Ubuntu:

1️⃣ 修改 /etc/hosts

把客户端 IP 加进去:

192.168.1.100 client-pc

2️⃣ 修改 inetd / xinetd 配置

如果你用的是 xinetd:

sudo vim /etc/xinetd.d/telnet

确保有:

service telnet
{
    disable = no
    flags = REUSE
    socket_type = stream
    wait = no
    user = root
    server = /usr/sbin/in.telnetd
    log_on_failure += USERID
    # 关键 ↓
    nodns = yes
}

然后:

sudo systemctl restart xinetd

二、客户端 Telnet 慢(敲命令卡)

如果你是 在 Ubuntu 上用 telnet 连别的机器,慢的原因可能是:

✅ 解决方案 2:关闭本地 DNS 解析

编辑:

sudo vim /etc/nsswitch.conf

找到:

hosts: files dns

确保 dns 不会卡死,或临时测试:

hosts: files

三、SSH 比 Telnet 快?(强烈建议)

⚠️ Telnet 是明文协议,极其不安全

如果只是为了远程登录,请用:

ssh user@ip

SSH 默认:

  • 不做反向 DNS(或可控)
  • 加密
  • 快且安全

关闭 SSH 反向 DNS:

sudo vim /etc/ssh/sshd_config
UseDNS no
sudo systemctl restart ssh

四、其他少见原因

1️⃣ 防火墙 / 安全组丢包

  • 半连接被丢弃
  • 表现:连接前卡几秒

2️⃣ IPv6 优先导致超时

测试:

telnet -4 ip port

如果快了,说明 IPv6 问题。


五、快速自检清单 ✅

你可以先试这 3 步:

telnet -4 ip
ping ip
nslookup 你的IP

如果你愿意,可以告诉我:

  • 是 服务端慢 还是 客户端慢
  • Ubuntu 版本(22.04 / 20.04)
  • 是 telnetd 还是 xinetd

我可以直接给你一份可用配置。

0 踩