网络-IP子网划分

目录:

一、简介
二、划分方法
1、示例
1)计算方法         2)同一网段           3)B类地址
2、划分示例
1)C类地址例子    2)B类地址例子1    3)B类地址例子2
4)Variable Length Subnet Masks(VLSM)    5)网络中子网位数、子网数和主机数计算总结

IP子网划分实际上就是设计子网掩码的过程。


一、简介

IP和子网掩码\

我们都知道,IP是由四段数字组成,在此先来了解一下3类常用的IP。

A类IP段 1.0.0.0 到126.255.255.255 (0段和127段不使用,127.0.0.1是环回测试用的固定的特殊IP)

B类IP段 128.0.0.0 到191.255.255.255

C类IP段 192.0.0.0 到223.255.255.255

XP默认分配的子网掩码每段只有255或0

A类的默认子网掩码 255.0.0.0 一个子网最多可以容纳1677万(2^24-2=16777214)多台电脑

B类的默认子网掩码 255.255.0.0 一个子网最多可以容纳6万(2^16-2=65534)台电脑

C类的默认子网掩码 255.255.255.0 一个子网最多可以容纳254(2^8-2=254)台电脑

这里减2的原因是主机地址全0表示“本主机”所连接到的单个网络地址,而全1表示“所有”,即该网络上所有主机。

我们必须有一个子网掩码,因为:

1)当配置IP时,所有计算机都必须填写子网掩码

2)我们必须在我们的网络中设置一些逻辑边界

3)我们必须至少输入所使用IP类的默认子网掩码

以前认为,要想把一些电脑搞在同一网段,只要IP的前三段一样就可以了,今天,我才知道我错了。如果照我这样说的话,一个子网就只能容纳254台电脑?真是有点笑话。我们来说详细看看吧。

要想在同一网段,只要网络标识相同就可以了那要怎么看网络标识呢?首先要做的是把每段的IP转换为二进制。

子网掩码切换至二进制,我们会发现,所有的子网掩码是由一串连续的1和一串连续的0组成的(一共4段,每段8位,一共32位数)。

255.0.0.0       11111111.00000000.00000000.00000000

255.255.0.0    11111111.11111111.00000000.00000000

255.255.255.0  11111111.11111111.11111111.00000000

这是A/B/C三类默认子网掩码的二进制形式,其实,还有好多种子网掩码,只要是一串连续的1(不少于8个)和一串连续的0就可以了(每段都是8位)。如11111111.11111111.11111000.00000000,这也是一段合法的子网掩码。子网掩码决定的是一个子网的计算机数目,计算公式是2的m次方,其中,我们可以把m看到是后面的多少个0。如255.255.255.0转换成二进制,那就是 11111111.11111111.11111111.00000000,后面有8个0,那m就是8,255.255.255.0这个子网掩码可以容纳 2的8次方(台)电脑,也就是256台,但是有两个IP是不能用的,那就是最后一段不能为0和255,减去这两台,就是254台。

二、划分方法

子网的划分,实际上就是设计子网掩码的过程。子网掩码主要是用来区分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、示例

255.255.248.0这个子网掩码可以最多容纳多少台电脑?

1)计算方法

把将其转换为二进制的四段数字(每段要是8位,如果是0,可以写成8个0,也就是00000000)11111111.1111111.11111000.00000000

然后,数数后面有几颗0,一共是有11颗,那就是2的11次方,等于2048(注意:主机号中全0是保留地址,全1是广播地址,所以它们不算可用主号地址。网络号也是一样的。子网号是可以用全0和全1的),所以这个子网掩码最多可以容纳2048-2=2046台电脑。

一个子网最多可以容纳多少台电脑你会算了吧,下面我们来个逆向算法的题。

一个公司有530台电脑,组成一个对等局域网,子网掩码设多少最合适?

首先,无疑,530台电脑用B类IP最合适(A类不用说了,太多,C类又不够,肯定是B类),但是B类默认的子网掩码是255.255.0.0,可以容纳6万台电脑,显然不太合适,那子网掩码设多少合适呢?我们先来列个公式:2^m >= 560

首先,我们确定2^m一定是大于2^8的,因为我们知道2^8是256,也就是C类IP的最大容纳电脑的数目,我们从9次方一个一个试,2^9是 512,不到560,2^10是1024,看来2^10最合适了。子网掩码一共由32位组成,已确定后面10位是0了,那前面的22位就是1,最合适的子网掩码就是:11111111.11111111.11111100.00000000,转换成10进制,那就是255.255.252.0。

