子网划分及汇总

                                                                     ----阿J

引言:在《CCNA学习指南》中对于IP的寻址,以及子网划分,包括之后的路由汇总及拓展开来的

CIDR---无类域间路由选择等等都讲得非常的详细,尤其是子网的划分与路由汇总的讲解由实例讲得

很到位;所以这里我就不在对整个技术进行重新的描述,而只是在这里嵌入自己的一些小思维进入罢

了。

一:IP寻址--
对于一个ip地址,它包含了两个组件:前面一个叫做网络组件;后面一个叫做主机组件。一个网络中

的ip它的网络组件是唯一的,在这个网络组件之后的主机组件是这个网段中唯一的---这样就使得这

个ip在这个网络中是唯一的。主机组件有分为几种类型:网络号(地址),主机地址,定向广播地址

。例如192.1687.1.1这个ip地址,它的网络组件便是192.168.1而主机组件是1。而在后续的学习中,

我们还会对一个ip地址进行拓展,它的组件不仅有网络组件和主机组件,而且多了一个子网比特组件

---它是在主机组件的身上分离出来的;我们在子网掩码中把借来的子网比特组件归入网络组件,称

为掩码位。

二:子网划分--

概述:子网划分是对ip地址更有效利用的一种方式---在ip寻址中我们已经对ip地址进行了分类,并

规定A类的前一个字节是网络组件,其余为主机组件,即子网掩码默认为255.0.0.0;B类的前两个字

节是网络组件其余为主机组件等规定,可是,在实际的网络拓扑中,我们对一个网络号的利用率非常

的低,例如我们需要100台PC,但却分配一个C类地址,而由于默认子网掩码是255.255.255.0,即可

以有255个ip,这样就浪费了155个ip地址。
子网划分是在这些默认划分的前提下再进行划分的,通过在ip地址之后附加一个子网掩码,以标志网

络组件和主机组件---这里的网络组件已经加入了子网比特组件;当然,我们在进行子网划分的有关

计算的时候,首先是判断这个地址是什么类型的地址,也就是说,它的默认子网掩码是什么,然后才

有后续的步骤。

子网划分这一块知识点无非就考察两点:
1.规划ip寻址:根据实际的网络需求,给出一个固定的地址,并对其进行子网划分,为网络中的设备

配置地址,并且还要实现一定的拓展性;
2.确定ip组件:给出一个ip地址,由此判断出这个地址属于哪个主机组件。

学习子网划分的方法:
我认为最简单的方法无疑是把子网掩码以二进制的形式写出来,然后根据具体的子网划分要求,对这

些比特位进行“必要的启动”----这也是最直观的,之后会进一步解释。

子网划分实施细节:
1.当子网掩码确定好了,有一个地方很重要---就是写出你划分出来的子网络号;而要写出这些子网

络,重点在于能否透彻理解子网划分。
举个例子,我们有个C类网络号192.168.1.0/24  要求划分出14个网段,最大网段有14台设备
对于这些问题对于我们是非常简单的事情,只要套入几个公式然后算出子网掩码就可以了;接着才是

重头戏---写出这些划分好的子网络。
这里介绍一种方法:通过我们的计算,我们得出子网掩码为/28或者255.255.255.240;这是我们得比

较子网划分前后的掩码差,也就是我们所谓的子网比特位数,在这个例子中,网络组件向主机组件借

了4个子网比特位,这个时候,如果需要写出这些子网络号,只需“启动”这些比特位即可,因为给

定的前24个比特位已经是静止的了,可以不管静止的比特位;这四个比特的有2*2*2*2=16种变化,也

就是说,通过向主机组件借四个比特位,可以使一个网络变成16个子网络----子网络的写法便是这四

个比特的十六种变化,然后在前面添加上静止比特即可。由于比特的变化用二进制看比较直观,所以

我们以二进制来表示一下:

192.168.1.0   11111111.11111111.11111111.11110000
                         |                          静止比特               |动态|
“动态比特”即子网比特位,现在我们把它们割接出来
1111---这几个比特位的变化组合有16种变化
各个子网络与子网比特位变化的关系:
0000----192.168.1.0/28
0001----192.168.1.16/28
0010----192.168.1.32/28
……以此类推;这里注意一点的是,比特位的位置可以决定子网络的不同,这是由于不同位置的位权

是不同的---例如本例中,第一个比特开启是为16,而第二个比特开启是为32。在写子网络号时,主

机组件的比特是全部关闭的---全0

当掌握了这个方法之后,对于根据一个地址去判断它是网络号,主机地址还是定向广播地址是就非常

的简单了,在《ccna学习指南》中的P128中的一个例子就很不错,当然,用这个方法可以很快的列出

子网络号。
子网掩码中的其他计算技巧:
1.定向广播地址即是下一个网络地址减去1---这是要的定向广播地址很多时候不再是以255为结尾的

,因为这是的这个网络地址已经是重新经过我们的划分的;如本例中的定向广播地址变成了

192.168.1.15/28,192.168.1.31/28,技巧:15=16-1 31=32-1
2.在计算主机组件的增量时最简单的方法便是:看剩下有多少主机比特位,如k,然后通过2^k即可算

