首页 > 代码库 > 虚拟机网络理解

虚拟机网络理解

 

  一般内网的网段都是168.192.A.B类型。

  如果网段内A,B 全为0,则表示次该IP是此网段网络标识,Network;

  如果网段内A,B全为1,则表示该IP是此网段最后的一个IP,即广播地址IP

  任何一个网段的所有IP中以上2个IP是不能用的。总的数量要-2.

  网关:本局域网网段内的一个对外的网络接口,即一般去可用IP的首个IP作为网关(对外网络接口),一般是本局域网所在网络中的与“外部互联网”联通的“路由器的内网设定IP”。路由器一般由双重身份,对内(内网网关),对外(公用IP)

其他特殊类型的IP地址:

(1)0.0.0.0 表示的是这样一个集合:所有不清楚的主机和目的网络。

(2)255.255.255.255 限制广播地址,这个地址不能被路由器转发。

(3)127.0.0.1 本机地址。

1. route命令

  route命令是在本地 IP 路由表中显示和修改条目网络命令。

  常用命令:

  • route delete:删除路由;
  • route print:打印路由的Destination;
  • route add:添加路由;
  • route change:更改现存路由。

  一般使用route delete、route add、route print这三条命令可解决路由的所有功能。

  测试本机:

  技术分享

(1)第一列是网络目的地址

  列出了路由器连接的所有的网段。

(2)第二行网络掩码列提供这个网段本身的子网掩码,而不是连接到这个网段的网卡的子网掩码。

  这基本上能够让路由器确定目的网络的地址类。

(3)第三列是网关。

  一旦路由器确定它要把这个数据包转发到哪一个目的网络,路由器就要查看网关列表。

  网关表告诉路由器这个数据包应该转发到哪一个IP地址才能达到目的网络