分配和计算子网掩码你会了吧,下面,我们来看看IP地址的网段。

相信好多人都和我一样,认为IP只要前三段相同,就是在同一网段了,其实,不是这样的,同样,我也把IP的每一段转换为一个二进制数,这里就拿IP:192.168.0.1,子网掩码:255.255.255.0做实验吧。

192.168.0.1   11000000.10101000.00000000.00000001(这里说明一下,和子网掩码一样,每段8位,不足8位的,前面加0补齐。)

IP        11000000.10101000.00000000.00000001

子网掩码 11111111.11111111.11111111.00000000

--------------------------------

2)同一网段

在这里,向大家说一下到底怎么样才算同一网段

要想在同一网段,必需做到网络标识相同,那网络标识怎么算呢?各类IP的网络标识算法都是不一样的。A类的,只算第一段。B类,只算第一、二段。C类,算第一、二、三段。

算法:只要把IP和子网掩码的每位数AND(逻辑与)就可以了。[注1]

如:AND 192.168.0.1,255.255.255.0,先转换为二进制,然后AND每一位

IP               11000000.10101000.00000000.00000001

子网掩码      11111111.11111111.11111111.00000000

得出AND结果 11000000.10101000.00000000.00000000

转换为十进制192.168.0.0,这就是网络标识,再将子网掩码反取,也就是00000000.00000000.00000000.11111111,与IP逻辑与得出结果00000000.00000000.00000000.00000001,转换为10进制,即0.0.0.1,这0.0.0.1就是主机标识。要想在同一网段,必需做到网络标识一样。

我们再来看看这个改为默认子网掩码的B类IP

如IP:188.188.0.111,188.188.5.222,子网掩码都设为255.255.254.0,在同一网段吗?

先将这些转换成二进制

188.188.0.111 10111100.10111100.00000000.01101111

188.188.5.222 10111100.10111100.00000101.11011110

255.255.254.0 11111111.11111111.11111110.00000000

分别AND,得:

10111100.10111100.00000000.00000000

10111100.10111100.00000100.00000000

网络标识不一样(看255.255.254.0转换成二进制后1的数位,所以可以看到不一样),即不在同一网段。

判断是不是在同一网段,你会了吧,下面我们来点实际的。

一个公司有530台电脑,组成一个对等局域网,子网掩码和IP设多少最合适?

子网掩码不说了,前面算出结果来了11111111.11111111.11111100.00000000,也就是255.255.252.0

--------------------------------

3)B类地址

选一个B类IP段,这里就选188.188.x.x吧

这样,IP的前两段确定的,关键是要确定第三段,只要网络标识相同就可以了。我们先来确定网络号。我们把子网掩码中的1和IP中的?对就起来,0和*对应起来,如下:

255.255.252.0 11111111.11111111.11111100.00000000  己确定的子网掩码

188.188.x.x     10111100.10111100.??????**.********  B类IP段

网络标识         10111100.10111100.??????00.00000000

由此可知,?处随便填(只能用0和1填,不一定全是0和1),我们就全填0吧,*处随便,这样呢,我们的IP就是10111100.10111100.000000**.********,一共有530台电脑,IP的最后一段1~254可以分给254台计算机, 530/254=2.086,采用进1法,得整数3,这样,我们确定了IP的第三段要分成三个不同的数字,也就是说,把000000**中的**填3次数字,只能填1和0,而且每次的数字都不一样,至于填什么,就随我们便了,如00000001,00000010,00000011,转换成十进制,分别是 1,2,3,这样,第三段也确定了,这样,就可以把IP分成188.188.1.y,188.188.2.y,188.188.3.y,y处随便填,只要在1~254范围之内,并且这530台电脑每台和每台的IP不一样,就可以了。

有人也许会说,既然算法这么麻烦,干脆用A类IP和A类默认子网掩码得了,要说的是,由于A类IP和A类默认子网掩码的主机数目过大,这样做无疑是大海捞针,如果同时局域网访问量过频繁、过大,会影响效率的。所以,最好设置符合自己的IP和子网掩码。

举个实例:比如公司分配到的网段是192.168.1.0/24,首先我要分一个8个主机的网段出来,那么这个网段的首地址是什么?之后,我又要划分一个16个主机的地址出来,那么16个主机的首地址是什么?

2、划分实例

1)C类地址例子:网络地址192.168.10.0;子网掩码255.255.255.192/26(26个1,32-26=6个0)

子网数=2*2=4 [注2]

主机数=2^6-2=62

有效子网?:block size=256-192=64;所以第一个子网为192.168.10.64,第二个为192.168.10.128

