私有IP网子网掩码划分原则及计算方法

私有IP网子网掩码划分原则及计算方法

最好记下的二进制转换十进制

00000000 0

00000001 1

00000010 2

00000100 4

00001000 8

00010000 16

00100000 32

01000000 64

10000000 128

11000000 192

11100000 224

11110000 240

11111000 248

11111100 252

11111110 254

11111111 255

IP和子网掩码

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

AIP0.0.0.0 127.255.255.255 (0段和127段不使用)

BIP128.0.0.0 191.255.255.255

CIP192.0.0.0 223.255.255.255

Windows默认分配的子网掩码每段只有2550

A类的默认子网掩码 255.0.0.0 一个子网最多可以容纳1677万多台电脑

B类的默认子网掩码 255.255.0.0 一个子网最多可以容纳6万台电脑

C类的默认子网掩码 255.255.255.0 一个子网最多可以容纳254台电脑

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

要想在同一网段,只要网络标识相同就可以了,那要怎么看网络标识呢?首先要做的是把每段的IP转换为二进制。(有人说,我不会转换耶,没关系,我们用Windows自带计算器就行。打开计算器,点查看>程序员,输入十进制的数字,再点一下“二进制”这个单选点,就可以切换至二进制了。)

把子网掩码切换至二进制,我们会发现,所有的子网掩码是由一串连续的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,这也是一段合法的子网掩码。子网掩码决定的是一个子网的计算机数目,计算机公式是2m次方,其中,我们可以把m看到是后面的多少个0。如255.255.255.0转换成二进制,那就是 11111111.11111111.11111111.00000000,后面有80,那m就是8255.255.255.0这个子网掩码可以容纳 28次方(台)电脑,也就是256台,但是有两个IP是不能用的,那就是最后一段不能为0255,减去这两台,就是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,则网络ID192.160.4.0,主机ID0.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位。

如果希望在一个网络中建立子网,就要在这个默认的子网掩码中加入一些位,它减少了用于主机地址的位数。加入到掩码中的位数决定了可以配置的子网。因而,在一个划分了子网的网络中,每个地址包含一个网络地址、一个子网位数和一个主机地址。

示例

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

计算方法

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

11111111.1111111.11111000.00000000

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

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

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

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

公式

2m次方>=560

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

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

相信好多人都和我一样,认为IP只要前三段相同,就是在同一网段了,其实,不是这样的,同样,我也把IP的每一段转换为一个二进制数,这里就拿IP192.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

同一网段

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

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

算法只要把IP和子网掩码的每位数AND就可以了。

AND方法:01=0 00=0 11=1

如:And 192.168.0.1255.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 AND

得出结果00000000.00000000.00000000.00000001,转换为10进制,即0.0.0.1

0.0.0.1就是主机标识。要想在同一网段,必需做到网络标识一样。

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

IP188.188.0.111188.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

B类地址

选一个BIP段,这里就选188.188.x.x

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

255.255.252.0 11111111.11111111.11111100.00000000

188.188.x.x 10111100.10111100.??????**.********

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

由此可知,?处随便填(只能用01填,不一定全是01),我们就用全填0吧,*处随便,这样呢,我们的IP就是

10111100.10111100.000000**.********,一共有530台电脑,IP的最后一段1254可以分给254台计算机, 530/254=2.086,采用进1法,得整数3,这样,我们确定了IP的第三段要分成三个不同的数字,也就是说,把000000**中的**填三次数字,只能填10,而且每次的数字都不一样,至于填什么,就随我们便了,如000000010000001000000011,转换成十进制,分别是 123,这样,第三段也确定了,这样,就可以把IP分成188.188.1.y188.188.2.y188.188.3.yy处随便填,只要在1254范围之内,并且这530台电脑每台和每台的IP不一样,就可以了。

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

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

划分实例

C类地址例子:

网络地址192.168.10.0;子网掩码255.255.255.192(/26)

1.子网数:2*2=4

2.主机数:26次方-2=62

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

4.广播地址:下个子网-1.所以2个子网的广播地址分别是192.168.10.127192.168.10.191

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

B类地址例子1:

网络地址:172.16.0.0;子网掩码255.255.192.0(/18)

1.子网数:2*2=4

2.主机数:214次方-2=16382

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

4.广播地址:下个子网-1.所以2个子网的广播地址分别是172.16.127.255172.16.191.255

5.有效主机范围是:第一个子网的主机地址是172.16.64.1172.16.127.254;第二个是172.16.128.1172.16.191.254

B类地址例子2:

网络地址:172.16.0.0;子网掩码255.255.255.224(/27)

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

2.主机数:25次方-2=30

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

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

5.有效主机范围是:第一个子网的主机地址是172.16.0.33172.16.0.62;最后1个是172.16.255.193172.16.255.223

原创文章,作者:wangdongxu,如若转载,请注明出处:http://www.178linux.com/74584

(1)
wangdongxuwangdongxu
上一篇 2017-05-02
下一篇 2017-05-02

相关推荐

  • Linux中文件管理类命令初探

    Linux中文件管理类命令初探 文件管理通常指的是对文件或者目录进行的类似复制、移动、删除操作。 1. 文件的复制 cp 在Linux中使用cp指令完成文件复制工作,即copy之意。实际操作中又可以分为以下两种情况: 单源复制 单源复制即复制的源只有一个,这个源可以为文件或者目录。命令语法:cp [OPTION]… [-T] SOURCE DEST在实际…

    Linux干货 2016-11-06
  • 逻辑卷实战演练

    1、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录 2、新建用户archlinux,要求其家目录为/users/archlinux,而后su切换至archlinux用户,复制/etc/pam.d目录至自己的家目录 3、扩展testlv…

    Linux干货 2016-09-01
  • 脚本函数与程序包管理

    一、函数调用 1.while循环的特殊用法(遍历文件的每一行): while read line; do    循环体done < /PATH/FROM/SOMEFILE 依次读取/PATH/FROM/SOMEFILE文件中的每一行,且将行赋值给变量line示例:扫描/etc/passwd文件每一行,如发现GECOS字段为…

    Linux干货 2016-08-21
  • 5、脚本初步,正则表达式

    http://note.youdao.com/yws/public/redirect/share?id=35435e3a02f23513e5c83601372fff9b&type=false

    Linux干货 2016-08-08
  • 十.Linux博客-2016年8月12日变量、算术表达式、测试

    格式说明: 操作 概念 命令 说明及举例 十.变量、算术表达式、测试 bash -n +脚本 检查语法错误 .bash_profile 配置文件PATH=$PATH:$HOME/bin:. 加.方便但不安全 unset name 删变量name 小驼峰 第一个单词字母小写,以后单词首字母大写大驼峰 每一个单词首字母都大写 set…

    Linux干货 2016-08-24
  • 认识DNS

    DNS全称是Domain Name System的简称,即域名系统。因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP/TCP协议之上,使用端口号53。 认识DNS 安装 创建一台DN…

    Linux干货 2016-12-07