作者:chli1806


一、子网掩码的含义和根据子网掩码划分子网

一个IP地址必然属于某一个网络,或者叫子网。子网掩码就是用来指定某个IP地址的网络地址的,换一句话说,就是用来划分子网的。

例如,一个A类网络可以容纳16777214台主机。但是在实际运用中,不可能把一个A类网络只用于一个子网,因为那样管理起来很不方便,也会出现广播风暴等种种问题,所以需要根据实际需求把它划分为若干个较小的子网。一个B类网络可以容纳65534台主机,往往也是需要划分子网的。即便一个小型企业内部,为了部门之间的职能的需要,配置那些电脑可以互相访问,哪些不能互相访问,就需要通过划分子网的方法来实现。

子网划分的问题看起来很复杂,其实也不是很复杂。只要把IP地址的位数、网络位数、主机位数、子网掩码的位数这几个概念搞清楚,就觉得很简单了。

IP地址位数=网络位数+主机位数=32位。子网掩码的位数就是网络的位数。

A类网络的网络位数是8位,子网掩码就是11111111.00000000.00000000.00000000,换算成二进制表示为255.0.0.0。

B类网络的网络位数是16位,子网掩码就是11111111.11111111.00000000.00000000,换算成十进制表示为255.255.0.0。

C类网络的网络位数是24位,子网掩码就是11111111.11111111.11111111.00000000,换算成十进制表示为255.255.255.0。

A类网络加长子网掩码到16位就把一个A类网络划分为256个B类网络同样大小的网络,再加长到24位就又把每个B类大小的子网划分为256个C类网络大小的子网。就是这个道理。一个大的网络,通过把子网掩码加长,使网络位多了,也就是网络数目多了,子网就多了。

当然你也可以不划分为256个子网,而划分为128个,64个,32个,16个,8个,4个,2个。

一个B类网络的默认子网掩码为255.255.0.0,你如果想把它划分为2个子网,网络位数就成立17位,也就是说子网掩码就变成了255.255.128.0;想划分为16个子网,因为16是2的4次方,所以网络位数加4变成了20位,也就是说子网掩码加长,成了20位,就是255.255.240.0。依此类推。

一个C类网络的默认子网掩码为24位的,那么主机位=32-24=8位,2的8次方等于256,所以一个C类网络的IP地址数量(包括网络地址和广播地址)为256个。

但是你仍然可以通过加长子网掩码的手段,把一个C类子网划分为更多的子网。划分的子网数必定是2的n次方个,每个子网的IP数量必定是2的(8- n)次方个。

子网掩码加长1位,划分2个子网;加长2位,划分4个子网,加长6位,划分2的6次方个,也就是64个子网。

子网掩码的1的个数表示网络位的个数,简单地来说,网络位是不属于你控制的,是上级主管给你的,给你多少就是多少。但是主机位是你可以控制的,你可以把它缩短,把缩短出来的位数加到网络位中,这样网络位就长了,子网数就多了,相应地每个子网的IP数量就少了。

记住下面的公式,遇到再复杂的子网划分问题也难不倒你了。

IP地址位数=32
网络位+主机位=32
子网掩码加长n位,则在当前子网基础上划分为2的n次方个子网。每个子网的IP地址数量=2^(32-划分前子网掩码位数-n)

二、如何根据子网划分的目标计算子网掩码

简单来说,子网掩码就是网络地址的位数。

一个IP地址一共有32位,其中靠前的某些位表示网络地址,后面的某些位表示主机位。

网络位数+主机位数=IP地址位数=32

知道了这个道理,计算子网掩码的方法就是:已知子网内IP数的多少,求出主机位的位数,用32减去主机位数就等于网络位数,也就是子网掩码。

举最简单的例子。一个C类网络,包括256个主机位置,256是2 的8次方,所以主机位是8,那么网络位就是32-8=24,也就是说子网掩码是24位,用二进制表示就是11111111.11111111.11111111.00000000,换算成十进制就是255.255.255.0