出主机组件的增量---对于我们规划子网划分时有一定作用;这种方法跟书本上的方法有一些差异,

但相比跟简洁。
3.网络号总是一个偶数,广播地址总是奇数,主机地址可以偶数也可以奇数。
网络号总是偶数的原因在于主机组件的增量用于是偶数,因为总是2的幂,而广播地址总是奇数是由

于我们刚才知道,定向广播地址等于下一个网络号-1。而主机地址便夹在这两种地址的中间。
4.在验证子网划分时,有时可以利用这个规律:最后一个网络号的“样子”跟子网掩码的“尾巴”是

一个样的。例如本例中最后一个子网是:192.168.1.240/28--这里的240跟子网掩码的

255.255.255.240中的240是一定一致的,这是由于最后一个子网络号时:全部比特位都开启的缘故。

三:VLSM--可变长子网掩码
VLSM其实是子网划分的一个拓展,它在子网划分的基础上,更加高效的利用了网络地址---即一个地

址的划分可以接受多于一个的掩码,其实便是“次子网划分”的概念:即在子网划分之后,对划分后

的子网络进行进一步的划分,生成“子子网络”。

实施VLSM:
它的实施步骤跟子网划分没有什么两样,主要是强调一点:先通过子网划分满足最大网段,然后再在

子网络中满足小网段,如果有再小,再次划分……

它是子网划分的一个“动态”实现,即根据需求,子网掩码的向右延伸---子网划分在于一点,而

VLSM是一段!

四:(路由)汇总
对于子网划分,它是子网掩码的向右延伸,而汇总则是一个相反的过程---它是子网掩码的向左“压

缩”。汇总是路由协议中的一个工具,可以帮助动态路由协议解决很多问题,当然也有其他的一些负

面作用。
例如:192.168.1.0/26 192.168.1.64/26 192.168.1.128/26 192.168.1.192/26便可以通过一个与子

网划分相反的过程进行汇总,本例中可以汇总成192.168.1.0/24

CIDR---无类域间路由选择
对于路由选择协议来说,有时候像上面的路由汇总不是非常的精确,而对于路由协议来说,汇总路由

是一件非常谨慎的事情,也就是说,我们需要的不仅是路由汇总并且要高度的精确汇总---这个时候

,便有了CIDR,它是精确汇总的底层思维!
先简单的给CIDR一个定义:CIDR(超网)允许将路由汇总到类别边界的左边,也就是说,对于一般的

路由汇总,它们一般只汇总到向/8 /16 /24这样的类别边界的掩码,而没有进一步向左压缩;而CIDR

则不管这个限制,例如:192.168.0.0/24 192.168.1.0/24 192.168.2.0/24 192.168.3.0/24这几个

通过CIDR的向左压缩可以汇总为192.168.0.0/22--而这对于路由汇总是不可能的。所以它是路由汇总

的拓展,是精确汇总的思维。

实施技巧:对于CIDR的运用其实方法跟前面的子网掩码基本相同:把要汇总的ip地址写成二进制,然

后把他们所用相同的比特跳出来,看看相同比特有多少位---这便是我们要找的最终的子网掩码。
举个例子:192.168.5.64/28 192.168.5.80/28 192.168.5.96/28 192.168.5.112/28
由于前面三个字节分解出来的二进制肯定一样所以我们可以先不管;重点放在后面一个字节
先把一个字节全部开启,以方便后续的对比:
1     1  1  1  1  1  1  1
12864 32 16 8  4  2  1

0  1  0  0  0  0  0  0  ----64
0  1  0  1  0  0  0  0  ----80
0  1  1  0  0  0  0  0  ----96
0  1  1  1  0  0  0  0  ----112

这时我们便可以非常直观的发现,这四个网段的前两个高位比特是一致的,那么怎样用这个一致的比

特呢----依据刚才所说的,最终的掩码值便是全部相同比特的值,所以加上刚才我们没有分解出来的

前三个字节的二进制也就是有相同的24个比特,全部相同比特为24+2=26便是最终的掩码值了

所以我们最终得出这四个网段的汇总网络为:192.168.5.64/26
验证的过程即是子网划分的过程。


总结:不管是子网划分还是汇总,都不过是一些数字游戏罢了,最简单的方法便是最原始的方法,即

在本文中提出的“二进制法”---从原先ip地址的定义入手,本来ip地址便是32个比特,只是我们为

了好记把它们通过切块再进行按权展开求和法最后把他们表示成我们习惯的十进制,再自豪的冠以一

个名字叫"点分十进制";可是,当我们要对ip地址进行“手术”时,其实最原汁原味的方法便是重新

还原为原来的二进制方式,并且把每个比特看成两个状态---开启和关闭,这也是本文中特意强调的

一种思维方式也是最原始的二进制含义。当然,本文中对掩码的概念也加入一点:静态和动态的区别

----这在对比区分子网掩码,通配符掩码,前缀列表中的掩码也是非常重要的,具体区分在以后的文

章中可能会有提及。