虚拟机无法Ping通主机服务器

2012-11-08  骆海燕 

接上一篇日志《设置RedHat Linux系统的网络配置》

    今天在部署环境的时候,SecureCRT中启动MOC,发现初始化数据库的时候,总是报错:拒绝访问!虚拟机服务器也部署好了,本机的DbVisualizer也可以连接到该库,也不知道哪里出了问题将各个机器 Ping 试了一下,结果如下:

客户机 Ping 远程主机(服务器):可以 Ping 通;  Ping 远程主机(服务器)里的虚拟机:可以 Ping

远程主机(服务器) Ping 客户机:可以 Ping 通;  Ping 虚拟机:可以 Ping

虚拟机 Ping 客户机:               可以 Ping 通;  Ping 远程主机(服务器) Ping 不通

终于发现问题所在了,原来是 虚拟机 Ping 不通服务器(虚拟机安装在服务器机上),排除Linux系统网络配置的问题,到底什么原因呢?

   先来了解一下虚拟机的网卡设置吧:

    在使用VMware Workstation创建虚拟机时,创建的虚拟机中可以包括网卡。你可以根据需要选择使用何种虚拟网卡,从而表明想要连接到那个虚拟交换机。在VMware Workstation中,默认有3个虚拟交换机,分别是VMnet0(使用桥接网络)、VMnet1(仅主机网络)和VMnet8(NAT网络),还可以根据需要添加VMnet2~VMnet7和VMnet9等7个虚拟机交换机,而在VMware Workstation 5以后的版本中,还可以使用Team中的提供的虚拟交换机。

    Team中的虚拟机交换机与VMnet0~VMnet9虚拟交换机不同之处在于,Team中的交换机与主机网络不发生关系,而VMnet0~VMnet9虚拟交换机是与主机相连。并且,Team中的虚拟交换机可以限制网络速度。

    vmnet0,实际上就是一个虚拟的网桥,这个网桥有很若干个端口,一个端口用于连接你的Host,一个端口用于连接你的虚拟机,他们的位置是对等的,谁也不是谁的网关。所以在Bridged模式下,你可以让虚拟机成为一台和你的Host相同地位的机器。
    vmnet1是一个Host-Only网络模式,这是用于建立一个与世隔绝的网络环境所用到的,其中vmnet1也是一个虚拟的交换机,交换机的一个端口 连接到你的Host上,另外一个端口连接到虚拟的DHCP服务器上(实际上是vmware的一个组件),另外剩下的端口就是连虚拟机了。虚拟网卡 “VMWare Virtual Ethernet Adapter for VMnet1”作为虚拟机的网关接口,为虚拟机提供服务。在虚拟机启动之后,如果你用ipconfig命令,你会很清楚的看到,你的默认网关就是指向 “VMWare Virtual Ethernet Adapter for VMnet1”网卡的地址,这里没有提供路由主要表现在没有提供NAT服务,使得虚拟机不可以访问Host-Only模式所指定的网段之外的地址。


    vmnet8是一个NAT方式,最简单的组网方式了,从主机的“VMWare Virtual Ethernet Adapter for VMnet8”虚拟网卡出来,连接到vmnet8虚拟交换机,虚拟交换机的另外的口连接到虚拟的NAT服务器(这也是一个Vmware组件),还有一个口连接到虚拟DHCP服务器,其他的口连虚拟机,虚拟机的网关即是“VMWare Virtual Ethernet Adapter for VMnet8”网卡所在的机器。同样,用ipconfig也可以看出来,你的虚拟机的默认网关也指向了你的“VMWare Virtual Ethernet Adapter for VMnet8”虚拟网卡地址。相比之下,可以看出来,NAT组网方式和Host-Only方式,区别就在于是否多了一个NAT服务。

    原来我把 VMware Network Adapter VMnet1 及 VMware Network Adapter VMnet8 都启用了,而且设置了其中一个IP地址和虚拟机的IP地址一致,导致IP地址冲突。

    再晕一次!......................


1268°/12687 人阅读/0 条评论 发表评论

登录 后发表评论