一、虚拟机vmware联网方式:
2010-04-16 12:14
装虚拟机,必然要设置网络的共享,vmware上提供了不少的方案,的确让人一头雾水。我刚在虚拟机下装了个ubuntu,linux系统如果没有网络那就是个报废的系统什么也做不了,下面给大家介绍下VMWare的三种网络方式.
三种网络方式
NAT:
nat 就是network address translate的简称。网络地址转换,这个技术是为了让象192.168.*.*这样的私有ip段能够访问internet而开发的。私有ip段,可以由任何公司和个人使用,所以世界上有无数电脑使用了192.168.0.111这样的地址,而这个地址绝对不能出现在internet上,因为这肯定会造成路由的失败。但是,ip地址的稀缺让我们必须采用这种共享ip的方案,同时还要允许这些机器访问internet。这样的前提下,NAT就应运而生了。
NAT技术应用在internet网关和路由器上,比如192.168.0.111这个地址要访问internet,它的数据包就要通过一个网关或者路由器,而网关或者路由器拥有一个能访问internet的ip地址,这样的网关和路由器就要在收发数据包时,对数据包的IP协议层数据进行更改(即 NAT),以使私有网段的主机能够顺利访问internet。
我想到的一个最典型的例子,就要算我的大学宿舍了。宿舍内部网段192.168.1.× ,通过路由器进入校园局域网10.10.110.×,然后通过学校网关,进入internet。这个过程中,宿舍的路由器做了一次NAT,而学校的网关又做了一次NAT。
VMWare的NAT上网采用的技术是一样的,它在主机和虚拟机之间用软件伪造出一块网卡,这块网卡和虚拟机的ip处于一个地址段。同时,在这块网卡和主机的网络接口之间进行NAT。虚拟机发出的每一块数据包都会经过虚拟网卡,然后nat,然后由主机的接口发出。
由于在这种条件下,虚拟机和主机不在同一个ip段,但是主机相当于虚拟机的网关,所以虚拟机能ping到主机的ip,但是主机ping不到虚拟机的ip。
BRIDGED:
bridge 就是“桥”的意思,说起桥接,就不能不说局域网。比如我们有两个局域网络,他们的ip段都处于192.168.0.*,同时,我们希望把这两个网络链接起 来,这中情况下,我们就可以采用桥接。这个时候,“桥”就是一个主机,这个机器拥有两块网卡,分别处于两个局域网中,同时在“桥”上,运行着程序,让局域 网A中的所有数据包原封不动的流入B,反之亦然。这样,局域网A和B就无缝的在链路层连接起来了(当然要保证两个局域网没有冲突的 IP)。这就是桥的作用,在链路层无缝的沟通两个局域网。
而VMWare的桥也是同样的道理,只不过,本来作为硬件的一块网卡,现在由 VMWare软件虚拟而来罢了!当采用桥接时,VMWare会虚拟一块网卡和真正的物理网卡就行桥接,这样,发到物理网卡的所有数据包就到了VMWare 虚拟机,而由VMWare发出的数据包也会通过桥从物理网卡的那端发出,这样,如果物理网卡可以上网,那么桥接的软网卡也没有问题了,这就是桥接上网的原 理了。
在桥接时,VMWare网卡和物理网卡应该处于同意ip网段,所以在虚拟机中ping物理网卡ip,或者在主机总ping虚拟机网卡ip,都可以 ping通。
Host-only:
顾名思义,这种技术提供的是主机和虚拟机之间的网络互访,而不是虚拟机访问internet的技术。如果,你只想让虚拟机和主机之间有数据交换,而不想让虚拟机访问internet,就要采用这个设置了。
Host-only的条件下,VMWare在真正的Windows系统中,建立一块软网卡。这块网卡可以在网络连接中看到,这块网卡的作用就是使windows看到虚拟机的IP。
由于,这种技术就是将主机和虚拟机通过一个ip段的网卡联系起来,所以双方都可以ping到对方。
vmnet1是host-only,也就是说,选择用vmnet1的话就相当于VMware给你提供了一个虚拟交换机,仅将虚拟机和真实系统连上了,虚拟机可以与真实系统相互共享文件,但是虚拟机无法访问外部互联网,而vmnet8是NAT,就是网络地址转换,相当于给你一个虚拟交换机,将虚拟机和真实系统连上去了,同时这台虚拟交换机又和外部互联网相连,这样虚拟机和真是系统可以相互共享,同时又都能访问外部互联网,而且虚拟机是借用真实系统的IP上网的,不会受到IP-MAC绑定的限制
上网实践:
(1)在VMWARE 上设置NAT方式,则vmnet1和vmnet8自动获取IP,linux的IP设置DHCP自动获取;即可上网;
(2)在VMWARE上设置bridged方式,则必须设置vmnet8 的IP与PC的IP属于同一网段;使用相同网关和DNS;linux的IP设置DHCP自动获取,即可上网。
这两种方式设置正确后,PUTTY只需要输入linux的IP地址即可直接访问
二、关闭linux防火墙和指定端口:
当Linux打开防火墙后,你会发现,从本机登录23端口是没有问题的,但是如果从另一台pc登录该linux系统后,你会发现提示这样的错误:
不能打开到主机的连接, 在端口 23: 连接失败
因为linux防火墙默认是关闭23端口的,如果允许远程登录,可以关掉防火墙,也可以开防火墙开放23端口,具体如下:
即时生效,重启后失效
开启: service iptables start
关闭: service iptables stop
重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off
在开启了防火墙时,做如下设置,开启相关端口
修改/etc/sysconfig/iptables 文件,添加以下内容:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT
三、putty连接VMWARE
1.在宿主xp计算机上,开始->运行->cmd
然后输入ipconfig /all
得到如下信息:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\Administrator>ipconfig /all
Windows IP Configuration
Host Name . . . . . . . . . . . . : TEK-LIFE
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Unknown
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
Ethernet adapter 本地连接 1:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for
VMnet8
Physical Address. . . . . . . . . : 00-50-56-C0-00-08
Dhcp Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.150.1
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :
Ethernet adapter 本地连接 2:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for
VMnet1
Physical Address. . . . . . . . . : 00-50-56-C0-00-01
Dhcp Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.119.1
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :
Ethernet adapter 本地连接:
Media State . . . . . . . . . . . : Media disconnected
Description . . . . . . . . . . . : Realtek RTL8139/810x Family Fast Eth
ernet NIC
Physical Address. . . . . . . . . : 00-E0-4C-4F-03-BB
C:\Documents and Settings\Administrator>
 2.设置虚拟机的IP和vmnet8一个网段并且要在网关和 DNS 里面填上刚才找到的那个 IP 地址( VMNET8 的 IP 地址),即可有无网卡,插不插网线都能互相通信了!
sudo vim /etc/network/interfaces
更改 IP和网关 192.168.150.111
网关 192.168.150.1
DNS:
sudo vim /etc/reslov.conf
nameserver 192.168.150.1
3.设置vmware的网络方式为NAT。
然后就可以用PUTTY连接了。
VMWARE版本:5.5.2
putty连接还需要注意
(1)在linux中需要启动ssh服务:sudo /etc/init.d/ssh start
(2)关闭linux防火墙
(3)PC机中的vmnet1和vmnet8自动获取IP(NAT)
PUTTY实践及优化:
使用上面的方式PC机可以通过PUTTY连接到虚拟机中linux;但是linux无法再上网;解决方法是PC机与VMWARE 使用NAT方式连接;在linux设置IP为DHCP(自动获取IP);然后在终端输入:ifconfig 可以查看当前linux的IP;使用putty输入这个IP即可登录到linux,同时linux也可以上网。