目录

一 网络配置中出现的错误及解决方案

二 VMware下网络配置的三种模式简介

1、桥接模式(Bridged)

2、网络地址转化模式(NAT)

3、仅主机模式(host-only)

一 网络配置中出现的错误及解决方案

错误1: 安装好虚拟机之后一切正常,等过了一天再使用时发现获取不到IP地址。

错误分析:考虑虚拟机配置了NAT模式、Bridged模式和host-only模式。

首先考虑NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,无法进行手工修改,虚拟机的IP地址必须设置为自动获取。即宿主计算机相当于一台开启了DHCP功能的路由器,而虚拟机则是内网中的一台真实主机,通过路由器(宿主计算机)DHCP动态获得网络参数。在此猜测是与宿主计算机的相关服务有关。

解决过程:任务管理器 ——> 详细信息 ——>服务 ——>开启相关服务

解决结果:猜测正确,执行完以上过程之后进入虚拟机查询IP,IP地址正常获取。

图解过程:

linux nat kvm 虚拟机无法访问物理机端口 无法访问虚拟机的ip地址_虚拟服务器无法获取ip地址

图1

linux nat kvm 虚拟机无法访问物理机端口 无法访问虚拟机的ip地址_虚拟系统_02

图2

linux nat kvm 虚拟机无法访问物理机端口 无法访问虚拟机的ip地址_IP_03

图3

linux nat kvm 虚拟机无法访问物理机端口 无法访问虚拟机的ip地址_IP_04

图4

错误2:其实还是一样的,我也很想知道IP地址为什么总是和我过不去,对的,它又不能正常获取IP地址了  @ _@

错误分析:有了上次的错误经验,我以为又是DHCP等服务没有开启,兴冲冲的想点几下恢复正常。然而,不是这个问题,懵圈。but,还是要解决,分析过程如下:

1、怀疑是windows系统服务造成的原因,比如DHCP没有启动等,进行检查发现不是这个问题,否定。

2、怀疑为虚拟网络配置问题,查看VMware的虚拟网络配置,一切正常,不存在这个问题,否定。

经过以上分析,并没有解决问题。经过询问老师,明白应该是network服务没有开机启动,而问题是我并不知道怎样解决这个问题,解决过程全是冬天的海洋老师全程解决的,我只是成功的结果的搬运工。以下是老师解决问题的代码,完整性不能保证。

代码如下:

ip a
service network restart
ip a
cd /etc/sysconfig/network-scripts/
vim ifcfg-eth0
reboot
ip a
getenforce
vim /etc/sysconfig/selinux
reboot
ip a
ls
vim /etc/sysconfig/network-scripts/ifcfg-eth0
getenforce
dmesg |grep eth0
ip a
vim /etc/sysconfig/network-scripts/ifcfg-eth0
vim /etc/sysconfig/network-scripts/ifcfg-eth1
chkconfig --list
chkconfig NetworkManager off
reboot
ip a
service network ststus
chkconfig --list |grep network
chkconfig network on
reboot

解决结果:问题得到解决,但我并不明白其中的原理,等学习完相关课程,会继续补充。

二 VMware下网络配置的三种模式简介

因为学习需要安装了虚拟机,但却不懂网络的配置,导致出现了一些错误,在此总结网络配置的三种模式。

VMware提供了三种工作模式,分别为:桥接模式(Bridged)、网络地址转换模式(NAT)、仅主机模式(host-only)。安装好虚拟机以后,在网络连接里我们可以看到多了两块网卡。如图。

linux nat kvm 虚拟机无法访问物理机端口 无法访问虚拟机的ip地址_虚拟服务器无法获取ip地址_05

图5

1 桥接模式(Bridged)

1.1、模式简介

桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机,所以两个网卡的IP地址也要设置为同一网段。

1.2、工作原理