(4)第四列接口列.

  告诉路由器哪一个网卡连接到了合适的目的网络(响应的目的局域网。从技术上说,接口列仅告诉路由器分配给网卡的IP地址。那个网卡把路由器连接到目的网络。然而,路由器很聪明,知道这个地址绑定到哪一个物理网卡。

(5)第五列是测量。

  测量本身是一种科学。该值越小的,可信度越高

其中:

 第一条: 技术分享

  这表示发向任意网段(0.0.0.0)的数据通过本机接口222.20.109.61(本机IP)被送往一个默认的网关:222.20.109.254(本机网关),它的管理距离是1,管理距离指的是在路径选择的过程中信息的可信度,管理距离越小的,可信度越高。如果活跃点越低,则表示此条路首先转发。

  技术分享

  表示从自己的主机(222.20.109.61本机IP)发送到自己主机的数据包,如果使用的是自己主机的IP地址,跟使用回环地址效果相同,通过同样的途径被路由,也就是如果我有自己的站点, 我要浏览自己的站点,在IE地质栏里面输入localhost与222.20.109.61是一样的,尽管localhost被解析为 127.0.0.1。

  技术分享

  从上面可以看出:目前本主机有3个网段局域网:

  (1) 192.168.134.*  局域网A(NAT局域网)    VMnet8(局域网接口,即网关

  (2)192.168.150.*  局域网B(HostOnly局域网)

  (3)192.168.191.*  无线网(无线wifi)

  (4)127.*.*.*     本机

  (5)222.20.109.*  本机坐在的局域网

技术分享

 

在宿主主机中查看虚拟网卡的IP

技术分享

 

  这里的目的地址是一个局域广播地址,系统对这样的数据包的处理方法是把本机(222.20.109.61本机IP,即在链路上)作为网关,发送(对应的网段)局域广播帧,这个帧将被路由器过滤。

  这个帧将不会被过滤,只会向分支网络转发(广播),对于外网过滤。

  重点解释:

  本机器中虚拟机中有两个Linux系统,全部采用NAT的方式联网,其中虚拟出来的网卡VMnet8,就是接入这个局域网的接口(192.168.134.1)。所以宿主主机中的路由表会将此虚拟网络(192.168.134.*)的广播地址(192.168.134.255)转发到此网络中的接口。

  其他同理。

  技术分享

  那么,虚拟网络中的linux主机的网络信息如何呢:

  ifconfig:查询局域网主机IP,以及局域网子网掩码和局域网广播。

  技术分享

  route:查询虚拟局域网的网关(192.168.134.2),即虚拟VMnet8的IP地址(虚拟网卡)。

  技术分享

  设置Linux的网络基本方法

(1)配置DNS
vi /etc/resolv.conf

dnsnameserver 192.168.0.1

  技术分享

虚拟网卡VMnet8同时充当了

DHCP动态IP分配服务器

域名解析解析DNS服务器(NAT模式自动设置)

(2)配置网关:

vi /etc/sysconfig/network
加入:
GATEWAY=192.168.134.1

(3)配置ip地址:
vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"HWADDR="00:0C:29:6C:BB:E6"NM_CONTROLLED="yes"ONBOOT="no"NETMASK=255.255.255.0IPADDR=192.168.0.8GATEWAY=192.168.0.1BOOTPROTO=staticONBOOT=yesPEERDNS=yes

(4)重新启动网络服务:
/etc/init.d/network restart
或使用命令:
service network restart
或:
ifdown eth0 and ifup eth0

 

 


 

总结:

1. NAT架构的局域网的网段192.168.134.* 的IP分配

  技术分享

NAT架构的局域网的网段192.168.134.* 的IP分配

192.168.134.0: 此局域网的网络标识,(已占用,不提供分配)

192.168.134.1:VMnet8的网卡地址

  一般(经验)从本网段的所有IP中的第一个可用IP作为本局域网的(网关,或者对外网络接口)

  (1)此局域网的网关,网络接口(路由器IP,或者子网集线器上IP),可以从“宿主主机”的路由表中看出;

  技术分享

  (2)动态IP分配服务器,即DHCP服务器,可以从VMware设置中看出;

  技术分享技术分享

192.168.134.2: 此局域网的DNS服务器地址

  (1)内部局域网的DHCP服务器地址查看vi /etc/resolv.conf

  因为采用的DHCP服务器,所以本局域网中的所有主机都不需要设置(IP,子网掩码,默认网关)

  自动设置就是利用DHCP服务器来自动给网络中的电脑分配IP地址、子网掩码和默认网关。这样做的好处是一旦网络的默认网关发生了变化时,只要更改了DHCP服务器中默认网关的设置,那么网络中所有的电脑均获得了新的默认网关的IP地址。这种方法适用于网络规模较大、TCP/IP参数有可能变动的网络。

  技术分享

  (2)内部NAT服务器地址,从VMware的设置看出。

技术分享

  (3)内部局域网的网关,由局域网内部主机的路由表推测

  技术分享

  一般default是内网不能识别的IP,即一般用0.0.0.0表示(所有的不能识别的网络IP),即这些IP都是访问外网的。

192.168.134.255: 此局域网的广播地址,(已占用,不提供分配)

 

2. NAT架构局域网中的192.168.134.2内网IP作用,以及NAT架构网络原理图的合理性分析

NAT架构原理图中

(1)“宿主主机” 与内部局域网的通信通过 虚拟网卡VMnet8 (192.168.134.1)进行通信。

  从宿主主机的路由表中,分析是合理的。

(2)内部局域网中的主机与“宿主主机”通信,其实还是借助于VMnet8(192.168.134.1)通信,只不过这还是,内网的通信,因此在路由表中通过默认的网关*可以包含。 其实这个内网的网关即(192.168.134.1)。通过内网主机路由表证明,这是对内网分析是合理的。

(3)内部局域网中的主机与“外网”的通信,是借助于NAT原理实现的,即内网的任何一台主机无关,也包括通过VMnet8,与宿主主机通信。

这个NAT服务器的IP即(192.168.134.2),可以等效为“对外网的网关,网络接口”。只不过进行了NAT网络地址转换处理,“转换”为宿主主机的IP,然后访问“外网”

所以,在内网主机的路由表中,可以看到通过default的其他的所有的对外的IP访问都是通过(192.168.134.1)NAT网络地址服务器地址,转换后访问,可以通过内网主机路由表证明,以及 VMware的设置证明。

 

3. route命令的应用(双网卡,吸怪电脑静态路表由来实现同时访问内外网的)

优点:

  原理:通过对不同的IP根据对应的网段的网络接口(网关)分流转发,即内网与外网是不同的网段,需要访问不同的网段IP,必须转发到对应的网络接口。

  电脑的网络IP配置不用变,两个网卡都按照正常配置(都配置IP地址、子网掩码、网关、)。

  我们通过设置不同的网络经过不同的网关来实现内外网正常访问。

(1)删除默认路由

route delete 0.0.0.0    

注:删除所有0.0.0.0的路由,这个是默认访问外网的路由

(2)添加静态路由

(假设内网网段为192.168.10.x,网关为192.168.10.1;

外网网段为192.168.20.x,网关为192.168.20.1)

先配置网静态路由

route add 192.168.10.0 mask 255.255.255.0 192.168.10.1 -p

注:它表示访问192.168.10.0网段的所有数据都要经过内网网关192.168.10.1,-p表示永久添加,重启后依然有效

在配置外网静态路由

route add 0.0.0.0 mask 0.0.0.0 192.168.20.1 -p

注:它表示你可以上外网,访问所有数据都要经过外网网关192.168.20.1,-p表示永久添加,重启后依然有效。

(3)设置完了以后,还要再看一下路由表是否都修改过来了。

在命令窗口输入route print ,就可以显示本机的路由表了。

对于永久路由修改的方法:

注意:此方法适用于多张网卡,比如三张网卡、四张网卡等等

操作:需要把网卡禁用,再启用,那么我们设置的静态路由就会丢失。如果我们想清除静态路由,就可以使用此方法。

 技术分享

 从上图可以看出,宿主主机,通过路由表,把5个不同网段的IP对应分流到响应的“网段接口”

4. 关于网关的理解

 网关(Gateway)又称网间连接器、协议转换器。网关在网络层以上实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互连,也可以用于局域网互连。 网关是一种充当转换重任的计算机系统或设备。使用在不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求

关于网关说几点:

(1)网关有双重身份:对内局域网有内部的IP,对外有外部的IP(对外可以看做一个外网的公用IP);

(2)网关,不等效为称为网络接口,二者是不同的概念:

网关:指内网中的所有需要访问外部的IP,都需要通过这个关口,与外界相连。而外界也必须通过这个端口,进入内部网络。这两个往往不是同一个地址。一个网段中的所有IP,只有一个网关,但是有非常多的“网络接口”

网络接口:一般选择本网段的首个可以的IP作为内网网段的所有IP的网关(一般都是末尾为1,级192.168.134.1),这是内网的网络接口。即在本路由表中,所有发送给此网段的IP都通过这个“网络接口”进入此网段。一般网络接口的概念只出现在“路由表中”,不同的路由表中的不同网段的“网络接口”必然不同。

(3)默认网关必须是电脑自己所在的网段中的IP地址,而不能填写其他网段中的IP地址

  默认网关,就是所有所有的访问外网的IP,都通过转发给此“网关”,除去。

  查看当前本主机的:默认网关,以及IP的万能方法:

  c:\>route print
  会有一条路由:
  0.0.0.0   0.0.0.0   默认网关的IP   接口(机器的IP)   跳数

技术分享

 

 

 

 

 

 

 

endl;

虚拟机网络理解