OSI-VLSM(Variable Length Subnet Mask)可变长子网掩码

session 1 衍生背景
      VLSM(Variable Length Subnet Mask,可变长子网掩码)规定了如何在一个进行了子网划分的网络中的不同部分使用不同的子网掩码。这对于网络内部不同网段需要不同大小子网的情形来说很有效。主要用于解决ipv4地址紧缺的用途。


1、ipv4地址长度为32个bit,二进制的表示形式为000110101 01011100 00000000 01011111总共是32个bit,人们为了记忆的简便性,把ip地址以人类容易记忆的点分十进制的方式表示,将32个bit分为4个段,每个段位8个bit,就是000110101.01011100.10000000.01011111 换算成十进制即为 53.92.128.95这样的地址。ip地址总共的个数就为2的32次方个,为了便于准确的定位ip地址,ipv4地址又被人为的分成了2个部分:
网络号(network)和主机号(host)两个部分也就是网段和主机标示
网络号唯一的的标识了一条物理链路或逻辑链路,主机号唯一地标识了该链路上所连接的具体设备
ip地址分为5个大类,每个大类的网络号和主机号如下划分:
网络大类     8bit          8bit          8bit          8bit
Class A:network      host          host         host       前8个bit作为网络位,后面24个bit都是主机位
Class B:network     network     host         host       前16个bit作为网络位,后16个bit作为主机位
Class C:network     network    network    host      前24个bit作为网络位,后8个bit作为主机位
Class D:组播地址
Class E:保留科研
如何区分ip地址的大类:
32bit分布        8bit         8bit            8bit           8bit
Class A:     0xxxxxxx    host            host          host               
第一个bit位为0的所有地址,前8个bit的范围1~126(00000001~01111111) 1.x.x.x~126.x.x.x
Class B:     10xxxxxx    network      host          host              
第二个bit位为0的所有地址,前8个bit的范围128~191(10000000~10111111)128.x.x.x~191.x.x.x
Class C:     110xxxxx    network    network     host              
第三个bit位为0的所有地址,前8个bit的范围192~223(11000000~11011111)192.x.x.x~223.x.x.x
Class D:    1110xxxx    Multicast  Multicast   Multicast      
第四个bit位为0的所有地址,前8个bit的范围224~239(11100000~11101111)224.x.x.x~239.x.x.x
Class E:     11110xxx                                                             
第五个bit位为0的所有地址

在ip地址中有一些特殊的ip地址作为公共使用:
1、广播地址:分为全网广播和子网广播,在ip地址中主机位全为1作为广播地址,全网广播为255.255.255.255,这个地址的范围是涵盖了iPv4所有的地址。子网广播为当前网络中的广播,表示为当前ip地址中主机位全为1的地址,比如192.168.1.255/24,24表示网络位bit数,最后8个bit表示主机位,8个全1就是255,所以这个地址就是192.168.1.0/24这个网络中的广播地址,当有一台计算机向这个地址发送信息后,在192.168.1.0这个网络中的所有主机都能收到该信息。
2、协议地址:127.0.0.1表示本机协议地址
3、私有地址:也分为A、B、C类,因为这个三类私有地址是从全部的ipv4地址对应的A、B、C类地址中专门挑选出来的。用途是不同的个人或企业可以使用相同的该地址,这类私有地址并不在internet上通信,所有设备也不能识别这个范围内的地址,缓解了ipv4地址空间缺席的问题。
这些私有地址为:
A: 10.0.0.0~10.255.255.255 即10.0.0.0/8
B:172.16.0.0~172.31.255.255即172.16.0.0/12
C:192.168.0.0~192.168.255.255 即192.168.0.0/16
任何人都可以使用的地址,不需要去专门申请或者购买。可以重复使用,但是不能在互联网中传输信息,必须通过nat技术转换成某个互联网地址才能够进行通信。
 
