Ubuntu使用telnet连接时出现的错误:没有到主机的路由(能ping通但是还是报错)

错误如下:

image-20241211194057459

说明:

A机:192.168.120.138

B机:192.168.120.139 开启的服务端口是1234

解决方法:

1.检查是不是能ping通

如果ping不通,那就先解决这个问题

2.防火墙的问题

以下操作要在b机上运行,即开启服务的那个主机

列出所有规则:

1
firewall-cmd --list-all

image-20241211194546259

这里看到的只有22和8000端口,刚刚使用ufw开放的端口没有。于是使用相关命令开放端口(1234替换成想指定的端口):

如果是udp也要换成udp而不是用tcp

1
firewall-cmd --zone=public --add-port=1234/tcp --permanent

执行完添加端口命令后,一定要重启防火墙才能生效,重启命令如下:

1
firewall-cmd --reload

image-20241211194659411

此时已经开放了1234端口,再使用telnet即可成功。

3.注意

开放了端口也要将端口使用起来才能telnet成功。比如我将服务器在1234端口运行起来才能成功,否则仍然会telnet失败。