网络层(二)——划分子网和构造超网

时间:2024-04-06 10:49:04

1、划分子网

为什么要划分子网?

  • IP地址空间的利用率有时很低
  • 两级IP地址不够灵活

划分子网的基本思路如下:

(1)一个拥有许多物理网络的单位,可将所属的物理网络划分为若干个子网。本单位以外的网络看不见这个网络是由多少子网组成的,因为这个单位对外仍表现为一个网络。

(2)从网络的主机号借用若干位作为子网号,当然主机号也就减少了同样的位数。于是两级IP地址在本单位内部就变为三级IP地址:网络号、子网号和主机号。

表示方法由    IP地址::={<网络号>,<主机号>}        ——>        IP地址::={<网络号>,<子网号>,<主机号>}

(3)凡是从其他网络发送给本单位某台主机的IP数据报,仍然是根据IP数据报的目的网络号找到连接在本单位网络上的路由器。此路由器再按目的网络号和子网号找到目的子网 ,把IP数据报交付目的主机。

划分子网只是把IP地址的主机号这部分进行再划分,而不改变IP地址原来的网络号。

2、子网掩码(32位,由0和1组成)

假定有一个数据报(其目的地址是145.13.3.10)已经到达了路由器R,那么这个路由器是如何把它转发到子网145.13.3.0呢?

   网络层(二)——划分子网和构造超网

    从IP数据报的首部无法看出源主机或目的主机所连接的网络是否进行了子网的划分。R把三级IP地址的子网掩码和收到的数据报的目的地址145.13.3.10逐位相,得出了所要找的子网的网络地址145.13.3.0。

    现在互联网的标准规定:所有的网络都必须使用子网掩码,同时在路由器的路由表中也必须有子网掩码这一栏。如果一个网络不划分子网,那么该网络的子网掩码就使用默认子网掩码。

    A类地址的默认子网掩码是255.0.0.0

    B类地址的默认子网掩码是255.255.0.0

    C类地址的默认子网掩码是255.255.255.0

例:已知IP地址是141.14.72.24,子网掩码是255.255.292.0。试求网络地址。

    子网掩码是11111111 11111111 11000000 00000000。掩码的前两个字节都是全1,因此网络地址的前两个字节可写为141.14。子网掩码的第四字节是全0,因此网络地址的第四字节是0。将72(01000000)和192(11000000)逐位相“与”得出值为64,因此网络地址是141.14.64.0。

3、无分类编址CIDR(构造超网)

CIDR(Classless Inter-Domain Routing)无分类域间路由选择

特点:

(1)CIDR消除了传统的A类、B类和C类地址以及划分子网的概念。CIDR把32位的IP地址划分为前后两部分,前面部分是“网络前缀”,用来指明网络,后面部分则用来指明主机。其记法是:

                                        IP地址::={<网络前缀>,<主机号>}

    CIDR还使用“斜线记法”(CIDR记法),即在IP地址后面加上斜线“/”,然后写上网络前缀所占的位数。

(2)CIDR把网络前缀都相同的连续IP地址组成一个“CIDR地址块”,只要知道地址块中任何一个地址,就可以知道这个地址块的最小、最大地址,以及地址块中的地址数。

例:已知IP地址128.14.35.7/20是某CIDR地址块中的一个地址,现在把它写成二进制表示,其中的前20位是网络前缀,后面12位是主机号:

                        128.14.35.7/20=10000000 00001110 00100011 00000111

最小地址 128.14.32.0 10000000 00001110 00100000 00000000
最大地址 128.14.47.255 10000000 00001110 00101111 11111111

PS:“CIDR不使用子网”是指CIDR并没有在32位地址中指明若干位作为子网字段。但分配到一个CIDR地址块的单位,仍然可以在本单位内根据需要划分出一些子网。这些子网也都只有一个网络前缀和一台主机号字段,但子网的网络前缀比整个单位的网络前缀要长些。

    由于一个CIDR地址块中有很多地址,多以在路由表中就利用CIDR地址块来查找目的网络。这种地址的聚合常称为路由聚合,它使路由表中的一个项目可以表示原来传统分类地址的很多个路由。路由聚合也称为构成超网。路由聚合有利于减少路由器之间的路由选择信息的交换,从而提高了整个互联网的性能。

最长前缀匹配

在使用CIDR时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成,在查找路由表时可能会得到不止一个匹配结果。应当从匹配结果中选择具有最长网络前缀的路由,这叫做最长前缀匹配。因为网络前缀越长,其地址块就越小,路由就越具体。