ping和wget能通,但是telnet则Host is unreachable是怎么回事?
我在一个docker容器内对宿主机器局域网IP测试联通情况
bash-4.4# telnet 192.168.0.94 2377
telnet: can't connect to remote host (192.168.0.94): Host is unreachable
bash-4.4# ping 192.168.0.94
PING 192.168.0.94 (192.168.0.94): 56 data bytes
64 bytes from 192.168.0.94: seq=0 ttl=64 time=0.096 ms
64 bytes from 192.168.0.94: seq=1 ttl=64 time=0.102 ms
ping能通,wget http://192.168.0.94:2377/nacos 也能获取网页,但是telnet则Host is unreachable是怎么回事?
在宿主机器上:
[root@host-machine ~]# telnet 192.168.0.94 2377
Trying 192.168.0.94...
Connected to 192.168.0.94.
Escape character is '^]'.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
ping
是走的 ICMP 协议,telnet
是走的 TELNET 协议,二者都是 TCP/IP 下的子协议,但两者之间没有关系。所以“能 ping 通”仅仅代表你和目标主机之间的 TCP 连接是能建立的,但并不意味着 telnet 就可以访问。影响后者的原因有很多,可能是压根没监听公网的 2377 端口,可能被软件防火墙拦截了,可能被更上层的网关防火墙拦截了。
反过来也可能 telnet 能连上但 ping 却不通的,这可能是目标主机屏蔽了 ICMP 协议发来的 TCP 报文。
ping 工具能通说明他们之间的物理线路是连通的。
telnet不通,说明对方机器的21端口是关闭的。这属于软件问题。
端口没有开放啊