广播地址:下个子网-1.所以2个子网的广播地址分别是192.168.10.127和192.168.10.191

有效主机范围:所以第一个子网为192.168.10.0,第二个为192.168.10.64,第三个为192.168.10.128,第四个为192.168.10.192

--------------------------------

2)B类地址例子1:网络地址:172.16.0.0;子网掩码255.255.192.0/18(18个1,32-18=14个0

子网数=2*2=4

主机数=2^14-2=16382

有效子网?:block size=256-192=64;所以第一个子网为172.16.64.0,最后1个为172.16.128.0

广播地址:下个子网-1.所以2个子网的广播地址分别是172.16.127.255和172.16.191.255

有效主机范围:第一个子网的主机地址是172.16.64.1到172.16.127.254;第二个是172.16.128.1到172.16.191.254

--------------------------------

3)B类地址例子2:网络地址:172.16.0.0;子网掩码255.255.255.224/27(27个1,32-27=5个0

子网数=2^11-2=2046(因为B类地址默认掩码是255.255.0.0,所以网络位为8+3=11)

主机数=2^5-2=30

有效子网?:block size=256-224=32;所以第一个子网为172.16.0.32, 最后1个为172.16.255.192

广播地址:下个子网-1.所以第一个子网和最后1个子网的广播地址分别是172.16.0.63和172.16.255.223

有效主机范围:第一个子网的主机地址是172.16.0.33到172.16.0.62;最后1个是172.16.255.193到172.16.255.223

--------------------------------

4)Variable Length Subnet Masks(VLSM)

变长子网掩码(VLSM)的作用:节约IP地址空间;减少路由表大小.使用VLSM时,所采用路由协议必须能够支持它,这些路由协议包括RIPv2,OSPF,EIGRP和BGP.

5)网络中子网位数、子网数和主机数计算总结:

已知C类地址:202.117.38.0的子网掩码为255.255.255.0,要求划分8个子网,那么需要借用后面3位主机位(没有排除不可用子网),即:子网数=主机位^3,即:2^3=8,满足上述所需子网个数。

已经算出子网数的主机位,那么接下来计算划分后的网络的子网掩码:

划分前:11111111 11111111 11111111 00000000

划分后:11111111 11111111 11111111 11100000

划分后子网掩码十进制表示:255.255.255.224,可分为8个网络(没有排除不可用子网)

每个子网的网络地址、起始地址、结束地址、广播地址如下所示:

1子网:00000000(最后一字节二进制所示)

网络地址202.117.38.0     起始与结束:202.117.38.1~202.117.38.30     广播地址:202.117.38.31

2子网:00100000

网络地址:202.117.38.32 起始与结束:202.117.38.33~202.117.38.62    广播地址:202.117.38.63

3子网:01000000

网络地址:202.117.38.64  起始与结束:202.117.38.64~202.117.38.94    广播地址:202.117.38.95

4子网:01100000

网络地址:202.117.38.96  起始与结束:202.117.38.97~202.117.38.126   广播地址:202.117.38.127

5子网:10000000

网络地址:202.117.38.128 起始与结束:202.117.38.129~202.117.38. 158广播地址:202.117.38.159   

6子网:10100000

网络地址:202.117.38.160 起始与结束:202.117.38.161~202.117.38.190 广播地址:202.117.38.191

7子网:11000000

网络地址:202.117.38.192 起始与结束:202.117.38.193~202.117.38.222 广播地址:202.117.38.223

8子网:11100000

网络地址:202.117.38.224  起始与结束:202.117.38.225~202.117.38.254 广播地址:202.117.38.255

每个子网的子网掩码为:255.255.255.224,每个子网网络可以同时接入的最大主机数为30台。

-----------------------------------------------------------

注1:

已知网络地址为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个子网。

如255.255.252.0,这样计算 256-252=4, 4*256=1024。 为什么乘256,因为后面的0表示8个0,就是一个段最多是256个IP。而用上面所说的通用办法计算,252用二进制表示是1111 1100 ,0用二进制表示是0000 0000,一共是10个0,2^10=1024。

注2:

子网数=2^网络位,网络位为默认的子网掩码中加入的位数例:C类默认掩码为 255.255.255.0 转化为2位数为:11111111.11111111.11111111.00000000若C类地址,使用的子网掩码为:255.255.255.192,转化为2位数为:11111111.11111111.11111111.11000000,较默认的增加了两个1,即2个位数,则子网数为:2^2=4。


孤独本是常态,逢人不必言深。觉得不错,动动发财的小手点个赞哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱上电路设计

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值