一.博文产生背景:一来是因为虚拟机与宿主主机的通信问题以及虚拟机的上网问题一直让人头疼,想通过此写此博文来理清自己的思路,二来是总结出自己在实际环境中得出的结论,给大家一个参考。欢迎大家留言批评指导。

二..实验环境:vmware workstation 的版本为9.0.2 build-103176,vmware workstation中安装的虚拟机的系统为Red Hat Enterprise Linux 6

三.使用host-only的连接方式上网的配置方法

第一步:

在安装好vmware workstation后,在本地连接中会出现两个虚拟网卡:

宿主机无法访问kvm管理的虚拟机ip_宿主机无法访问kvm管理的虚拟机ip

vmnet1默认的连接方式是host-only方式,在vmware workstation中设置Red Hat Enterprise Linux 6的上网方式为:

宿主机无法访问kvm管理的虚拟机ip_linux_02

第二步:

将vmnet1虚拟网卡设置参数:

宿主机无法访问kvm管理的虚拟机ip_IP_03

Red Hat Enterprise Linux 6设置网卡参数:

宿主机无法访问kvm管理的虚拟机ip_宿主机无法访问kvm管理的虚拟机ip_04

其中vmnet1的IP地址与linux的IP地址要在同一个网段,掩码要相同,linux的默认网关为vmnet1的IP地址。DNS为实际可用的地址,例如8.8.8.8等等。

第三步:测试联通性

宿主机无法访问kvm管理的虚拟机ip_宿主机无法访问kvm管理的虚拟机ip_05

宿主机无法访问kvm管理的虚拟机ip_运维_06

问题来了,主机ping不同linux,linux  ping不通主机,问题出在哪里?防火墙!!!!

linux在防火墙上开启了拒绝ICMP数据包的功能:

宿主机无法访问kvm管理的虚拟机ip_linux_07

宿主机无法访问kvm管理的虚拟机ip_运维_08

关闭linux系统的防火墙可能会出现主机能够ping通linux,但是linux  ping不通主机,问题在于主机也开启了防火墙的ICMP数据包过滤功能,解决方法是在linux上将上图显示的应答回应和应答请求的勾去掉,将主机防火墙上的“入站规则”-->文件和打印机共享(回显请求-ICMPv4-in)-->点击“启用规则”。

网上找了很多资料,发现将防火墙设置好,但是还是不能成功通信,查了很多资料还是没有发现问题已所在,后来仔细研究每一项与上网有关的设置,发现是自己手贱修改了一些设置,导致蛋疼了一个上午:

宿主机无法访问kvm管理的虚拟机ip_宿主机无法访问kvm管理的虚拟机ip_09

红色标注部分不能修改,将第二项修改了能够成功通信,但是将第一项的勾选去掉,不能连通,因为如果不勾选第一项的话,则linux与主机是断开的。

成功通信:

宿主机无法访问kvm管理的虚拟机ip_linux_10

宿主机无法访问kvm管理的虚拟机ip_Red_11

第四步:切记一点,使用host-only方式,linux不能连上互联网,也就意味着vmware workstation上安装的虚拟系统通过host-only不能上网。host-only的原理相当于主机和linux通过一条网线相连,linux与内网上的其他主机是相互独立的,这样的好处是当在主机与linux搭建实现环境时不会受到内网上其他主机的影响。




转载于:https://blog.51cto.com/mangguostudy/1362520