再比如一个C类网络划分的子网,每个网络主机IP数是32, 而32是2的5次方,所以主机位是5,那么网络位就是32-5=27,也就是说子网掩码是27位,用二进制表示就是11111111.11111111.11111111.11100000,换算成十进制就是255.255.255.224

再比如一个B类网络划分的子网,每个网络主机IP数是1024, 而1024是2的10次方,所以主机位是10,那么网络位就是32-10=22,也就是说子网掩码是22位,用二进制表示就是11111111.11111111.11111100.00000000,换算成十进制就是255.255.252.0

子网划分是通过改变子网掩码的位数来实现的。比如一个C类IP地址,默认子网掩码是24位的,二进制表示是11111111.11111111.11111111.0000000,换算成10进制的就是255.255.255.0。

如果是这样的子网掩码,后面的8位都可以用来做为主机的位置,2 的8次方等于256,一共有256个IP位置,因为有2个不能用,所以可用的主机位置为254个。

但是你要把这样一个地址划分成2个子网,就要从主机位里拿出一位来作为网络地址,网络地址就成了25位了。相应地主机位就成了7位了,2 的7次方等于128,一共有126个地址可用。

这是从正向来说的,就是已知要划分的子网数,求每个子网的主机数。但是在实际工作中往往是先知道每个子网的主机数,让你划分子网。其实也很简单。

首先你算一下主机数更接近于2 的几次方,那么主机位数就是几位。32减去主机位就是网络位。

举例说明。假如给你一个C类IP地址192.168.0.0。假如你想划分2个子网,一个里面有100台电脑,另一个有50台电脑。

100大于2的6次方,小于2的7次方,所以主机位数取7位。那么网络位数就是32-7=25位。25位的子网掩码11111111.11111111.11111111.10000000 换算成10进制的就是
255. 255. 255. 128,这就是第一个子网的子网掩码,网络号为192.168.0.0/25,网络地址192.168.0.0,主机地址192.168.0.1~192.168.0.126,广播地址192.168.0.127

50大于2的5次方,小于2的6次方,所以主机位数取6位。那么网络位数就是32-6=26位。26位的子网掩码11111111.11111111.11111111.11000000 换算成10进制的就是
255. 255. 255. 192,这就是第二个子网的子网掩码,网络号为192.168.0.128/26,网络地址192.168.0.128,主机地址192.168.0.129~192.168.0.190,广播地址192.168.0.191

注:以上的这些内容其实是我把以前我给其他网友的3个提问的回答拼接到一起又整理了一下搞出来的。可能看起来比较乱,对不起了。你搜搜网上的那些回答,比我的更乱。

子网掩码和子网划分的概念和方法,对于不会的人来说,特别难。一旦你会了,又会觉得特别简单。也许你看了我上面的回答还是云里雾里,看着很头大。但说不定哪一天你就豁然开朗了,又会觉得这些东西很简单,根本不用写那么多。