配置成桥接网络连接模式的虚拟机就当作主机所在以太网的一部分,虚拟系统和宿主机器的关系,就像连接在同一个集线器(Hub)上的两台电脑,可以像主机一样访问以太网中的所有共享资源和网络连接,可以直接共享主机网络的互联网或接入线路访问互联网。主机与虚拟机之间,以及各虚拟机之间都可以互访。各虚拟机通过默认的VMnet0网卡与主机以太网连接,虚拟机间的虚拟网络为VMnet0,此时虚拟机就像局域网中的一个独立的物理机一样。

在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。在桥接模式下,我们需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。同时,由于这个虚拟系统是局域网中的一个独立的主机系统,那么就可以手工配置它的TCP/IP配置信息,以实现通过局域网的网关或路由器访问互联网。

1.3、桥接模式图解

linux nat kvm 虚拟机无法访问物理机端口 无法访问虚拟机的ip地址_虚拟服务器无法获取ip地址_06

图6

2 网络地址转化模式(NAT)

2.1、模式简介

NAT,是Network Address

Translation的缩写,意即网络地址转换。NAT模式也是VMware创建虚拟机的默认网络连接模式。使用NAT模式网络连接时,VMware会在主机上建立单独的专用网络,用以在主机和虚拟机之间相互通信。虚拟机向外部网络发送的请求数据包裹,都会交由NAT网络适配器加上特殊标记并以主机的名义转发出去,外部网络返回的响应数据包裹,也是先由主机接收,然后交由NAT网络适配器根据特殊标记进行识别并转发给对应的虚拟机,因此,虚拟机在外部网络中不必具有自己的IP地址。从外部网络来看,虚拟机和主机在共享一个IP地址,默认情况下,外部网络终端也无法访问到虚拟机。

此外,在一台主机上只允许有一个NAT模式的虚拟网络。因此,同一台主机上的多个采用NAT模式网络连接的虚拟机也是可以相互访问的。

2.2、工作原理

使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,无法进行手工修改,因此虚拟系统也就无法和本局域网中的其他真实主机进行通讯。

实际上,VMware Network Adepter VMnet8虚拟网卡的作用就是为主机和虚拟机的通信提供一个接口,即使主机的物理网卡被关闭,虚拟机仍然可以连接到Internet,但是主机和虚拟机之间就不能互访了。

在NAT模式下,宿主计算机相当于一台开启了DHCP功能的路由器,而虚拟机则是内网中的一台真实主机,通过路由器(宿主计算机)DHCP动态获得网络参数。因此在NAT模式下,虚拟机可以访问外部网络,但外部网络不可以访问虚拟机,因为虚拟机属于内网。

2.3、网络地址转化模式图解

linux nat kvm 虚拟机无法访问物理机端口 无法访问虚拟机的ip地址_虚拟服务器无法获取ip地址_07

图7

3 仅主机模式(host-only)

3.1、模式简介

仅主机模式,是一种比NAT模式更加封闭的的网络连接模式,它将创建完全包含在主机中的专用网络。仅主机模式的虚拟网络适配器仅对主机可见,并在虚拟机和主机系统之间提供网络连接。相对于NAT模式而言,仅主机模式不具备NAT功能,因此在默认情况下,使用仅主机模式网络连接的虚拟机无法连接到Internet。

3.2、工作原理

在host-only模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。

在host-only模式下,虚拟系统和宿主机器系统是可以相互通信的,相当于这两台机器通过双绞线互连。

在host-only模式下,虚拟系统的TCP/IP配置信息(如IP地址、网关地址、DNS服务器等),都是由VMnet1(host-only)虚拟网络的DHCP服务器来动态分配的。

3.3、仅主机模式图解

linux nat kvm 虚拟机无法访问物理机端口 无法访问虚拟机的ip地址_虚拟系统_08

图8

总结:刚刚开始学习Linux,也是第一次接触虚拟机,很多东西都不是很清楚。在学习的过程中会遇到大问题小问题,不过,我不会放弃,会坚持下去,解决一个一个小问题,水滴石穿。这篇博文是因为在运行虚拟机的时候遇到了一些问题,觉得比较重要所以记了下来,但是其中还有很多我现在并不明白,我查阅了一些资料,借鉴了别人的劳动成果,然后进行了整理。等到老师讲完,彻底弄清问题的症结,我会进行更新。