admin管理员组

文章数量:1530912

2024年1月7日发(作者:)

为了提高IP地址的使用效率,引入了子网的概念。将一个网络划分为子网:采用借位的方式,从主机位最高位开始借位变为新的子网位,所剩余的部分则仍为主机位。这使得IP地址的结构分为三级地址结构:网络位、子网位和主机位。这种层次结构便于IP地址分配和管理。它的使用关键在于选择合适的层次结构--如何既能适应各种现实的物理网络规模,又能充分地利用IP地址空间(即:从何处分隔子网号和主机号)。

子网掩码的作用

简单地来说,掩码用于说明子网域在一个IP地址中的位置。子网掩码主要用于说明如何进行子网的划分。掩码是由32位组成的,很像IP地址。对于三类IP地址来说,有一些自然的或缺省的固定掩码。

如何来确定子网地址

如果此时有一个I P地址和子网掩码,就能够确定设备所在的子网。子网掩码和IP地址一样长,用32bit组成,其中的1表示在IP地址中对应的网络号和子网号对应比特,0表示在IP地址中的主机号对应的比特。将子网掩码与IP地址逐位相“与”,得全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来进行。

几个公式变量的说明:

Subnet_block:可分配子网块大小,指在某一子网掩码下的子网的块数。

Subnet_num:实际可分配子网数,指可分配子网块中要剔除首、尾两块,这是某一子网掩码下可分配的实际子网数量,它等于Subnet_block-2。

IP_block:每个子网可分配的IP地址块大小。

IP_num:每个子网实际可分配的IP地址数,因为每个子网的首、尾IP地址必须保留(一个为网络地址,一个为广播地址),所以它等于IP_block-2,IP_num也用于计算主机段

M:子网掩码(net mask)。

它们之间的公式如下:

M=256-IP_block

IP_block=256/Subnet_block,反之Subnet_block=256/IP_block

IP_num=IP_block-2

Subnet_num=Subnet_block-2

2的冥数:要熟练掌握2^8(256)以内的2的冥代表的十进制数,如128=2^7、64=2^6…,这可使我们立即推算出Subnet_block和IP_block数。

现在我们举一些例子:

一、 已知所需子网数12,求实际子网数

解:这里实际子网数指Subnet_num,由于12最接近2的冥为16(2^4),即 Subnet_block=16,那么Subnet_num=16-2=14,故实际子网数为14。

二、 已知一个B类子网每个子网主机数要达到60x255(约相当于X.Y.0.1--X.Y.59.254的数量)个,求子网掩码。

解:1、60接近2的冥为64(2^6),即,IP_block=64

2、子网掩码M=256-IP_block

=256-64=192

3、子网掩码格式B类是:255.255.M.0.

所以子网掩码为:255.255.192.0

三、 如果所需子网数为7,求子网掩码 (仔细看这里,和我们考试的差不多)

解:1、7最接近2的冥为8,但8个Subnet_block因为要保留首、尾2个子网块,即 8-2=6<7,并不能达到所需子网数,所以应取2的冥为16,即Subnet_block=16

2、IP_block=256/Subnet_block=256/16=16

3、子网掩码M=256-IP_block=256-16=240。

四、 已知网络地址为211.134.12.0,要有4个子网,求子网掩码及主机段。

解:1、是一个C类网,子网掩码格式为255.255.255.M

2、4个子网,4接近2的冥是8(2^3),所以Subnet_block=8

Subnet_num=8-2=6

3、IP_block=256/Subnet_block=256/8=32

4、子网掩码M=256-IP_block=256-32=224

5、所以子网掩码表示为255.255.255.224

6、因为子网块(Subnet_block)的首、尾两块不能使用,所以可分配6个子网块(Subnet_num),每块32个可分配主机块(IP_block)

即:32-63、64-95、96-127、128-159、160-191、192-223

首块(0-31)和尾块(224-255)不能使用

7、每个子网块中的可分配主机块又有首、尾两个不能使用(一个是子网网络地址,一个 是子网广播地址),所以主机段分别为:

33-62、65-94、97-126、129-158、161-190、193-222

8、所以子网掩码为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个子网。

子网掩码 子网掩码(subnet mask)是每个网管必须要掌握的基础知识,只有掌握它,才能够真正理解TCP/IP协议的设置。以下我们就来深入浅出地讲解什么是子网掩码。

IP地址的结构

要想理解什么是子网掩码,就不能不了解IP地址的构成。互联网是由许多小型网络构成的,每个网络上都有许多主机,这样便构成了一个有层次的结构。IP地址在设计时就考虑到地址分配的层次特点,将每个IP地址都分割成网络号和主机号两部分,以便于IP地址的寻址操作。

IP地址的网络号和主机号各是多少位呢?如果不指定,就不知道哪些位是网络号、哪些是主机号,这就需要通过子网掩码来实现。

