先来看看no route to host是什么意思?即没有通往主机的路线。意思就是你访问的目标地址路由不可达,这个no route to host的报错是由于收到icmp路由不可达报文而导致的。no route to host,没有到主机的路由。即你的路由表里面没有到达目标主机的表项,也没有默认网关项。例如:The host the program’%1’was to reach is unreachable,no route to host程序“%1”试图连接的主机无法接通,没有到主机的路由。
那么no route to host怎么解决?可能是下面的原因造成的,我们可以根据实际情况来解决。
原因1、有网友遇到过同样的问题,如果是linux,是iptables阻挡造成的,解决方法就是你可以用service iptables stop关闭iptables试试,或者重新配置local的DNS。
原因2、可能是防火墙问题,我用电脑的xshell连虚拟机就没问题,用手机连虚拟机就不行了,用iptables-F清空防火墙策略,再用手机连就可以了!这个命令只是临时生效,使用service iptables save保存防火墙策略即可。
原因3、在hadoop集群中跑程序出现NO Route to Host的错误,原因其实很简单,就是因为系统防火墙没有关
原因4、No route to host解决方法:清理虚拟机中的防火墙“[root H0f~]#sudo iptables-F”(很多人提示这个方法慎重使用如果不懂可能会造成严重后果!)