关闭

虚拟机VMware的网络配置

标签: 虚拟机vmware网络dns服务器服务器network
2384人阅读 评论(0) 收藏 举报
分类:
在虚拟机的使用过程中,一直被网络配置的问题困扰。不管是安装哪个版本的Linux,安装过程中都会有关于网络配置的提示,安装到那一步都会觉得无所适从。我所以用的网络连接是小区宽带,在Internet的网络连接属性中,从来不需要设置IP,网关和DNS服务器。真的搞不清楚,对于这一类的网络接入,主机和虚拟机之间到底应该是怎样的网络关系。

安装好RedHat之后,系统一切正常,就是网络不通。回忆安装过程中,在编辑网络设置时,因为不知道该如何设置IP,所以勾选了使用DHCP配置,

其实当时对DHCP的概念一无所知,搜索了一下,关于DHCP的解释如下:

DHCP 是动态主机配置协议(Dynamic Host Configure Protocol)的缩写。一台DHCP服务器可以让管理员集中指派和指定全局的和子网特有的TCP/IP 参数(含IP 地址、网关、DNS服务器等)供整个网络使用。

客户机不需要手动配置TCP/IP;并且,当客户机断开与服务器的连接后,旧的IP地址将被释放以便重用,根据这个特性,比如你只拥有20 个合法的IP 地址,而你管理的机器有50 台,只要这50 台机器同时使用服务器DHCP服务的不超过20台,则你就不会产生IP 地址资源不足的情况。

大概也就是说,如果你的局域网提供了DHCP服务,那么你的桥接网络机器可以自动获得局域网的IP。那么既然勾选了DHCP自动配置的选项,如果把真实的主机当作是局域网的主机,不管主机的IP是动态还是静态获得的,位于此局域网的虚拟机,应该可以通过DHCP服务器,自动获得此局域网的IP吧?

那么在这个由真实的主机和虚拟机构成的局域网中,主机和虚拟机之间又是通过什么方式进行网络连接的呢?

偶然的,打开网络连接属性中发现竟然多出了两个连接:

 

心里猜想,这多出来的两个连接VMware Network Adapter VMnet1和VMware Network Adapter VMnet8应该就是添加虚拟机时,由Vmware添加的两个虚拟网卡吧?

用ipconfig命令查看了一下新增加的网卡的属性可以发现,这两块网卡分别属于不同的子网:

意外发现两块网卡,却搞不清楚它们的用途,只能继续在VMware中找答案。值得欣慰的是,在Edit菜单的Virtual Network Editor选项中,看到了这样一些东西:

 这意味着,这两块虚拟网卡,跟我们之前设置的虚拟机网络连接模式有关。切换至NAT选项卡:

由此,这两块新增网卡的作用大致有了一个了解:

“Ethernet adapter VMware Network Adapter VMnet8”用于本机与使用NAT网络模式的虚拟机相连,使用这种模式建立的虚拟机所于虚拟机的VMnet8子网内,在这个子网中,VMware提供了DHCP服务让子网的虚拟机可以方便的获得IP地址。当然,也可以为处于此子网的虚拟机手动设置IP,不过一定要注意地址要VMnet8设定的网段内。这时,真实主机将做为VMnet8的网关,也即虚拟网络VMnet8与现实局域网之间的路由器在两个网段间转发数据。VMnet8的特殊之处在于VMware为这个网段默认启用了NAT服务。

“VMware Network Adapter VMnet1”这块网卡主要用于真实主机与处于host-only(主机模式)的虚拟机相连,处于这种模式的虚拟机位于VMware虚拟网络的VMnet1子网内,这个子网除了IP段不同和没有提供NAT服务外,与VMnet8(NAT模式组成的虚拟子网)没有什么不同。我们完全可以激活VMnet1子网的NAT服务,这样VMnet1就成为了另一个NAT模式的子网。如果在默认的不激活NAT的情况下,该子网的虚拟机将只能与VMnet1网内的其它虚拟机以及真实主机通信,这就是“host-only”名称的由来。

其实,在VMware里最多可以有9个不同的虚拟子网(有三个在软件装好后已经启用了,它们是VMnet0,VMnet1,VMnet8)

了解了这两块网卡的作用,回过头来看看曾经在建立虚拟机中,所做的网络配置:

 关于虚拟机中常用的三种网络连接也基本上有了一个清晰的解释:

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

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

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

由于在安装RedHat的时候,选择的网络配置方式是由DHCP自动配置,因此,关掉虚拟机中的系统,点击“Edit virtual marchine setting”,设置Ethernet选项中,将Network connection的方式改为NAT

重新启动虚拟机,进入RedHat,打开Firefox浏览器,厚厚厚,果真可以上网了!

此时,虚拟机的IP为动态获取,即通过DHCP获得。虚拟机中的操作系统用的是主机的IP,主机能够上网,那么虚拟机也能。

当然,也可以尝试Host-only方式或Bridge方式。

对于跟我一样的PPPOE拨号上网用户:

Host-only方式解决方案:
“Ethernet”要选择“Host-only”方式

设置PPPOE连接属性,选择“高级”-->“允许其它网络用户通过此计算机的INTERNET连接来连接”;在“家庭网络”下拉框中,选择“VMware Network Adapter VMnet1”
VMware Network Adapter VMnet1虚拟网卡的IP会自动变为192.168.0.1;

进入vmware中,启动linux操作系统
用netconfig命令,将IP,设为192.168.0.X(与虚拟网卡在同一网段)
网关为192.168.0.1 即VMware Network Adapter VMnet1虚拟网卡的IP地址
DNS设置为ISP的DNS

Bridge方式解决方案:
“Ethernet”选择“Bridge”方式

宿主机中安装sygate或wingate之类的代理服务器;设置虚拟机的代理服务器为宿主机的IP即可

这种方式,虚拟机最接近一台真实的机器


对于局域网络连接用户
“Ethernet”要选择“Bridge”方式
使用这种方式时,虚拟机跟一台真实的机器一样,此时IP设置为局域网中另一个可用IP即可;
网关:局域网网关服务器的地址(或路由器的地址);
DNS:设置为ISP的DNS服务器地址

 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:13836次
    • 积分:197
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:0篇
    • 译文:0篇
    • 评论:8条
    文章分类
    文章存档
    最新评论
    好友专栏