子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。

子网掩码的设定必须遵循一定的规则。与IP地址相同,子网掩码的长度也是32位,左边是网络位,用二进制数字“1”表示;右边是主机位,用二进制数字“0”表示。只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,使网络正常工作。

子网掩码的术语是扩展的网络前缀码不是一个地址,但是可以确定一个网络层地址哪一部分是网络号,哪一部分是主机号,1 的部分代表网络号,掩码为 0的部分代表主机号。子网掩码的作用就是获取主机 IP的网络地址信息,用于区别主机通信不同情况,由此选择不同路。其中 A类地址的默认子网掩码为 255.0.0.0;B类地址的默认子网掩码为 255.255.0.0;C类地址的默认子网掩码为:255.255.255.0。

如何通过子网掩码来确定网络号或者网络地址?

通过 IP 地址的二进制与子网掩码的二进制进行与运算进行定某个设备的网络地址,

也就是说通过子网掩码分辨一个网络的网络部分和主机部分子网掩码一旦设置,网络地址和主机地址就固定了。

相对于使用子网掩码来识别网络地址,早期的使用类别进行网络地址的分类存在着地址大量浪费的不足。

子网一个最显著的特征就是具有子网掩码。与IP地址相同,子网掩码的长度也是32位,也可以使用十进制的形式。例如,为二进制形式的子网掩码:1100000000,采用十进制的形式为:255.255.255.0。

1.子网掩码的概念

子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。

2.确定子网掩码数

用于子网掩码的位数决定于可能的子网数目和每个子网的主机数目。在定义子网掩码前,必须弄清楚本来使用的子网数和主机数目。

定义子网掩码的步骤为:

A、确定哪些组地址归我们使用。比如我们申请到的网络号为 “210.73.a.b”,该网络地址为C类IP地址,网络标识为“210.73”,主机标识为“a.b”。

B、根据我们现在所需的子网数以及将来可能扩充到的子网数,用宿主机的一些位来定义子网掩码。比如我们现在需要12个子网,将来可能需要16个。用第三个字节的前四位确定子网掩码。前四位都置为“1”(即把第三字节的最后四位作为主机位,其实在这里有个简单的规律,非网络位的前几位置1原网络就被分为2的几次方个网络,这样原来网络就被分成了2的4次方16个子网),即第三个字节为“11110000”,这个数我们暂且称作新的二进制子网掩码。

C、把对应初始网络的各个位都置为“1”,即前两个字节都置为“1”,第四个字节都置为“0”,则子网掩码的间断二进制形式为:“11111111.11111111.11110000.00000000”

D、把这个数转化为间断十进制形式为:“255.255.240.0”

这个数为该网络的子网掩码。

掩码的标注

A、无子网的标注法

对无子网的IP地址,可写成主机号为0的掩码。如IP地址210.73.140.5,掩码为255.255.255.0,也可以缺省掩码,只写IP地址。

B、有子网的标注法

有子网时,一定要二者配对出现。以C类地址为例。

地址中的前3个字节表示网络号,后一个字节既表明子网号,又说明主机号,还说明两个IP地址是否属于同一个网段。如果属于同一网络区间,这两个地址间的信息交换就不通过路由器。如果不属同一网络区间,也就是子网号不同,两个地址的信息交换就要通过路由器进行。例如:对于IP地址为210.73.140.5的主机来说,其主机标识为00000101,对于IP地址为210.73.140.16的主机来说它的主机标识为00010000,以上两个主机标识的前面三位全是000,说明这两个IP地址在同一个网络区域中,这两台主机在交换信息时不需要通过路由器进行。210.73.60.1的主机标识为00000001,210.73.60.252的主机标识为11111100,这两个主机标识的前面三位000与111不同,说明二者在不同的网络区域,要交换信息需要通过路由器。其子网上主机号各为1和252。

2.掩码的功用是说明有子网和有几个子网,但子网数只能表示为一个范围,不能确切讲具体几个子网,掩码不说明具体子网号,有子网的掩码格式(对C类地址)。

子网掩码的表示方法

子网掩码通常有以下2种格式的表示方法:

1. 通过与IP地址格式相同的点分十进制表示

如:255.0.0.0 或 255.255.255.128

2. 在IP地址后加上"/"符号以及1-32的数字,其中1-32的数字表示子网掩码中网络标识位的长度

如:192.168.1.1/24 的子网掩码也可以表示为 255.255.255.0

子网掩码和ip地址的关系

注意这讲的都是有类网!

子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。

最为简单的理解就是两台计算机各自的IP地址与子网掩码进行AND运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。就这么简单。

子网掩码的简便算法

举例说明该算法。

例:给定一 class c address : 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个。

本文标签: 子网IP地址网络