no route to host(路由不可达)的报错是由于收到icmp路由不可达报文而导致的。受到这个报文的原因可能是:
1、目标设备确实已经离线了,目标设备的网关找不到目标设备,所以网关向源地址发出路由不可达消息。
2、访问请求被防火墙拦截了,防火墙拦截请求的方式可能是直接丢弃、连接重置、回应目标不可达消息,这里是第三种。
3、本地软件防火墙拦截了访问,或者目标设备防火墙拦截了访问,如果是linux,可能是iptables阻挡造成的,你可以用service iptables stop(redhat\centos)关闭iptables试试。
如果是linux,是iptables阻挡造成的,你可以用service iptables stop关闭iptables试试,或者重新配置local的DNS。如果是centos7 No route to host 报错,解决方法如下:
使用ping 192.168.1.113 结果是正常的,其实出现上面的这种原因是防火墙没有关闭。centos7 和centos6防火墙是不一样的:centos7是firewall,centos6是iptables。firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)。启动一个服务:systemctl start firewalld.service,关闭一个服务:systemctl stop firewalld.service,在开机时启用一个服务:systemctl enable firewalld.service,在开机时禁用一个服务:systemctl disable firewalld.service。