子网掩码技术.docx
《子网掩码技术.docx》由会员分享,可在线阅读,更多相关《子网掩码技术.docx(33页珍藏版)》请在冰点文库上搜索。
子网掩码技术
什么是IP地址?
随着电脑技术的逐步普及和因特网技术的迅猛发展,学习因特网、利用因特网已不再是那些腰缠万贯的大款和戴者深度眼睛的专业技术人员的专利,它已作为二十一世纪人类的一种新的生活方式而逐步深入到寻常百姓家。
谈到因特网,IP地址就不能不提,因为无论是从学习还是使用因特网的角度来看,IP地址都是一个十分重要的概念,INTERNET的许多服务和特点都是通过IP地址体现出来的。
我们知道因特网是全世界范围内的计算机联为一体而构成的通信网络的总称。
联在某个网络上的两台计算机之间在相互通信时,在它们所传送的数据包里都会含有某些附加信息,这些附加信息就是发送数据的计算机的地址和接受数据的计算机的地址。
象这样,人们为了通信的方便给每一台计算机都事先分配一个类似我们日常生活中的电话号码一样的标识地址,该标识地址就是我们今天所要介绍的IP地址。
根据TCP/IP协议规定,IP地址是由32位二进制数组成,而且在INTERNET范围内是唯一的。
例如,某台联在因特网上的计算机的IP地址为:
11010010010010011000110000000010
很明显,这些数字对于人来说不太好记忆。
人们为了方便记忆,就将组成计算机的IP地址的32位二进制分成四段,每段8位,中间用小数点隔开,然后将每八位二进制转换成十进制数,这样上述计算机的IP地址就变成了:
210.73.140.2.
IP地址的分类
我们说过因特网是把全世界的无数个网络连接起来的一个庞大的网间网,每个网络中的计算机通过其自身的IP地址而被唯一标识的,据此我们也可以设想,在INTERNET上这个庞大的网间网中,每个网络也有自己的标识符。
这与我们日常生活中的电话号码很相像,例如有一个电话号码为0515163,这个号码中的前四位表示该电话是属于哪个地区的,后面的数字表示该地区的某个电话号码。
与上面的例子类似,我们把计算机的IP地址也分成两部分,分别为网络标识和主机标识。
同一个物理网络上的所有主机都用同一个网络标识,网络上的一个主机(包括网络上工作站、服务器和路由器等)都有一个主机标识与其对应?
IP地址的4个字节划分为2个部分,一部分用以标明具体的网络段,即网络标识;另一部分用以标明具体的节点,即主机标识,也就是说某个网络中的特定的计算机号码。
例如,盐城市信息网络中心的服务器的IP地址为210.73.140.2,对于该IP地址,我们可以把它分成网络标识和主机标识两部分,这样上述的IP地址就可以写成:
网络标识:
210.73.140.0
主机标识:
2
合起来写:
210.73.140.2
由于网络中包含的计算机有可能不一样多,有的网络可能含有较多的计算机,也有的网络包含较少的计算机,于是人们按照网络规模的大小,把32位地址信息设成三种定位的划分方式,这三种划分方法分别对应于A类、B类、C类IP地址。
1.A类IP地址
一个A类IP地址是指,在IP地址的四段号码中,第一段号码为网络号码,剩下的三段号码为本地计算机的号码。
如果用二进制表示IP地址的话,A类IP地址就由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”。
A类IP地址中网络的标识长度为7位,主机标识的长度为24位,A类网络地址数量较少,可以用于主机数达1600多万台的大型网络。
2.B类IP地址
一个B类IP地址是指,在IP地址的四段号码中,前两段号码为网络号码,B类IP地址就由2字节的网络地址和2字节主机地址组成,网络地址的最高位必须是“10”。
B类IP地址中网络的标识长度为14位,主机标识的长度为16位,B类网络地址适用于中等规模规模的网络,每个网络所能容纳的计算机数为6万多台。
3.C类IP地址
一个C类IP地址是指,在IP地址的四段号码中,前三段号码为网络号码,剩下的一段号码为本地计算机的号码。
如果用二进制表示IP地址的话,C类IP地址就由3字节的网络地址和1字节主机地址组成,网络地址的最高位必须是“110”。
C类IP地址中网络的标识长度为21位,主机标识的长度为8位,C类网络地址数量较多,适用于小规模的局域网络,每个网络最多只能包含254台计算机。
除了上面三种类型的IP地址外,还有几种特殊类型的IP地址,TCP/IP协议规定,凡IP地址中的第一个字节以“11110”开始的地址都叫多点广播地址。
因此,任何第一个字节大于223小于240的IP地址是多点广播地址;IP地址中的每一个字节都为0的地址(“0.0.0.0”)对应于当前主机;IP地址中的每一个字节都为1的IP地址(“255.255.255.255”)是当前子网的广播地址;IP地址中凡是以“11110”的地址都留着将来作为特殊用途使用;IP地址中不能以十进制“127”作为开头,127.1.1.1用于回路测试,同时网络ID的第一个6位组也不能全置为“0”,全“0”表示本地网络。
IP地址的寻址规则
1.网络寻址规则
A、网络地址必须唯一。
B、网络标识不能以数字127开头。
在A类地址中,数字127保留给内部回送函数。
C、网络标识的第一个字节不能为255。
数字255作为广播地址。
D、网络标识的第一个字节不能为“0”,“0”表示该地址是本地主机,不能传送。
2.主机寻址规则
A、主机标识在同一网络内必须是唯一的。
B、主机标识的各个位不能都为“1”,如果所有位都为“1”,则该机地址是广播地址,而非主机的地址。
C、主机标识的各个位不能都为“0”,如果各个位都为“0”,则表示“只有这个网络”,而这个网络上没有任何主机。
子网掩码概述
1.子网掩码的概念
子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
2.确定子网掩码数
用于子网掩码的位数决定于可能的子网数目和每个子网的主机数目。
在定义子网掩码前,必须弄清楚本来使用的子网数和主机数目。
定义子网掩码的步骤为:
A、确定哪些组地址归我们使用。
比如我们申请到的网络号为“210.73.a.b”,该网络地址为c类IP地址,网络标识为“210.73”,主机标识为“a.b”。
B、根据我们现在所需的子网数以及将来可能扩充到的子网数,用宿主机的一些位来定义子网掩码。
比如我们现在需要12个子网,将来可能需要16个。
用第三个字节的前四位确定子网掩码。
前四位都置为“1”,即第三个字节为“11110000”,这个数我们暂且称作新的二进制子网掩码。
C、把对应初始网络的各个位都置为“1”,即前两个字节都置为“1”,第四个字节都置为“0”,则子网掩码的间断二进制形式为:
“11111111.11111111.11110000.00000000”
D、把这个数转化为间断十进制形式为:
“255.255.240.0”
这个数为该网络的子网掩码。
3.IP掩码的标注
A、无子网的标注法
对无子网的IP地址,可写成主机号为0的掩码。
如IP地址210.73.140.5,掩码为255.255.255.0,也可以缺省掩码,只写IP地址。
B、有子网的标注法
有子网时,一定要二者配对出现。
以C类地址为例。
1.IP地址中的前3个字节表示网络号,后一个字节既表明子网号,又说明主机号,还说明两个IP地址是否属于一个网段。
如果属于同一网络区间,这两个地址间的信息交换就不通过路由器。
如果不属同一网络区间,也就是子网号不同,两个地址的信息交换就要通过路由器进行。
例如:
对于IP地址为210.73.140.5的主机来说,其主机标识为00000101,对于IP地址为210.73.140.16的主机来说它的主机标识为00010000,以上两个主机标识的前面三位全是000,说明这两个IP地址在同一个网络区域中,这两台主机在交换信息时不需要通过路由器进行10.73.60.1的主机标识为00000001,210.73.60.252的主机标识为11111100,这两个主机标识的前面三位000与011不同,说明二者在不同的网络区域,要交换信息需要通过路由器。
其子网上主机号各为1和252。
2.掩码的功用是说明有子网和有几个子网,但子网数只能表示为一个范围,不能确切讲具体几个子网,掩码不说明具体子网号,有子网的掩码格式(对C类地址)。
划分子网的方法
子网的划分,实际上就是设计于网掩码的过程。
子网掩码主要是用来区分IP地址中的网络ID和主机ID,它用来屏蔽IP地址的一部分,从IP地址中分离出网络ID和主机ID.子网掩码是由4个十进制数组成的数值"中间用"。
"分隔,如255.255.255.0。
若将它写成二进制的形式为:
11111111.11111111.11111111.00000000,其中为"1"的位分离出网络ID,为"0"的位分离出主机ID,也就是通过将IP地址与子网掩码进行"与"逻辑操作,得出网络号。
例如,假设IP地址为192.160.4.1,子网掩码为255.255.255.0,则网络ID为192.160.4.0,主机ID为0.0.0.1。
计算机网络ID的不同,则说明他们不在同一个物理子网内,需通过路由器转发才能进行数据交换。
每类地址具有默认的子网掩码:
对于A类为255.0.0.0,对于B类为255.255.0.0,对于C类为255.255.255.0。
除了使用上述的表示方法之外,还有使用于网掩码中"1"的位数来表示的,在默认情况下,A类地址为8位,B类地址为16位,C类地址为24位。
例如,A类的某个地址为12.10.10.3/8,这里的最后一个"8"说明该地址的子网掩码为8位,而199.42.26.0/28表示网络199.42.26。
0的子网掩码位数有28位。
如果希望在一个网络中建立子网,就要在这个默认的于网掩码中加入一些位,它减少了用于主机地址的位数。
加入到掩码中的位数决定了可以配置的于网。
因而,在一个划分了子网的网络中,每个地址包含一个网络地址、一个子网位数和一个主机地址,如图1所示。
在图1中,子网位来自主机地址的最高相邻位,并从一个8位的位组边界开始,因为默认的子网掩码总是在8位位组的边界处结束。
随着主机位中加入于网位的增加,我们可以从左到右计数,并用和它们位置相关的值。
将它们转换为十进制。
图1:
从每个主机位加入的子网位中,得到子网的对应十进制数,总结在表1中
表1:
下面举例说明,使用没有子网的子网掩码和使用于网的子网掩码的区别。
若有二个B类IP地址172.16.2.160,其默认的子网掩码是255.255.0.0,则完成下面任务
若不使用子网,即只使用默认的子网掩码,其运算过程如图2所示。
若使用8位子网位,则其运算过程如图3所示。
注意:
在图3中,使用了8位子网位,其子网掩码值从默认的255.255.0.0转变为255.255.255.0,从而使逻辑"与"之后的网络号发生了变化。
图2:
图3:
子网掩码的简便算法
举例说明该算法。
例:
给定一classcaddress:
192.168.5.0,要求划分20个子网,每个子网5个主机。
解:
因为4<5<8,用256-8=248――>即是所求的子网掩码,对应的子网数也就出来了。
这是针对C类地址。
老师也只讲了针对C类地址的做法。
下面是我自己推出来的针对B类地址的做法。
对于B类地址,假如主机数小于或等于254,与C类地址算法相同。
对于主机数大于254的,如需主机700台,50个子网(相当大了),
512<700<1024
256-(1024/256)=256-4=252――>即是所求的子网掩码,对应的子网数也就出来了。
上面256-4中的4(2的2次幂)是指主机数用2进制表示时超过8位的位数,即超过
2位,掩码为剩余的前6位,即子网数为2(6)-2=62个。
欢迎指正。
Append:
Host/SubnetQuantitiesTable
子网掩码的算法
一、利用子网数来计算
在求子网掩码之前必须先搞清楚要划分的子网数目,以及每个子网内的所需主机数目。
1)将子网数目转化为二进制来表示
2)取得该二进制的位数,为N
3)取得该IP地址的类子网掩码,将其主机地址部分的的前N位置1即得出该IP地址划分子网的子网掩码。
如欲将B类IP地址168.195.0.0划分成27个子网:
1)27=11011
2)该二进制为五位数,N=5
3)将B类地址的子网掩码255.255.0.0的主机地址前5位置1,得到255.255.248.0
即为划分成27个子网的B类IP地址168.195.0.0的子网掩码。
二、利用主机数来计算
1)将主机数目转化为二进制来表示
2)如果主机数小于或等于254(注意去掉保留的两个IP地址),则取得该主机的二进制位数,为N,这里肯定N<8。
如果大于254,则N>8,这就是说主机地址将占据不止8位。
3)使用255.255.255.255来将该类IP地址的主机地址位数全部置1,然后从后向前的将N位全部置为0,即为子网掩码值。
如欲将B(c)类IP地址168.195.0.0划分成若干子网,每个子网内有主机700台(17):
1)700=1010111100
2)该二进制为十位数,N=10(1001)
3)将该B类地址的子网掩码255.255.0.0的主机地址全部置1,得到255.255.255.255
然后再从后向前将后10位置0,即为:
11111111.11111111.11111100.00000000
即255.255.252.0。
这就是该欲划分成主机为700台的B类IP地址168.195.0.0的子网掩码。
快速计算子网掩码和主机块
----业务的发展常常会导致许多单位面临这样一个问题:
工作站数量越来越多,管理
单一的大型网络也变得越来越艰难。
如果将一个单一的大型网络划分为多个子网,通过
对每个子网进行单独管理,可以明显地提高整个网络的性能。
----要划分子网就需要计算子网掩码和分配相应的主机块,尽管采用二进制计算可以得
出相应的结论,但如果采用十进制计算方法,计算起来更为简便。
经过长期实践与经验
积累,笔者总结出子网掩码及主机块的十进制算法。
一、明确概念
----在介绍十进制算法前我们先要明确一些概念。
类范围:
IP地址常采用点分十进制表示方法X.Y.Y.Y,在这里,X在1~126范围内称为A类
地址;X在128~191范围内称为B类地址;X在192~223范围内称为C类地址。
比如10.202
.52.130,因为X为10,在1~126范围内,所以称为A类地址。
类默认子网掩码:
A类为255.0.0.0;B类为255.255.0.0;C类为255.255.255.0。
当我
们要划分子网用到子网掩码M时,类子网掩码的格式如下:
A类为255.M.0.0,B类为25
5.255.M.0,C类为255.255.255.M。
M是相应的子网掩码,比如255.255.255.240。
十进制计算基数是256(下面,我们所有的十进制计算都要用256来进行)。
二、变量说明
----1.Subnet_block指可分配子网块大小,表示在某一子网掩码下子网的块数。
----2.Subnet_num是可分配子网数,指可分配子网块中要剔除首、尾两块,是某一子
网掩码下可分配的实际子网数量。
Subnet_num=Subnet_block-2。
----3.IP_block指每个子网可分配的IP地址块大小。
----4.IP_num指每个子网实际可分配的IP地址数。
因为每个子网的首、尾IP地址必须
保留(一个为网络地址,一个为广播地址),所以它等于IP_block-2,IP_num也用于计
算主机块。
----5.M指子网掩码。
----表示上述变量关系的公式如下:
----M=256-IP_blockIP_block=256/Subnet_block或Subnet_block=256/IP_blockIP
_num=IP_block-2Subnet_num=Subnet_block-2。
----6.2的幂数。
大家要熟练掌握28(256)以内的2的幂代表的十进制数(如128=27、
64=26等),这样可以使我们立即推算出Subnet_block和IP_block的数目。
三、举例说明
----现在,通过举一些实际例子,大家可以对子网掩码和主机块的十进制算法有深刻的
了解。
----1.已知所需子网数12,求实际子网数。
----这里实际子网数指Subnet_num,由于12最接近2的幂为16(24),即Subnet_block
=16,那么Subnet_num=16-2=14,故实际子网数为14。
----2.已知一个B类子网的每个子网主机数要达到60×255个(约相当于X.Y.0.1~X.Y.
59.254的数量),求子网掩码。
----首先,60接近2的幂为64(26),即IP_block=64;其次,子网掩码M=256-IP_blo
ck=256-64=192,最后由子网掩码格式B类是255.255.M.0得出子网掩码为255.255.192.
0。
----3.如果所需子网数为7,求子网掩码。
----7最接近2的幂为8,但8个Subnet_block因为要保留首、尾2个子网块,即8-2=6<
7,并不能达到所需子网数,所以应取2的幂为16,即Subnet_block=16。
因为IP_block
=256/Subnet_block=256/16=16,所以子网掩码M=256-IP_block=256-16=240。
----4.已知网络地址为211.134.12.0,要有4个子网,求子网掩码及主机块。
----由于211.Y.Y.Y是一个C类网,子网掩码格式为255.255.255.M,又知有4个子网,4
接近2的幂是8(23),所以Subnet_block=8,Subnet_num=8-2=6,IP_block=256/Subn
et_block=256/8=32,子网掩码M=256-IP_block=256-32=224,故子网掩码表示为255.
255.255.224。
又因为子网块的首、尾两块不能使用,所以可分配6个子网,每个子网有
32个可分配主机块,即32~63、64~95、96~127、128~159、160~191、192~223,其
中首块(0~31)和尾块(224~255)不能使用。
----由于每个子网块中的可分配主机块又有首、尾两个不能使用(一个是子网网络地址
,一个是子网广播地址),所以主机块分别为33~62、65~94、97~126、129~158、1
61~190及193~222,因此子网掩码为255.255.255.224,主机块共有6段,分别为211.1
34.12.33~211.134.12.62、211.134.12.65~211.134.12.94、211.134.12.97~211.134
.12.126、211.134.12.129~211.134.12.158、211.134.12.161~211.134.12.190及211
.134.12.193~211.134.12.222。
用户可以任选其中的4段作为4个子网。
----总之,只要理解了公式中的逻辑关系,就能很快计算出子网掩码,并得出可分配的
主机块。
子网的计算
在思科网络技术学院CCNA教学和考试当中,不少同学在进行IP地址规划时总是很头疼子网和掩码的计算。
现在给大家一个小窍门,可以顺利解决这个问题。
首先,我们看一个CCNA考试中常见的题型:
一个主机的IP地址是202.112.14.137,掩码是255.255.255.224,要求计算这个主机所在网络的网络地址和广播地址。
常规办法是把这个主机地址和子网掩码都换算成二进制数,两者进行逻辑与运算后即可得到网络地址。
其实大家只要仔细想想,可以得到另一个方法:
255.255.255.224的掩码所容纳的IP地址有256-224=32个(包括网络地址和广播地址),那么具有这种掩码的网络地址一定是32的倍数。
而网络地址是子网IP地址的开始,广播地址是结束,可使用的主机地址在这个范围内,因此略小于137而又是32的倍数的只有128,所以得出网络地址是202.112.14.128。
而广播地址就是下一个网络的网络地址减1。
而下一个32的倍数是160,因此可以得到广播地址为202.112.14.159。
可参照下图来理解本例。
CCNA考试中,还有一种题型,要你根据每个网络的主机数量进行子网地址的规划和计算子网掩码。
这也可按上述原则进行计算。
比如一个子网有10台主机,那么对于这个子网需要的IP地址是:
10+1+1+1=13
注意:
加的第一个1是指这个网络连接时所需的网关地址,接着的两个1分别是指网络地址和广播地址。
因为13小于16(16等于2的4次方),所以主机位为4位。
而
256-16=240
所以该子网掩码为255.255.255.240。
如果一个子网有14台主机,不少同学常犯的错误是:
依然分配具有16个地址空间的子网,而忘记了给网关分配地址。
这样就错误了,因为:
14+1+1+1=17
17大于16,所以我们只能分配具有32个地址(32等于2的5次方)空间的子网。
这时子网掩码为:
255.255.255.224。
子网掩码的两种简便算法
ip地址是32位的二进制数值,用于在tcp/ip通讯协议中标记每台计算机的地址。
通常我们使用点式十进制来表示,如192.168.0.5等等。
每个ip地址又可分为两部分。
即网络号部分和主机号部分:
网络号表示其所属的网络段编号,主机号则表示该网段中该主机的地址编号。
按照网络规模的大小,ip地址可以分为a、b、c、d、e五类,其中a、b、c类是三种主要的类型地址,d类专供多目传送用的多目地址,e类用于扩展备用地址。
a、b、c三类ip地址有效范围如下表:
类别网络号/占位数主机号/占位数用途
a1~126/80~2550~2551~254/24国家级
b128~1910~255/160~2551~254/16跨过组织
c192~2230~2550~255/241~254/8企业组织
随着互连网应用的不断扩大,原先的ipv4的弊端也逐渐暴露出来,即网络号占位太多,而主机号位太少,所以其能提供的主机地址也越来越稀缺,目前除了使用nat在企业内部利用保留地址自行分配以外,通常都对一个高类别的ip地址进行再划分,以形成多个子