作品相关 子网掩码概述
一、子网掩码概述
1、子网掩码的概念
子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
2、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与111不同,说明二者在不同的网络区域,要交换信息需要通过路由器。其子网上主机号各为1和252。
2、掩码的功用是说明有子网和有几个子网,但子网数只能表示为一个范围,不能确切讲具体几个子网,掩码不说明具体子网号。
二、划分子网的方法
子网的划分,实际上就是设计子网掩码的过程。子网掩码主要是用来区分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类地址。下面是针对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位,即子网数为26-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
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类为255.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_block
IP_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_block=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/Subnet_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、161~190及193~222,因此子网掩码为255.255.255.224,主机块共有6段,分别为211.134.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~12680~255.0~255.1~25424国家级
b128~191.0~255160~255.1~25416跨过组织
c192~223.0~255.0~255241~2548企业组织
随着互连网应用的不断扩大,原先的ipv4的弊端也逐渐暴露出来,即网络号占位太多,而主机号位太少,所以其能提供的主机地址也越来越稀缺,目前除了使用nat在企业内部利用保留地址自行分配以外,通常都对一个高类别的ip地址进行再划分,以形成多个子网,提供给不同规模的用户群使用。
这里主要是为了在网络分段情况下有效地利用ip地址,通过对主机号的高位部分取作为子网号,从通常的网络位界限中扩展或压缩子网掩码,用来创建某类地址的更多子网。但创建更多的子网时,在每个子网上的可用主机地址数目会比原先减少。
子网掩码是标志两个ip地址是否同属于一个子网的,也是32位二进制地址,其每一个为1代表该位是网络位,为0代表主机位。它和ip地址一样也是使用点式十进制来表示的。如果两个ip地址在子网掩码的按位与的计算下所得结果相同,即表明它们共属于同一子网中。
在计算子网掩码时,我们要注意ip地址中的保留地址,即“0”地址和广播地址,它们是指主机地址或网络地址全为“0”或“1”时的ip地址,它们代表着本网络地址和广播地址,一般是不能被计算在内的。
下面就来以实例来说明子网掩码的算法:
对于无须再划分成子网的ip地址来说,其子网掩码非常简单,即按照其定义即可写出:如某b类ip地址为10.12.3.0,无须再分割子网,则该ip地址的子网掩码为255.255.0.0。如果它是一个c类地址,则其子网掩码为255.255.255.0。其它类推,不再详述。下面我们关键要介绍的是一个ip地址,还需要将其高位主机位再作为划分出的子网网络号,剩下的是每个子网的主机号,这时该如何进行每个子网的掩码计算。
(一)、利用子网数来计算
在求子网掩码之前必须先搞清楚要划分的子网数目,以及每个子网内的所需主机数目。
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类ip地址168.195.0.0划分成若干子网,每个子网内有主机700台:
1、700=1010111100
2、该二进制为十位数,n=10
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地址所能划分出的所有子网,其划分后的主机和子网占位数,以及主机和子网的(最大)数目,注意要去掉保留的ip地址(即划分后有主机位或子网位全为“0”或全为“1”的):
a类ip地址:
子网位主机位子网掩码子网最大数主机最大数
222255.192.0.024194302
321255.224.0.062097150
420255.240.0.0141048574
519255.248.0.030524286
618255.252.0.062262142
717255.254.0.0126131070
816255.255.0.025465536
915255.255.128.051032766
1014255.255.192.0102216382
1113255.255.224.020468190
1212255.255.240.040944094
1311255.255.248.081902046
1410255.255.252.0163821022
159255.255.254.032766510
168255.255.255.065536254
177255.255.255.128131070126
186255.255.255.19226214262
195255.255.255.22452428630
204255.255.255.240104857414
213255.255.255.24820971506
222255.255.255.25241943022
b类ip地址:
子网位主机位子网掩码子网最大数主机最大数
214255.255.192.0216382
313255.255.224.068190
412255.255.240.0144094
511255.255.248.0302046
610255.255.252.0621022
79255.255.254.0126510
88255.255.255.0254254
97255.255.255.128510126
106255.255.255.192102262
115255.255.255.224204630
124255.255.255.240409414
133255.255.255.24881906
142255.255.255.252163822
c类ip地址:
子网位/主机位子网掩码子网最大数/主机最大数
2/6255.255.255.1922/62
3/5255.255.255.2246/30
4/4255.255.255.24014/14
5/3255.255.255.24830/6
6/2255.255.255.25262/2
八、子网掩码的用处之一
便于网络设备尽快地区分本网段地址和非本网段的地址。
例如:下图所示
主机A与主机B交互信息。
主机A:IP地址:202.183.58.11
子网掩码:255.255.255.0
路由地址:202.183.58.1
主机B:IP地址:202.183.56.5
子网掩码:255.255.255.0
路由地址:202.183.56.1
路由器从端口202.183.58.1接收到主机A发往主机B的IP数据报文后,
(1)首先用端口地址202.183.58.1与子网掩码地址255.255.255.0进行“逻辑与”,得到端口网段地址:202.183.58.0,
(2)然后将目的地址202.183.56.5与子网掩码地址255.255.255.0进行“逻辑与”,得202.183.56.0,
(3)将结果202.183.56.0与端口网段地址202.183.58.0比较,如果相同,则认为是本网段的,不予转发。如果不相同,则将该IP报文转发到端口202.183.56.1所对应的网段。
九、子网掩码的用处之二
将子网进一步划分,缩小子网的地址空间。将一个网段划分为多个子网段,便于网络管理。
例如:下图所示:
学校校园网信息中心可以将202.183.56.0(C类地址)分配给两个系,每个系约有120台计算机,则可以将子网掩码地址定义为:255.255.255.128
这样将原来的一个网段分成两个独立的子网段,便于网络管理。
系1的地址范围:202.183.56.1—202.183.56.126
子网地址:1100101010110111001110000xxxxxxx
系2的地址范围:202.183.56.129—202.183.56.254
子网地址:1100101010110111001110001xxxxxxx
十、子网掩码及其应用
在TCP/IP协议中,SUBNETMASKS(子网掩码)的作用是用来区分网络上的主机是否在同一网络取段内。在大型网络中,CLASSA的SUBNETMASKS为255.0.0.0,CLASSB的SUBNETMASKS为255.255.0.0,CLASSC的SUBNETMASKS为255.255.255.0。
假如某台主机的SUBNETMASKS为IP地址为202.119.115.78,它的SUBNETMASKS为255.255.255.0。将这两个数据作AND运算后,所得出的值中的非0的BYTE部分即为NETWORKID。运算步骤如下:
202.119.115.78的二进制值为:
11001010.01110111.01110011.01001110
255.255.255.0的二进制值为:
11111111.11111111.11111111.00000000
AND后的结果为:
11001010.01110111.01110011.00000000
转为二进制后即为:
202.119.115.0
它就是NETWORKID,在IP地址中剩下的即为HOSTID,即为78,这样当有另一台主机的IP地址为202.119.115.83,它的SUBNETMASKS也是255.255.255.0,则其NETWORKID为202.119.115,HOSTID为83,因为这两台主机的NETWORKID都是202.119.115,因此,这两台主机在同一网段内。
但是,在实际应用中,可能会有多个分布与各地的网络,而且,每个网络的主机数量并不很多,如果申请多个NETWORKID,会造成IP资源的浪费,而且很不经济,如果我们在SUBNETMASKS上动一下手脚,可以在只申请一个NETWORKID的基础上解决这个问题。
比如,我们有三个不同的子网,每个网络的HOST数量各为20、25和50,下面依次称为甲、乙和丙网,但只申请了一个NETWORKID就是202.119.115。首先我们把甲和乙网的SUBNETMASKS改为255.255.255.224,224的二进制为11100000,即它的SUBNETMASKS为:
11111111.11111111.11111111.11100000
这样,我们把HOSTID的高三位用来分割子网,这三位共有000、001、010、011、100、101、110、111八种组合,除去000(代表本身)和111(代表广播),还有六个组合,也就是可提供六个子网,它们的IP地址分别为:(前三个字节还是202.119.115)
00100001~00111110即33~62为第一个子网
01000001~01011110即65~94为第二个子网
01100001~01111110即97~126为第三个子网
10000001~10011110即129~158为第四个子网
10100001~10111110即161~190为第五个子网
11000001~11011110即193~222为第六个子网
选用161~190段给甲网,193~222段给乙网,因为各个子网都支持30台主机,足以应付甲网和乙网20台和25台的需求。
再来看丙网,由于丙网有50台主机,按上述分割方法无法满足它的IP需求,我们可以将它的SUBNETMASKS设为255.255.255.192,由于192的二进制值为11000000,按上述方法,它可以划分为两个子网,IP地址为:
01000001~01111110即65~126为第一个子网
10000001~10111110即129~190为第二个子网
这样每个子网有62个IP可用,将65~126分配丙网,多个子网用一个NETWORKID即告实现。
如果将子网掩码设置过大,也就是说子网范围扩大。那么根据子网寻径规则,很可能发往和本地机不在同一子网内的目的机的数据,会因为错误的相与结果而认为是在同一子网内,那么,数据包将在本子网内循环,直到超时并抛弃。数据不能正确到达目的机,导致网络传输错误。如果将子网掩码设置得过小,那么就会将本来属于同一子网内的机器之间的通信当做是跨子网传输,数据包都交给缺省网关处理,这样势必增加缺省网关的负担,造成网络效率下降。因此,任意设置子网掩码是不对的,应该根据网络管理部门的规定进行设置。
随着IP地址资源的日趋枯竭,可供分配的IP地址越来越少,往往一个拥有几百台计算机规模的网络只能得到区区几个IP地址,于是,许多人开始采用其他技术来扩展IP空间。
1.子网掩码设置
如果你所分配的IP地址仅能满足对主机的需求,但远不能满足你欲在局域网中再建若干子网的需要,设置子网掩码就是你不得不采取的措施了。
子网掩码同样也以四个字节来表示,用来区分IP地址的网络号和主机号,默认子网掩码如下表所示
子网掩码(以十进制表示)
A类255.0.0.0
B类255.255.0.0
C类255.255.255.0
当IP地址与子网掩码相与时,非零部分即被确认为网络号。
假如我们将子网掩码中第四字节最高位起的某些位由0修改成1,使本来应当属于主机号的部分改变成为网络号,这样就实现了我们划分子网的目的。例如你得到了一个C类网络地址198.189.98,按常规,你所有的设备从198.189.98.0到198.189.98.254都将处于同一网络之中,但如果你需要将自己的网络划分成5个子网以便管理,那就必须修改子网掩码255.255.255.0,将此掩码的第四个字节中的前三位再拿出来充当子网掩码,即将第四字节的00000000修改成11100000(十进制数为224),故应当将子网掩码设置为255.255.255.224。这样我们有001、010、011、100、101、110六种方式与之相与得到不同的网络号(除去000和111作为保留地址不能使用),各子网的前三个字节仍然是198.189.98。可以知道:如子网掩码的位数越多,能划分的子网数也就越多,但是每个子网的主机数就会越少。子网掩码的划分设置也有一个缺点:划分的子网越多,损失的IP地址也会越多。因为每个子网都会保留全0或全1的两个地址而不能使用。
2.动态IP地址设置
DHCP(DynamicHostConfigurationProtocol)动态主机配置协议是一种多个工作站共享IP地址的方法。当我们分配到的IP地址数目远小于一个网络工作站的数目时,如果为每个设备都分配一个固定的IP地址,则显然有一部分计算机将不能连入网络。DHCP为我们提供了一个较好的解决方法,其前提条件是其中每一个设备都不是随时都需要连接入网,并且同一时刻上网的设备不会很多。动态IP地址,顾名思义就是每一个设备所取得的IP地址是非固定的,即计算机连入网络时自动申请取得一个合法的IP地址,断开网络时自动归还,以便其他计算机使用。这样,我们可以用较少的IP地址构建较大的网络,也可以增加网络工作站的可移性,如果一台主机从一个子网移动到另一个子网时,由于网络号的不同将修改该计算机的IP地址,否则无法与其他主机通信,而如果我们采用动态IP地址,就会减少网络管理的复杂性。现在DHCP已非常流行,所支持的软件很多,且可以运行于不同机器和平台。目前拨号上Internet的用户就基本上采用这种方法。
3.非路由地址
在IP地址范围内,IANA(InternetAssignedNumbersAuthority)将一部分地址保留作为私人IP地址空间,专门用于内部局域网使用,这些地址如下表:
类IP地址范围网络数
A10.0.0.0---10.255.255.2551
B172.16.0.0---172.31.255.25516
C192.168.0.0---192.168.255.255255
这些地址是不会被Internet分配的,因此它们在Internet上也从来不会被路由,虽然它们不能直接和Internet网连接,但仍旧可以被用来和Internet通讯,我们可以根据需要来选用适当的地址类,在内部局域网中大胆地将这些地址当作公用IP地址一样地使用。在Internet上,那些不需要与Internet通讯的设备,如打印机、可管理集线器等也可以使用这些地址,以节省IP地址资源。
4.代理服务器
代理服务器其实是Internet上的一台主机设备,它有一个固定的IP地址,当你需要上Internet时,就向该服务器提出请求,代理服务器接受请求并为你建立连接,然后将你所需要的服务返回信息通知你,所有的数据信息和通讯处理都是通过代理服务器的IP地址来完成。这种情况下,我们局域网内部的主机就应使用非路由地址,这样,即能保证内部主机之间的通讯,又能拒绝外来网络的直接访问请求。
代理服务器具有以下两个优点:一是如果你请求的数据已被同一网段上的其他人请求过了,那么大多数代理服务器都能从Cache中调用这些数据直接传给你,避免重新连接的时间和带宽;二是代理服务器可以保护你的内部网络不受入侵,也可以设置对某些主机的访问能力进行必要限制,这实际上起着代理防火墙的作用。
支持代理服务器的软件也非常多,WinGate、MsProxy等都是非常流行的代理服务器软件。在中国,代理服务器的使用也越来越广泛,中国公众多媒体通讯网(169)其实就是一个巨大的使用代理服务器的例子。
5.地址翻译
所谓地址翻译实际上是路由器中的一个数据包处理过程。当数据包通过路由器时,地址翻译过程将其中的内部私有IP地址解析出来,将其翻译为一个合法的IP地址。地址翻译过程可以按预先定义好的地址表一一映射翻译,也可以将多个内部私有地址翻译为一个外部合法IP地址。由于网络内每个设备都有一个内部稳定的IP地址,所以这种方法具有较强的网络安全控制性能。
十一、用子网掩码实现多网共用网址
如果一个单位有多个分布在各地的网络,且每个网络的主机数量并不很多,那么申请多个网址(NETWORKID),不仅会造成IP地址的浪费,而且会使单位付出较大的经济代价。在这种情况下,可以使多个子网共用一个网址,以节省IP地址和资金,下面把我们单位使用子网掩码实现这个目的的过程介绍给大家。
(一)、情况介绍
我单位有三个位于不同地点的子网(以下称为甲、乙、丙网),各网络的主机数分别为20、25和50。且我单位已申请了一个网址为202119115。
(二)、解决过程
1、将甲网和乙网的子网掩码改为255255255224,其最高位224的二进制形式为11100000。
2、我们用子网掩码的高三位来分割子网,它共有000、001、010、011、100、101、110、111八种组合。除000(代表本身)和111(代表广播)外,还有六种组合,共可提供六个子网,它们分别为:(IP地址前三个字节还是202119115)
第一子网:00100001-00111110即33-62
第二子网:01000001-01011110即65-94
第三子网:01100001-01111110即97-126
第四子网:10000001-10011110即129-158
第五子网:10100001-10111110即161-190
第六子网:11000001-11011110即193-222
最后我们选第五子网给甲网,第六子网给乙网,因为各个子网都支持30台主机,所以选择的子网足以满足甲网和乙网20台和25台的需要。
3、丙网有50台主机,按上述分割方法无法满足它对IP地址的需要。这时,我们将它的子网掩码设成255255255192,由于192的二进制值为11000000,按上述方法,它可以划分为两个子网,分别为:
第一子网:01000001-01111110即65-126
第二子网:10000001-10111110即129-190
每个子网有62个IP地址可用,我们将第二子网分配给了丙网。
至此,实现了多个子网共用一个网址。