子网划分
A,B,C,D,E这五类地址最初由固定的组织分配,但是不方便的一点是,当一个单位需要新的部门并开通新的网络的时候,就需要将再次申请新的IP,不够灵活。
因此有了划分子网的方法,将分得的IP中从主机号中借用几位当作子网号,进行细分
比如对于网络号长度为24位的C类地址如202.210.220.0
,主机号为8位,从主机号借用3位当作子网号
这时候 子网可以是000
,001
,011
,111
,110
,100
,101
,010
即一个公司分配到202.210.220.0
这一组IP之后,可以从主机号借3位作为子网号,共可分配8个子网,可以将这8个子网分配给8个部门。每一个子网可以分配个主机。
但是这只是人为定义的子网,要让计算机知道子网还需要其他信息,即子网掩码
子网掩码格式与IP相同,但是前n位均为1,用于指明IP的前n位为网络号
注意 子网掩码是设置在主机中的 ,一个IP一个子网掩码。
主机IP && 子网掩码=主机所属的网络地址
假设现在一个公司分得了网络202.210.192.0
这样一个C类的网络地址,因为业务需求,需要划分成两个子网,因此向主机号借1位
则子网掩码为255.255.255.128
每一个IP与子网掩码进行相与计算,即为所属的子网的网络地址
VLSM(可变长子网掩码)
对于上面的子网划分,都只能划分为同大小的子网,但是往往并不是这样,不同的子网可能主机数量相差巨大,因此使用VLSM
对于特定需求的网络,划分成不等大小的子网
假设获得C类网络地址202.210.192.0
,假设有部门A,B,C,A部门需要120台主机,B、C部门均需要50台主机。
若采用原有子网划分方案,将其均分为多份,显然无法满足需求。因此要将子网再细分,这就是VLSM。202.210.192.0
这个网络地址中,最多可容纳254台主机,而A部门需要120台,因此先将子网按划分以满足A的需求,则子网A的子网掩码为255.255.255.128
(向主机号借一位),对应的主机IP段为202.210.192.1-202.210.192.127
,可容纳127台主机,满足A需求。
剩下IP段202.210.192.128-202.210.192.254
,要同时满足B,C需求,因此将剩下的子网再次进行划分,子网掩码255.255.255.192
(在借一位的基础上,再借一位)在子网的基础上,再次进行划分
得202.210.192.129-202.210.192.191
与202.210.192.193-202.210.192.254
两个网段,分别分配给B,C部门,均可容纳下50个主机,如下图
注意: VLSM是一种技术,需要设备支持一些特定的协议才能使用
CIDR(无分类编址)
CIDR消除了传统的分类地址方式,主机号与网络号的限制变得相对更自由,网络号的长度可以自由选定
事实上,CIDR将网络号称为网络前缀
CIDR将网络号相同的所有IP地址,分为一类,称为CIDR地址块。
如对于CIDR地址128.14.35.7/20
其中/20
指明网络前缀的长度
对应地址块及最大最小IP如图(不取全0/全1)
CIDR提供了路由聚合功能,这里的路由聚合功能
在前面提到过,路由转发可以根据网络号进行转发,而不必识别主机号,对于同一个网络地址下的不同IP,它无需在路由表中维护多项,对于发送到同一网络地址中的数据包,只需要在路由表中维护一项,因此IP比使用MAC要更好
但是在没有CIDR之前,虽然可以只识别网络号转发,减少了开销.但主要是依靠A,B,C类的网络号进行的.
也就是可能一个单位它同时具有多个C类地址的时候,如202.210.192.0与202.210.193.0
那么其他路由器就需要在路由表中维护两条数据来保证该单位的通信.
但是有了CIDR之后,202.210.192.0/24
与202.210.193.0/24
就可以合并为202.210.192.0/23
这时候,其他路由器的就只需要在路由表中维护一条数据(23位长的网络号)即可将数据传递到该单位.降低了消耗.
最小前缀匹配(需要明白如何使用路由表)
因为采用CIDR,一个路由表可能会出现这样的情况
单位C的下属有两个部门,A,B。A,B下面又有一系列的子部门
A的IP为202.210.192.0/25
,B的IP为202.210.192.128/25
,两个部门可以聚合为202.210.192.0/24
路由表可能会维护202.210.192.128/25
与202.210.192.0/24
两项
当路由器收到一个数据报的目的地址为202.210.192.129
的时候
此时将目的地址与网络前缀进行相与运算
结果如下图,即两路由表中两项均可满足
此时根据最长前缀匹配,会选择使用202.210.192.128/25
这一项,因为其地址块更小,更易传送到指定地址