疑难

关注公众号 jb51net

关闭
网络 > 疑难 >

ping ip主机提示Destination host unreachable问题解决方法小结

脚本之家

ping 出现destination host unreachable的问题

一、问题一:虚拟机和主机互ping不通

安装了虚拟机,以太网选的是默认的桥接,可安装完后,不能和主机ping通,也不能ping通网关192.168.1.1,显示"destination host unreachable"

在VMware Workstation中,单击菜单编辑->虚拟网络设置(S),打开"虚拟网络编辑器",在"摘要"选项卡中,可看到:
虚拟网络               摘要
VMnet0(桥接)      桥接到ADMtek AN983 10/100 PCI Adapter - 数据包计划程序微型端口
VMnet1(仅主机)    一个私有网络和主机相连
VMnet8(NAT)       用于共享主机的IP地址

由于我们在以太网“网络连接”中选择的是“桥接”,故切换到"主机虚拟网络映射",看到"VMnet0"后面的值为:桥接到一个自动选择的适配器,我们将其修改为:
realtek pcie gbe family controler- 数据包计划程序微型端口
然后"应用"->"确定"

结果:主机能ping通虚拟机,而虚拟机却ping不通主机,但主机和虚拟机均能ping通局域网里其他计算机.
后来,将主机"网络连接"中的VMware Network Adapter VMnet1、VMware Network Adapter VMnet8禁用,虚拟机就可以ping通主机了。
这次,终于认真学习了虚拟机中这三种连接的不同了:

1.Bridge模式(桥接模式)
    这种模式是在新建虚拟机的时候默认选择的,是将虚拟主机的虚拟网卡桥接到一个Host主机的物理网卡上面,实际上是将Host主机的物理网卡设置为混杂模式,从而达到侦听多个IP的能力。在这种模式下,虚拟主机的虚拟网卡直接与Host主机的物理网卡所在的网络相连,可以理解为虚拟机和Host主机处于对等的地位,在网络关系上是平等的,没有谁主谁次、谁前谁后之分。

2.NAT模式
    这种模式下Host主机的“网络连接”中会出现了一个虚拟的网卡VMnet8(默认情况下)。如果你做过2000/2003的NAT服务器的实验就会理解:Host主机上的VMnet8虚拟网卡就相当于连接到内网的网卡,Host主机上的物理网卡就相当于连接到外网的网卡,而虚拟机本身则相当于运行在内网上的计算机,虚拟机内的虚拟网卡则独立于Virtual Ethernet Switch(VMnet8)。在这种方式下,VMware自带的DHCP服务会默认地加载到Virtual Ethernet Switch(VMnet8)上,这样虚拟机就可以使用DHCP服务。

3.Host-Only模式
   这种模式是一种封闭的方式,适合在一个独立的环境中进行各种网络实验。这种方式下Host主机的“网络连接”中出现了一个虚拟的网卡VMnet1(默认情况下)。和NAT唯一的不同的是:此种方式下,没有地址转换服务。因此这种情况下,虚拟机只能访问到主机,这也是Host-Only的名字的意义。

二、问题二:虚拟机不能使用小键盘中的数字键?

先在主机关闭小键盘中的使用(按下NumLock键,使指示灯不亮),然后在虚拟机中按下NumLock键,使指示灯变亮即可。

三、主机和虚拟机共享文件

方法1:可给虚拟机安装VMware Tools,VMware Workstation->菜单“虚拟机”->“安装VMware工具(I)”,则进行自动安装VMware Tools,安装完成后,即可直接在主机中向虚拟机拖动文件。

方法2:主机和虚拟机开共享.可通过直接访问另一台计算机也可通过IPC$连接拷贝文件。

方法二:

症状:

上网各类应用基本正常,但是在命令行下使用ping命令,无论任何地址,均反馈Destination host unreachable。

 
分析:

输入命令arp -a可以看到网关的MAC地址正常解析,并利用其他电脑确认了网络工作是正常的,那么问题一定出在电脑里,阻止了ICMP或者别的数据的连接。

检查进程和服务,没有安装任何第三方防火墙,系统自带的防火墙也没有打开。

百度搜索关键字“Destination host unreachable.”,很多人都提到了一个问题,是IPSeC安全策略阻止了数据的通过,在网卡属性里选TCP/IP协议,进“高级”,“选项”,没看到起用IPSeC,也没有做端口过滤。

非常疑惑,于是总会想到去查查系统的日志,看看有没有出错的信息或记录,结果也没有发现相关错误记录。但是此时,基本上感觉到就是IPSeC引起的故障。

解决:

没招的时候,只好直接从根本上下手:输入命令services.msc,进入服务控制面板,找到IPSec服务,禁用,重启,问题解决。

About : destination host unreachable

destination host unreachable
目标主机不能到达
“Destination Host Unreachable”信息说明对方主机不存在或者没有跟对方建立连接。 网线没接好,或者网卡有问题!
检查物理连接,重启机子 一般在确定你的TCP/IP网络属性的设置正确下,检查你的网线或者网卡是不是没插好
我想应该是物理连接方面没接好吧。。。
机子已经用了好几年了,N多灰尘。。。

路由表中连到达目标的路由都没有,会出现“Destination Host Unreachable”。

主要在以下三种情形出现:

1、 局域网使用DHCP动态分配IP地址时,DHCP出现故障或者失败
DHCP失效或者出现故障时,客户机无法分配到IP地址,系统只有自设IP地址,而IP地址的自动设置往往会分配到不同的子网,因此会出现“Destination Host Unreachable”。

2、 子网掩码设置错误
这种情况一般比较少见,如果子网掩码不是系统自动生成的,则在计算时一定细心。

3、 路由表返回错误信息
这种情况一般是在“Destination Host Unreachable”前面加上IP地址,说明本地计算机与外部网络连接没有问题,但与某台主机连接存在问题。

"Destination Net Unreachable"这个信息表示对方主机不存在或者没有跟对方建立连接。这里要说明一下"destination host unreachable"和"time out"的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其它原因不可到达,这时候会出现"time out",如果路由表中连到达目标的路由都没有,那就会出现"destination host unreachable"。

把icmp安全策略关闭
tcp/IP属性——高级——选项——IP安全机制属性——选择"不使用IPSEC"确定,OK了,一切正常

ping 时出request time out 和destination is unreachable

request time out 是指icmp包发出后,长时间没有回应,所以会产生request time out。一般是ping 了一台网络中不存在的主机。
destination is unreachable 或 destination port unreachable 一般是收到了目标主机或中间路由器回应的端口或目标主机不可达icmp包。
如你ping一台用iptables封了icmp包的主机且用了-j REJECT 就会出现destination port unreachable 的信息,这是目标主机给的回应。
两者主要的区别是看目标主机或中间路由器是不是给了icmp不可达的回应。向目标主机发ip数据报,如果协议项是错的,或协议项不可用。目标将返回destination is unreachable的icmp报文。如果有防火墙,可能过滤掉ip数据报,收不到回应报文。如果设置ip头部协议内容为一特别大的数字(至少在今天还没有被使用),应该主机一定会返回unreachable的icmp报文。否则一定有防火墙。也可以变化ip中的协议项来探测主机使用了哪些协议,如果没使用则返回unreachable的icmp报文。