session 2 可变长子网掩码应用
为了缓解ip地址紧缺,发明了VLSM技术。将一个较大的网络分成若干个较小的网络。因为一个大网络所包含的主机数很多,实际并用不到这么多的主机造成很严重的浪费,并且网络越大里面发送广播后的链路压力也越大,比如一个A类地址10.0.0.0/8,这个标准A类地址的网络位8bit,主机位24bit。
其中的网络号一个:10.0.0.0/8
主机位为2的24次方个:2的24次方=16777216个ip地址
也就是说在这个网络里面有16777216个ip地址在同一个网络中,这么多地址没有那个组织或者机构能用完,而且如果这个网络中发送一个广播,这16777216个主机都能收到,很容易产生广播风暴造成转发设备负载过大。所以就需要安需求把这个大网络分成若干个小网络来减少地址空间不足的压力和减少整个网络的负载。使用VLSM技术,就是让网络位向主机位借位使得网络位变得多了,而主机位变的少了。就变成网络多了,而主机被分配到多个网络中去了,分离开了。
以这个10.0.0.0/8为例子,假如在一个大网络中我需要拿出2个小网络来使用(剩下的不动,因为可以分成若干个网络么),这2个小网络中每个网络只需要2个ip地址来上网。
首先将10.0.0.0/8(10.0.0.0 255.0.0.0)这个地址转换成二进制形式为:
00001010.00000000.00000000.00000000 这就是它的二进制表现形式,其中前8个bit是它的网络号(红色),后面24个bit都是主机号(蓝色),再来看要求需要2个网络,2个主机。那个设置网络位需要向主机位借n个位,整个大网络的主机数是2的24次方个(主机位24个bit),那么现在需要的主机是2个,那么我们就暂定这个大网络的网络位需要向主机位借n个bit来划分,每个子网中最少有2个主机地址,计算如下:
OSI-VLSM(Variable <wbr>Length <wbr>Subnet <wbr>Mask)可变长子网掩码 计算出n=22,也就是说网络位需要向主机位借22个bit数来填充网络位才能满足需求。然后根据借用的结果来分离小网络:
10.0.0.0/8            00001010.00000000.00000000.00000000       借用后:                              10.0.0.0/30          00001010.00000000.00000000.00000000       借用后是30bit的网络位和2bit的主机位,拿出划出的小网络:第一个是    00001010.00000000.00000000.00000000        10.0.0.0/28~10.0.0.3/28
                    第二个是    00001010.00000000.00000000.00000100        10.0.0.4/28~10.0.0.7/28
                    第三个是    00001010.00000000.00000000.00001000        10.0.0.8/28~10.0.0.11/28
                    第四个是    00001010.00000000.00000000.00001100        10.0.0.12/28~10.0.0.15/28
                    第五个是    00001010.00000000.00000000.00010000        10.0.0.16/28~10.0.0.19/28
                    第五个是    00001010.00000000.00000000.00010100        10.0.0.20/28~10.0.0.23
                    。。。。。。
以此类推,这样算的话可以划分出若干个只有2个主机的网络。所以我们需求是2个,就拿出2个来用,比如第一个和第二个10.0.0.0/28~10.0.0.3/28和10.0.0.4/28~10.0.0.7/28,其中10.0.0.0和10.0.0.4是这个小网络的网络号,而10.0.0.3和10.0.0.7是这2个小网络的广播地址。这样我们就分离出2个各含2个主机位的网络了。相互之间也是隔离开的。加入另外有需求说要分离出3个网络,每个网络是6个主机位,也是同理将10.0.0.0/8这个大网络进行划分,但是要除去已经划分出的这2个只有2个主机位的小网络就可以了,直到把这个大的A类地址用至不能再划分成小网络位置,最大限度的利用了ip地址空间。
注:VLSM支持若干次划分,如一个地址10.0.0.0/8第一次划分为网络位借用了10个bit变成10.0.0.0/18变成了00001010.00000000.00000000.00000000这样划分了若干个小网络
第一个小网络为:  00001010.00000000.00000000.00000000 10.0.0.0/18~10.0.0.63/18
第二个小网络为:  00001010.00000000.01000000.00000000 10.0.0.64/18~10.0.0.127/18
第三个小网络。。。。
其中第二个小网络分给了某公司,但是某公司又分了多个子公司,希望子公司之间的ip能够相互独立,不在同一个网络范围(10.0.0.64/18)内。那么可以将这个小网络(10.0.0.64/18)再次进行划分成更多的更小的网络,比如将这个小网络的主机位再给网络位借用5个bit,那么划分如下
第一个 00001010.00000000.01000000.00000000   10.0.64.0/23~10.0.65.255/23
第二个 00001010.00000000.01000010.00000000   10.0.66.0/23~10.0.67.255/23
第三个 00001010.00000000.01000100.00000000   10.0.68.0/23~10.0.69.255/23
第四个 00001010.00000000.01000110.00000000   10.0.70.0/23~10.0.71.255/23
第五个 00001010.00000000.01001000.00000000   10.0.72.0/23~10.0.73.255/23
第六个 00001010.00000000.01001010.00000000   10.0.74.0/23~10.0.75.255/23
第七个 00001010.00000000.01001100.00000000   10.0.76.0/23~10.0.77.255/23
第八个 00001010.00000000.01001110.00000000   10.0.78.0/23~10.0.79.255/23
 这些更小的网络中每个网络的主机数位2的9次方=512台主机,再减去网络号和广播地址号,可用的主机地址为510个,每一个网络能容纳510台计算机或者网络设备。

这就是VLSM的基本应用个作用。与它类似的有超网、CIDR(无类路由)技术,原理基本相同,超网是VLSM的反向操作,是将网络借位给主机位来达到网更多的小网络合并成一个大网络的技术,CIDR是在路由中使用的将多个连续的网络号合并成一个大的网络号(如将192.168.1.0/24,192.168.2.0/24,192.168.3.0/24合并成192.168.0.0/16,这样转发的时候就只要一条路由条目就够了),减少路由条目的技术。


你可能感兴趣的:(OSI-VLSM(Variable Length Subnet Mask)可变长子网掩码)