子网掩码!如何划分子网掩码,计算IP地址的更多相关文章

  1. 徐州联赛选拔赛 - 计算IP地址值

    题目链接 思路:这是一道非常简单的题目,直接用公式计算就好了.对于IP地址a.b.c.d,转换为十进制数就是(a<<24)|(b<<16)|(c<<8)|d.唯一要 ...

  2. 如何计算IP地址及CIDR,子网掩码计算

    如何计算IP地址及CIDR 一. IP地址概念 IP地址是一个32位的二进制数,它由网络ID和主机ID两部份组成,用来在网络中唯一的标识的一台计算机.网络ID用来标识计算机所处的网段:主 机ID用来标 ...

  3. 【转载】IP地址和子网划分学习笔记之《子网掩码详解》

    原文地址: https://blog.51cto.com/6930123/2112748 一.子网掩码 IP地址是以网络号和主机号来标示网络上的主机的,我们把网络号相同的主机称之为本地网络,网络号不相 ...

  4. IP2——IP地址和子网划分学习笔记之《子网掩码详解》

    2018-05-04 16:21:21   在学习掌握了前面的<进制计数><IP地址详解>这两部分知识后,要学习子网划分,首先就要必须知道子网掩码,只有掌握了子网掩码这部分内容 ...

  5. IP地址、子网掩码、网关、DNS的关系

      什么是IP地址所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址.按照TCP/IP协议规定,IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节 ...

  6. IP地址、子网掩码详解

    如何通过子网掩码划分网段 资料一: 一.缺省A.B.C类地址,子网掩码:  二.子网掩码的作用:  code:  IP地址 192.20.15.5 11000000 00010100 00001111 ...

  7. 网络基础之IP地址和子网掩码

    IP地址 IP是英文Internet Protocol的缩写,意思是"网络之间互连的协议",也就是为计算机网络相互连接进行通信而设计的协议.在因特网中,它是能使连接到网上的所有计算 ...

  8. IP地址,子网掩码,默认网关,DNS服务器知识详解(转)

    转自:http://www.cnblogs.com/JuneWang/p/3917697.html 为了更深入的学习TCP/IP协议,最近看了不少有关资料,收集整理记录如下,以备后面的使用和方便各位学 ...

  9. IP地址,子网掩码、默认网关,DNS服务器是什么意思?

    (一)  问题解析001.   问:  IP地址,子网掩码,默认网关,DNS服务器,有什么区别呀?我知道没有IP地址就不能上网,我也知道没设DNS就不能上外网,可它们都有什么功能,有什么区别呢?还有真 ...

随机推荐

  1. jumper-server-资源管理

    https://cloud.tencent.com/developer/article/1460469 此链接是百度搜索的 , 比较详细 https://www.cnblogs.com/zsl-fin ...

  2. python串口工具的使用!!!!一定要加timeout=!!!!

    不指定timeout参数的话,就各种报错,如下: 而前面的串口,波特率则不需要指明.

  3. CCF 模拟试题——出现次数最多的数 官方答案解析及自己写的正确答案

    前几天知道的CCF计算机职业资格认证考试,觉得好像比软考含金量高一些,就去了解了一下,做了模拟试题中的 “出现次数最多的数” 这道题,我的算法和官方答案算法不同,个人觉得觉得官方的好一点,没那么繁琐, ...

  4. 如何在Centos服务器上搭建起Oracle10、VNC、以及FTP

    一.重装和分区 1.配置所需磁盘阵列(Raid): 2.正确分区: 3.Centos安装:过于简单,请自行bd. 二.连网 系统安装完成之后,我们需为其分配IP和DNS: "编辑连接&quo ...

  5. java架构之路-(源码)mybatis执行流程源码解析

    这次我们来说说Mybatis的源码,这里只说执行的流程,内部细节太多了,这里只能授之以渔了.还是最近的那段代码,我们来回顾一下. package mybatis; import mybatis.bea ...

  6. apache ignite系列(九):ignite调优

    1,配置文件调优 1.1 设置页面大小(pagesize) 先查看系统pagesiz,使用PAGE_SIZE或者PAGESIZE # getconf PAGE_SIZE 4096 # getconf ...

  7. 简易数据分析 12 | Web Scraper 翻页——抓取分页器翻页的网页

    这是简易数据分析系列的第 12 篇文章. 前面几篇文章我们介绍了 Web Scraper 应对各种翻页的解决方法,比如说修改网页链接加载数据.点击"更多按钮"加载数据和下拉自动加载 ...

  8. 章节十六、10-TestNG报告和日志

    一.在进行自动化的过程中,日志一般采用log4j 2进行日志记录,但TestNG自己本身也带有日志记录功能(reporter),它的好处在于日志中记录的内容都是testng自动生成的. package ...

  9. 离线环境下进行pip包安装

    内网服务器不能上网,但是需要在上面安装python-package 通过另外一台能上网的主机B 1. 下载需要离线安装的Packages 在B上执行如下命令: 安装单个Package $ pip in ...

  10. Hadoop点滴-初识MapReduce(2)

    术语: job(作业):客户端需要执行的一个工作单元,包括输入数据.MP程序.配置信息 Hadoop将job分成若干task(任务)来执行,其中包括两类任务:map任务.reduce任务.这些任务在集 ...