//获取广播地址
//在udp接收广播时,如果有多块网卡,会重复收包,
//所以udp发送广播时,最好指定直接的广播地址,不要用受限的广播地址255.255.255.255
unsigned int GetSubNetAddress(unsigned int ip,unsigned int netmask)
{
/*
IPv4广播地址的定义是网络地址(子网地址)与网络掩码逻辑“非”之间的逻辑“或”。
例如一个地址为:197.8.43.211,
其子网掩码为255.255.255.240,
则其网络地址为两者的二进制逻辑 "与 ",即197.8.43.208
网络掩码的逻辑 "非 "为0.0.0.15,与网络号码197.8.43.208 二进制逻辑 "或"的结果为
197.8.43.223,即该子网的广播地址.
IP有两种广播地址.
你的
直接广播地址:GetSubNetAddress
受限广播地址:255.255.255.255
*/
return (~netmask) | (ip&netmask);
}
《猪八戒夜战子网》
从培训中心出来,八戒闷闷不乐,低头不语,回到住处后也一声不吭的倒头便睡,悟空和沙僧不明就里,莫名其妙。沙僧更是纳闷:“自从上网络培训班取经以来,二师兄总是喜笑颜开,外了讨好漂亮的女班任更是一反常态地用功学习,今天到底是哪里不开心了呢?”悟空一摆手:“莫管他,呆子肯定是想回高老庄了”。
入夜时分,八戒悄悄地起来,到外屋点起灯,把《网络基础培训》教材打开,双手托腮,认真地看了起来:
“IP地址共32位,每8位为一个八位组,其中的第1个八位组决定了该地址的分类”
“为什么要用IP地址来表示网络主机呢,用网卡的MAC地址不是也可以吗”八戒心中刚刚涌起这个疑问便立刻想起了课堂上田中老师的话:“同一物理网络上的主机只有在它们相互知道对方的MAC地址的基础上才能通信,但是因为本地网卡的MAC地址和不同的网络类型有很大的关系,以太网,令牌环网,FDDI等等,为了使主机的网络地址与计算机硬件能够相对独立出来,以增强网络的路由选择能力,IP地址就在一定程度上代替了网卡的MAC地址”
原来如此!八戒暗暗点头,怪不得无论是安装windows还是linux,总是把TCP/IP协议自己安上,看来IP地址是我们上网的身份证呀!八戒接着向下看:
“IP地址有两部分组成:网络地址和主机地址,分配给两者的位数随地址类型的不同而变化,见下表:
地址类型 |
第一个八位组的模式 |
第一个八位组的取值范围 |
有效网络号 |
网络地址的总的个数 |
每个网络内的主机个数 |
A类 |
0xxxxxxx |
1-126 |
1.0.0.0-126.0.0.0 |
126 |
2^24-2 |
B类 |
10xxxxxx |
128-191 |
128.1.0.0-191.254.0.0 |
2^16-2 |
2^16-2 |
C类 |
110xxxxx |
192-223 |
192.0.1.0-223.255.254.0 |
2^21-2 |
254 |
D类 |
1110xxxx |
224-239 |
|
|
|
E类 |
1111xxxx |
240-254 |
|
|
|
这个表有什么用呢?也许只是告诉我们看到一个IP地址的第一个反应是知道它是属于哪一类的吧。八戒安慰着自己,又看到了下一个表格:保留地址,这个我可明白,八戒心想,有一些IP地址在实际运作中被保留起来代表一些特定的事物,往往不能用来表示某一台具体的主机,必须要学会看懂这些地址。
保留IP地址 |
用途 |
127.0.0.1 |
本地回环地址,用于测试本机的网络配置 |
0.0.0.0 |
在路由器上用来指定缺省路由 |
主机地址全为0 |
代表某一个子网,而不是具体的主机 |
主机地址全为1 |
代表某一个子网的广播地址 |
看来对于IP地址而言,概念上也不是很难理解,至少现在看到一个IP地址地址我知道它的基本信息了。八戒眨了眨猪眼,喝了一杯水,又翻到了下一页。
“子网化”
看到了这几个字,八戒的眉头开始皱了起来,今天课堂上,女老师用了三个小时,费尽口舌给大家讲的就是这个问题,子网到底如何计算?八戒可是越听越迷糊,等做题时看到200.16.10.0的时候头都疼了,老师讲解的10道例题一个也没弄懂,确实郁闷之极,但八戒转念一想:这是我上培训班遇到的第一个难题,难道我堂堂天蓬元帅会被几个数字难道吗?我一定能搞定的!八戒又睁大猪眼看了起来,不想有决心是一回事,看明白又是另外一回事。半个时辰下来,八戒看的头晕脑胀,眼冒金星,不由得气极败坏,甩掉书本,便欲发作……
就在这个时候,一片笑声从后面传来,八戒一回头,原来是悟空和沙僧,正在每人手持一串葡萄,边吃边看自己的窘态呢。八戒有点脸红,又有点不忿:看我这么辛苦,也不来帮忙,你们还是我的好兄弟呢?悟空却不理这个话茬,反而直接向八戒发问:
"为什么要划分子网?子网划分有什么意义?"
"这个..."一个问题就把八戒问住了,是啊,子网划分有什么用处呢?我还真不知道.悟空又接着说:"不正确了解子网的概念,不明白划分子网的道理就机械地去做题,把子网计算当作单纯的算术题.能不糊涂吗?差之毫厘,谬之千里也"一句话点醒梦中人!八戒仔细一想,还真是这个道理,吃掉了沙僧手里的葡萄,八戒渐渐地静下心来,开始向悟空虚心请教:"大师兄能不能给我讲讲呢?""其实也很简单"悟空回答道.
目前IP地址采用分类编址的缺点日益明显,最突出的问题就是IP地址不够用!确切的讲是B类地址不够用.因为A类地址可提供的主机地址数十分巨大,虽然其网络地址较少,但毕竟用得不是很多.C类地址可提供更多的网络地址数,但由于每个网络可以提供的主机地址数太少(254),往往不能满足需要.所以B类地址把大量的注册申请,造成地址资源紧张.比如,某个机构需要1000个IP地址,去申请B类地址,那么无论对IP地址,还是对这个机构,都是一种浪费.因此,我们必须对现有的IP地址进行合理的子网化.用书上的话说:就是(1)可以扩展网络。通过增加路由器、创建子网来扩展网络,以连接更多的计算机。(2)减少CPU的负载和占用贷款。一个网络内计算机越多,占用资源越多,发的广播越多,CPU处理这些广播所用资源越多。(3)便于管理,通过将大的网络划分称几个小的子网可以在某个子网内的硬件出现故障后不会影响整个网络,通过管理手段提高了网络的安全性,而且可以在不同的子网内使用不同的介质,好处多多"
"这么说,子网掩码就是这个作用了?"
"对,子网化就是通过从原先用于分配主机地址的位数中分出一部分位数来形成子网地址,减少了子网内主机地址的数目,但是多出了一些新的子网,而子网掩码的作用就是用于从IP地址中提取出整个网络地址部分(包括主网地址和子网地址).让我们知道这台主机到底处于哪一个子网中"
"既然如此,没有子网掩码的IP地址就不能算是一个真正有用的IP地址了,对吧?"八戒问道。
“是的,具体说来,我们要用IP地址和子网掩码作二进制的“与”运算,其结果就是这个IP的网络地址,举个例子吧”
IP地址: 11.16.10.1 子网掩码:255.0.0.0
先分别变成二进制
00001011.00010000.00001010.00000001
11111111.00000000.00000000.00000000
这两行进行了&运算的结果 00001011.00000000.00000000.00000000 这就是11.16.10.1的网络地址
八戒仔细的想了一下,好像明白了,又好像不明白.沙僧看出了这一点,"二师兄,老师说过了,多看一些例子就能理解了,我们必须先理论,后实践,再理论,再实践,多次反复才能进步"
悟空插嘴道"沙师弟,你给八戒讲一讲例题吧"
沙僧拿出一枝笔,边写边说:
“你首先要理解"全0全1原则",就是在主网地址,子网地址,主机地址中,全0全1的地址不可用.在做IP计算时必须要注意这一点,然后就可以动手了,我们先考虑C类地址的子网化计算方法”
对于任意一个C类地址和子网掩码,不妨设有X位用于子网化,剩余M位用于主机分配,我们有5个问题要问:
1, 确定该地址的类型,先定出主网地址和缺省子网掩码
2, 用出分配给子网的位数能产生多少个有效子网?
答案:2^X-2
3, 每个子网能提供多少个有效主机地址?
答案:2^M-2
4, 列出每个有效的子网?
答案:子网掩码从右到左,找到的一个非全0的组(设其为P)转换成十进制后去减256,得数就是第一个有效子网号, 第二个有效子网号=第一个有效子网号X2,依此类推,最后一个有效子网=P-第一个有效子网
5, 每个有效的子网的广播地址?
本子网的广播地址=相邻的下一个子网地址-1
6, 每个子网内有效的主机地址是什么?
本子网的第一个有效地址=本子网地址+1
例题1:IP:200.16.10.0,掩码:255.255.255.252
我们按照上面的6步来
1, C类地址,缺省子网掩码255.255.255.0
2, 252变为二进制11111100,用了6位划子网,则有62个子网
3, M=2,每个子网提供俩主机(少了点)
4, 256-252=4.则第一个子网:200.16.10.4 余下类推
5, 第一个子网的广播地址=200.16.10.7
6, 第一个子网的第一个有效地址=200.16.10.5
例题2:IP:200.16.10.0,掩码:255.255.255.224
我们按照上面的6步来
1, C类地址,缺省子网掩码255.255.255.0
2, 224变为二进制11100000,用了3位划子网,则有6个子网
3, M=5,每个子网提供30主机
4, 256-224=32,则第一个子网:200.16.10.32余下类推
5, 第一个子网的广播地址=200.16.10.63
6, 第一个子网的第一个有效地址=200.16.10.33
例题3:IP:200.16.10.0,掩码:255.255.255.240
1, C类地址,缺省子网掩码255.255.255.0
2, 240变为二进制11110000,用了4位划子网,则有14个子网
3, M=4,每个子网提供14个主机
4, 256-240=16,则第一个子网:200.16.10.16余下类推
5, 第一个子网的广播地址=200.16.10.31
6, 第一个子网的第一个有效地址=200.16.10.17
第一个子网的最后一个有效地址=200.16.10.30
例题4:IP:200.16.10.0,掩码:255.255.255.248
1, C类地址,缺省子网掩码255.255.255.0
2, 248变为二进制11111000,用了5位划子网,则有30个子网
3, M=3,每个子网提供6个主机
4, 256-248=8,则第一个子网:200.16.10.8余下类
5, 第一个子网的广播地址=200.16.10.15
6, 第一个子网的第一个有效地址=200.16.10.8
第一个子网的最后一个有效地址=200.16.10.14
“这样看来,对于一个C类地址来说,当子网掩码为255.255.255.240时,所能提供的主机地址数目是最多的,对吧?"八戒已经在作总结了."C类地址的计算还是很容易麽,因为能够借用来划分子网的位数就这么几个.
位数 掩码 子网 主机
2 255.255.255.192 2 62
3 255.255.255.224 6 30
4 255.255.255.240 14 14
5 255.255.255.248 30 6
6 255.255.255.252 62 2
到了现在,八戒终于明白一些了,不由得想自己来试验一下,悟空却装作不知道,说"既然八戒已经学会C类地址的计算.给他一个题目做做吧."说完,悟空就在纸上写了这样一个题目.IP:199.141.27.0.子网掩码255.255.255.240 请你选出下列地址中的有效的主机地址?
A. 199.141.27.33
B. 199.141.27.112
C. 199.141.27.119
D. 199.141.27.126
E. 199.141.27.175
F. 199.141.27.208
八戒不慌不忙,开始计算, 240转换为二进制是11110000,用了4位划分子网,则有效的子网数目2^4-2=14个.256-240=16,第一个有效的子网段199.141.27.16,第二个199.141.27.32,依此类推出所有网段:
199.141.27.16
199.141.27.32
199.141.27.48
199.141.27.64
199.141.27.80
199.141.27.96
199.141.27.112
199.141.27.128
199.141.27.144
199.141.27.160
199.141.27.176
199.141.27.192
199.141.27.208
199.141.27.224
真的是14个耶.八戒心中暗喜.经过对比和筛选,八戒发现:B是一个网段地址,E是199.141.27.176的广播地址,F也是网段地址,只有A,C,D才是有效的主机地址."二师兄果然厉害,一下子就作对了!"沙僧由衷的赞叹道.
“不忙,C类地址很容易的,B类的就不容易了,因为C类仅有一个八位组参与子网划分,而B类的选择要大得多,最多可以中14未参与划分子网,计算起来要注意.下面给出几个B类地址计算的例题,看看上面的5个问题是否还适用?
”
例题1:IP:172.16.0.0 子网掩码:255.255.192.0
1, B类地址,缺省子网掩码:255.255.0.0
2, 192变成二进制11000000,用了2位,则有2个有效子网
3, 14位用于主机地址,则每个子网的主机数(2^14-2)个
4, 256-192=64,则第一个子网172.16.64.0
5, 第一个子网的广播地址=172.16.127.255
6, 第一个子网的第一个有效地址=172.16.64.1
第一个子网的最后一个有效地址=172.16.127.254
"好像有一点不同吧",悟空笑道.
"确实如此,就是网络地址跨越两个八位组需要注意,其他的一样"八戒道:"让我自己来看下一道题吧
例题2:IP:172.16.0.0 子网掩码:255.255.254.0
1, B类地址,缺省子网掩码:255.255.0.0
2, 254变成二进制11111110,用了7位,则有126个子网
3, 9位用于主机地址,则每个子网的主机数(2^9-2)个
4, 256-254=2,则第一个子网172.16.2.0
5, 第一个子网的广播地址=172.16.3.255
6, 第一个子网的第一个有效地址=172.16.2.1
第一个子网的最后一个有效地址=172.16.3.254
例题3:IP:172.16.0.0 子网掩码:255.255.255.0"
1, B类地址,缺省子网掩码:255.255.0.0
2, 255变成二进制11111111,用了8位,则有254个子网
3, 8位用于主机地址,则每个子网的主机数(2^8-2)个
4, 256-255=1,则第一个子网172.16.1.0
5, 第一个子网的广播地址=172.16.1.255
6, 第一个子网的第一个有效地址=172.16.1.1
第一个子网的最后一个有效地址=172.16.1.254
例题4:IP:172.16.0.0 子网掩码:255.255.255.128
1, B类地址,缺省子网掩码:255.255.0.0
2, 255.128变成二进制11111111.10000000,用了9位,则有510个子网
3, 7位用于主机地址,则每个子网的主机数126个
4, 因为本题要涉及两个八位组,所以要分别计算,
对于第四个八位组,可能的子网有256-128=128.0;
对于第三个八位组,可能的子网有256-255=1,2,.....我们要对这两个结果进行排列组合,结论正好是510个子网,
第一个子网应该是172.16.0.128
第一个子网应该是172.16.1.0
5, 第一个子网的广播地址=172.16.0.255
6, 第一个子网的第一个有效地址=172.16.0.129
第一个子网的最后一个有效地址=172.16.0254
这最后一道例题看起来很复杂,八戒开始有一点糊涂,不明白子网的地址是如何计算来的,但是当八戒用二进制把子网掩码列出来时,再加上“全0全1原则”的运用,我们的老猪终于把这道题弄明白了。但当他高兴地抬起头来发出点感慨的时候,发现悟空和沙僧竟然不知道什么时候溜走了,更加令人奇怪的是,当八戒进到内室,竟然发现悟空和沙僧都睡得很熟的样子,好像从来没有起来过,而桌子上的葡萄还和昨天晚上摆放的一模一样,半点有没有动过……
《最传统的子网计算方法》
第二天的课程还是有关子网的计算,黑板上写着题目“传统的子网计算方法”漂亮的女老师用教鞭敲了敲黑板,开始说道:
“在这里的“传统”两个字只是表明这里的计算方法来自于思科出版的官方教材,之所以我们要把这种方法单独介绍一下,是因为这种教学方法相对来说更有循序渐进,有浅入深的味道。如果我们是一个从来接触过IP计算的初学者,用这种方法学习非常有效。因此,如果大家上次课没有听明白,可以结合本节理解一下。
我们的教材里面把IP计算分成了五个板块,用一种类似考试答题的形式一步一步地阐述IP计算。
1,给出IP地址和子网掩码,求所在子网号
2,给出IP地址和子网掩码,求所在子网的广播地址
3,给出IP地址和子网掩码,求子网的有效主机地址
4,给出网络号和子网掩码,求有效的子网
5,给出网络号和子网掩码,求子网数目和主机数目”
"好像和上节课差不多"八戒小声嘟囔道
"在每一个板块中,又分别用十进制和二进制作了IP计算的举例,下面我们就开始学习,因为大家对十进制和二进制之间的转换已经比较熟悉了,我们只看十进制的例子:"
来自各界的学生们开始正襟危坐,集中精神听讲,魔家四兄弟也把牌收了起来,拿出印有“菊花会员专用”字样的笔记本准备做笔记。
1, 给出IP地址和子网掩码,求所在子网号
第一种情况,无子网掩码,计算步骤如下:
Step 1 十进制写下IP地址
Step 2 根据网络类型,抄写网络地址
Step 3 剩下的部分补0
第二种情况,简单的子网掩码,计算步骤如下:
Step 1 十进制写下IP地址
Step 2 根据子网掩码,抄写网络地址
Step 3 剩下的部分补0
第三种情况,复杂的子网掩码,计算步骤如下:
Step 1 十进制写下IP地址
Step 2 十进制写下子网掩码
Step 3 检查子网掩码,如果有数值介于0和255之间的八位组,这就是复杂的子网掩码,该八位组被认为是“关键组“其他的三个八位组被认为是“无义组”,在这里写下“关键组的”位置(1-4)
Step 4 用256减去关键组的值,写出得数,我们称之“倍数”
Step 5 把所有关键组左边的无义组照抄
Step 6 把所有关键组左边的无义组填入0
Step 7 找到原始的IP地址中的关键组,计算每一个“倍数”的整数倍数的值,(0倍,1倍,2倍,…)找到这些值中和关键组的数值最相近的数(这个值必须小于关键组的值)。写在剩余的空白处
“这就是给出IP地址和子网掩码,求所在子网号的计算方法,前两种情况很简单,我们考试中常遇到的是第三种情况。步骤虽然很多,
但熟练了就能很快的完成,下面接着看”
2,给出IP地址和子网掩码,求子网的广播地址
第一种情况,无子网掩码或者简单子网掩码,计算步骤如下:
Step 1 十进制写下IP地址
Step 2 根据网络类型,照抄网络地址
Step 3 剩余的部分补0
第二种情况,复杂的子网掩码,计算步骤如下:
Step 1 十进制写下IP地址.
Step 2 十进制写下子网掩码
Step 3 检查子网掩码,如果有数值介于0和255之间的八位组,这就是复杂的子网掩码,该八位组被认为是“关键组“其他的三个八位组被认为是“无义组”,在这里写下“关键组的”位置(1-4)
Step 4 用256减去关键组的值,写出得数,我们称之“倍数”
Step 5 把所有关键组左边的无义组照抄
Step 6 把所有关键组左边的无义组填入255
Step 7 找到原始的IP地址中的关键组,计算每一个“倍数”的整数倍数的值,(0倍,1倍,2倍,…)找到这些值中比关键组的数值刚刚大一点的数。把这个数减去1写在剩余的空白处
“请大家注意区别计算子网地址和广播地址之间的不同之处,下面再看:”
3,给出IP地址和子网掩码,求子网的有效主机地址
“如果上面两个问题搞明白了,这个问题就很容易理解了,有效的主机地址自然是子网地址+1和广播地址-1之间的地址了,看图就可以了”
4,给出网络号和子网掩码,求有效的子网数目
“这个问题上节课讲过了,八戒能否复述一下?”田中老师问
“这有何难?子网掩码从右到左,找到的一个非全0的组(设其为P)转换成十进制后去减256,得数就是第一个有效子网号, 第二个有效子网号=第一个有效子网号X2,依此类推,最后一个有效子网=P-第一个有效子网。”猪八戒把昨天夜里学到的东西拿了出来。
“你能给大家举两个例子吗?”
“当然可以,请同学们看图:基本方法都是一样的,首先找到子网掩码中到底用了几位划分子网,计算出子网的数目之后,用256减
去关键组的数值第一个有效子网号,然后按倍数递增就行了”
“看来八戒同学对子网计算已经完全理解了。第五个问题你也来回答好吗?老师笑眯眯地对八戒说:
5,给出网络号和子网掩码,求子网数目和主机数目”
“这个问题最简单了”,八戒说道(底下的同学都伸长了耳朵)“假设在主机地址中用了X位划分子网,则有效的子网数目应该是2^M-2。每个有效的子网数目就是(主机地址位数-X)^2-2。”八戒很得意的样子
沙僧和悟空在下面领着同学们热烈鼓掌。
“下面我做一下总结”田中老师说道:“通过这两天的学习,大家对于子网划分方面的计算有了一个初步的认识,学到了一些基础知识,事实上划分子网的方法很多,我们每个人可以选择自己喜欢的方法,但一定要明白子网划分的作用,理解了概念才能深入地学习,否则以后面对真正的,包括许多不同种网络设备的环境,才能做到心中有数!明天我给大家介绍一些比较深入的子网概念,现在下课。”
今天放学后的八戒和昨天判若两人,高高兴兴的哼着“the answer is blowing in the wind”步履轻松地和师兄师弟向宿舍走去!
《有关子网的进一步学习》
田中老师今天穿了一件纯白色的绒衣,裙子外面是一件天蓝色的外套,这使的站在讲台上的她显得格外亭亭玉立!而站在她身边的那个猪嘴大耳的男学生也是一副很开心的样子,因为田中老师刚刚表扬了他,对于八戒同学“自己”总结出来的“IP知识一句话”表示了赞赏,并且一条条地念给了大家来听:
IP地址不能在没有相关的子网掩码的情况下存在。子网掩码定义了构成I P地址的3 2位中的多少位用于定义网络,或
者网络和相关的子网。
你可以通过借用主机地址位,而进一步将一个网络划分为子网,并用它们表示你的网络的一部分。
在一个划分了子网的网络中,每个地址包括一个网络地址,一个子网部分和主机地址。
在选择子网时,最主要的考虑就是你需要支持多少个子网。
一旦确定了合适的子网掩码,下一个挑战是确定每个子网的地址和每个子网上允许的主机地址范围。
无论何时,你为子网使用多于8位位组,则你将面对穿越8位位组边界的问题。
八戒回到座位上之后,把笔记本偷偷地还给了悟空,然后开始一起听讲
“同学们,前两节课我们详细的学习了有关子网的相关知识,今天来学习一些比较深入的知识”
“当一个子网掩码确定后,通常情况下该子网掩码在整个网络中就是固定的了,但由于在许多情况下,每个子网所包括的主机数目不一定相同。这种不变的子网掩码可能会出一些问题,比如说,在通常使用点对点连接方式的广域网里面,在一个由两个路由器之间用串口直接相连组成的子网A里,用255.255.255.252是最合适的。毕竟只需要两个地址就够了。但是这也意味着本网络内的其他子网也只能存在两个主机!这是不现实的。如果我们考虑使用子网掩码255.255.255.192,确实可以大大提高每个子网内的有效主机数目(62个)。但对于子网A来说,有60个地址被浪费了,我们进行子网化的目的就在于对网络地址的充分利用。那么能不能对一个划分出来的子网进行进一步的划分呢?也就是说,分割出“子网里面的子网”。答案就是我们今天要学习的第一个概念“可变长子网掩码”英文缩写为VLSM.,让我们举例说明,
现在对一个B类地址子网化:
172.16.0.0/16,先用255.255.255.0子网化一下,结果如下
172.16.1.0/24 172.16.2.0/24 …… 172.16.254.0/24 (254个)
下面我们再对这里面的第一个子网172.16.1.0/24用255.255.255.224子网化一下,结果如下
172.16.1.32/27 172.16.1.64/27 …… 172.16.1.192/27 (6个)
下面我们再对这里面的第一个子网172.16.1.32/27用255.255.255.252子网化一下,结果如下
172.16.1.36/30 172.16.1.40/30 …… 172.16.1.56/30 (6个)
从这个例子中可以看到,为了实现可变长子网掩码,首先使用一个合法的子网掩码将网络分割,接着再将第一级子网用一个更长的子网掩码进行进一步分割,最初的子网可以被不同的子网掩码分割,这就是“可变长”的概念。大家明白了吗?
听了田中老师的话,同学们反应不一,孙悟空,二郎神等一点就透,不用多说,八戒和沙僧则在纸上画出了许许多多的0和1,一番归纳也得出了自己的结论。而摩家四兄弟不等老师提问,就一个个站了起来.
魔里海:“可变长子网掩码的作用就是划分子网的子网”;
魔里红:“不同的子网可以用不同的子网掩码”;
魔里青:“不会浪费IP地址”;
魔里兽:“Good idea!”;
田中老师接着说:
下面的概念也是一种用来解决网络地址不够用的方法,我们称之为“超网”
假设一个机构需要1000个地址,那么如果申请一个B类地址,就会有许多地址被浪费,因为我们用不了这6万多个地址,但是如果去申请一个C类地址又不够用,这种情况下,超网的概念给出了这样的解决方法:首先分配给该机构4个连续的C类地址,如
200.16.16.0
200.16.17.0
200.16.18.0
200.16.19.0
如果我们采用C类地址默认的子网掩码255.255.255.0那么这就是4个独立的网段。但是如果我们用255.255.252.0作子网掩码,那么这4个网段就“合并”到了一起。完全可以当作一个网段来用!可见,超网在解决网络地址不够用的问题方面还是用一定作用的。
为了让大家更好地理解超网“合多为一”的功能,我们来看下图
如果ISP用户们的地址是从198.0.0.0到198.255.255.0,那么考虑一下那些和ISP相连的路由器中路由表的容量?这些路由器会不会为每一个ISP的用户建立一条单独的路由呢?根据我们的知识,答案当然是会,但是这些路由会占用多少空间呢?2^16个!确实太多。如果我们使用了超网。情况就会变得简单易懂:用198.0.0.0/8来代替所有以198开头的路由就行了。路由表变小了!换句话说。在CIDR中,地址根据网络拓扑来分配。连续的一组网络地址可以被分配给一个服务提供商,使整组地址作为一个网络地址。在我们的这个例子中:一个服务提供商被分配以256个C类地址,假设是从213.79.0.0到213.79.255.0,服务提供商给每个用户分配一个C类地址,但服务提供商外部的路由表只通过一个表项--掩码为255.255.0.0的网络213.79.0.0就可以分辨出这些路由,节省了许多空间。
这种方法明显减少了路由表的增长,CIDR RFC的作者估计,如果90%的服务提供商使用了CIDR,路由表将以每3年54%的速度增长,而如果没有使用CIDR,则增长速度为776%。如果可以重新组织现有的地址,则因特网骨干上的路由器广播的路由数量将大大减少。但这实际是不可行的,因为将带来巨大的管理负担。目前看来,王连网上的CIDR功不可没!
田中老师开始总结:同学们:
我们看到了,无论是可变长子网掩码,还是超网,其目的都是更有效地使用现有的网络资源。就是在这些方法的有效作用下,我们的互联网目前正在一天天地发展。有许许多多的新技术不断出现,我们每一个人都要充分利用现有的资源,多多学习,将来才有可能在机会到来的时候…..
“混上一碗饭吃!”八戒大声的插嘴道
底下静悄悄的,没有一个同学发笑….
“第一期的培训就到此为止,希望我们下次再见“田中老师面无表情,走出了教室…