系统:XP
虚拟机:Mware® Workstation7.0
虚拟机系统:redhatlinux9
最近在学习linux系统,今天打开后突然想到用它来上网,所以就在网上查了哈,最后我选了host-only方式 来实现 :以下是详细过程:
例如 vmnet1 ip :192.168.0.1 (我的XP系统把VM1共享进本地连接后自动成这个网段,具体的系统可能有不同之处)
虚拟机设置: ip :192.168.0.2 gateway : 192.168.0.1
这样就实现了虚拟机<--->主机 通信,但是 虚拟机<--->互联网 仍无法通信
1)选择VMware的Host-only
2)主机的本地连接
3)本地连接共享Internet
3)在虚拟机linux里,设置网络
虚拟机的网关是192.168.0.1,DNS不用设置
数据包走向:从eth0出来后将数据包扔给:192.168.0.1,192.168.0.1和本地连接是共享上网的,所以192.168.0.0/24网段的数据包到了本地连接后,本地的网卡会把源IP和源MAC改成本地电脑的真实IP和MAC,然后扔给网关。
为了验证上面我猜想,在虚拟机上ping www.baidu.com,再在本地PC上运行抓包软件wireshark,截图如下:
本地网卡是192.168.1.102,虚拟机 eth0 IP:192.168.0.2 ,由上图可以看到不是虚拟机所在的网段与公网IP交互报文。