系统:XP
虚拟机:Mware? Workstation7.0
虚拟机系统:redhatlinux9
虚拟机中Liunx上网教程:
例如 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
4)在虚拟机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交互报文。