子网掩码换算和子网的划分详解

2024-06-08 03:38

本文主要是介绍子网掩码换算和子网的划分详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、子网掩码的换算:

  在一个网络里面的子网掩码换算,就以网络中有多少台主机数为例来计算。比如说一B类IP地址为172.16.0.0的网络划分成若干子网,要求每个子网内有主机数为500台,则该子网掩码的计算方法基本步骤如下:

  第一步,首先将子网中要求容纳的主机数“500”转换成二进制,得到100000100

  第二步,计算出该二进制的位数为10位,即n =10。

  第三步,将255.255.255.255先化成二进制 11111111.11111111.11111111.111111
11从后向前10位全部置“0”,得到二进制数“11111111.11111111.11111100.00000000
”,转换成十进制后即为255.255.252.0,这就是该要划分成主机数为500的B类IP地址 192.168.0.0的子网掩码。

二、子网的划分:

  经过在工作中的实践,对子网划分的步骤进行了归纳,可体现在如下两步几步:

  第一步,将要划分的子网数目转换为2的m次方。如在一个网吧里面要划4个子网,4=22。如果不是2的多少次方,则取大为原则,(子网个数与占用主机地址位数有如下等式成立:2m≥n。其中,m表示占用主机地址的位数;n表示划分的子网个数)如要划分子网为6个,则同样要考虑8=23。

  第二步,将上一步确定的幂m按高序占用主机地址m位后,转换为十进制。如m为2表示主机位中有2位被划为“网络标识号”占用,因网络标识号应全为“1”,所以主机号对应的字节段为“11000000”。转换成十进制后为192,这就最终确定的子网掩码。就以我们呢常用的C类网为例,则子网掩码为255.255.255.192。

  我们就以实际实例举例说明,若我们用的网络号为192.168.1,则该C类网内的主机IP地址就是192.168.1.1~192.168.1.254,现将网络划分为4个子网。按如上步骤操作:

  4=22,则表示要占用主机地址的2个高序位,即为11000000,可以确定该4个子网的子网掩码都为255.255.255.192。而4个子网的IP地址的划分可以根据被网络号占住的高两位排列进行的,排列的四种顺序为:00,01,10,11。所以这四个IP地址范围分别为:

  (1)第1个子网被网络号占住为00的IP地址是从“11000000 10101000 00000001 00000001”到“11000000 10101000 00000001 00111110”。因为主机号不能全为“0”和“1”(全0为网络本身,全1为广播位),所以没有11000000 00001001 11001000 00000000和11000000 00001001 11001000 00111111这两个IP地址(下同)。注意实际上此时的主机号只有最后面的6位。对应的十进制IP地址范围为192.168.1~192.168.62。而这个子网的网络地址为 11000000 00001001 11001000 00000000,为192.168.1.0。

  (2)第2个子网被网络号占住为01的IP地址是从“11000000 10101000 00000001 01000001”到“11000000 10101000 00000001 01111110” 。对应的十进制IP地址范围为192.168.1.65~192.168.1.126。对应这个子网的网络地址为 11000000 10101000 00000001 01000000,为192.168.1.64。 

  (3)第3个子网被网络号占住为10的IP地址是从“11000000 10101000 00000001 10000001”到“11000000 10101000 00000001 10111110”。对应的十进制IP地址范围为192.168.1.129~192.168.1.190。对应这个子网的网络地址为 11000000 10101000 00000001 10000000,为192.168.1.128。 

  (4)第4个子网被网络号占住为11的IP地址是从“11000000 10101000 00000001 11000001”到“11000000 10101000 00000001 11111110”。对应的十进制IP地址范围为192.168.1.193~192.168.1.254。对应这个子网的网络地址为 11000000 10101000 00000001 11000000,为192.168.1.192。

  三、在网吧里面要保证每个划到的子网里面能给超过254台以上主机以IP就需要把子网掩码位的最后的(11111111 11111111 11111111 00000000 )8位都分给主机位,这样就需要在第三个8位(11111111 11111111 00000000 00000000 )上面来进行划分,而子网掩码的获得可以根据第一部分的方法获得。

  下面以一家1000台的网吧做实例举例说明。1000台机器打算分成4个子网,每个子网250台机器。我们以B类IP地址为172.16.0.0的网络划分四个子网,按照上面的子网划分步骤:

  第一步:4=22,则表示要占用主机地址的是2位,因是B类IP的后8位都分给主机做主机IP,所以就需要把占2位的子网掩码位向前移也就是在第三个8位的后两位上,既可以确定该四个子网的子网掩码为255.255.255.0(根据第一部分所说到的计算子网掩码的位数的方式算出。) 

  第二步: 4个子网的IP地址的划分可以根据被网络号占住的第三个8位的后两位排列进行,排列的四种顺序为:00,01,10,11。所以这四个IP地址范围分别为: 

  (1)第1个子网被网络号占住为00的IP地址是从“10101100 00010000 00000000 00000000”到“10101100 00010000 00000000 00000000”。 同理:因为主机号不能全为“0”和“1”(全0为网络本身,全1为广播位),所以没有10101100 00010000 00000000 00000000和10101100 00010000 00000000 11111111这两个IP地址(下同)。主机号占最后面的8位。对应的十进制IP地址范围为172.16.0.1~172.16.0.254。而这个子网的网络地址为10101100 00010000 00000000 00000000,为172.16.0.0。

  (2)第2个子网被网络号占住为00的IP地址是从“10101100 00010000 00000001 00000000”到“10101100 00010000 00000001 00000000”。 对应的十进制IP地址范围为172.16.1.1~172.16.1.254。而这个子网的网络地址为10101100 00010000 00000001 00000000,为172.16.1.0。 

  (3)第3个子网被网络号占住为00的IP地址是从“10101100 00010000 00000010 00000000”到“10101100 00010000 00000010 00000000” 。对应的十进制IP地址范围为172.16.2.1~172.16.254。而这个子网的网络地址为10101100 00010000 00000010 00000000,为172.16.2.0。 

  (4)第4个子网被网络号占住为00的IP地址是从“10101100 00010000 00000011 00000000”到“10101100 00010000 00000011 00000000” 。对应的十进制IP地址范围为172.16.3.1~172.16.3.254。而这个子网的网络地址为10101100 00010000 00000011 00000000,为172.16.3.0。 

  (注:作为B类地址来讲,在第三个8位上面可以根据所取的几位可以一共划分256个子网,实际的划分过程中要重点考虑一个网段中所存在的主机台数,以此先计算子网掩码,再以子网掩码全为1的右边往左边根据子网要占的子网掩码位划分子网。)

附:在此列出A、B、C三类网络子网数目与子网掩码的转换表,以供参考。

A类:

子网数目占用位数子网掩码子网中主机数
21255.128.0.08,388,606
42255.192.0.04,194,302
83255.224.0.02,097,150
164255.240.0.01,048,574
325255.248.0.0524,286
646255.252.0.0262,142
1287255.254.0.0131,070
2568255.255.0.065,534

 

B类:

子网数目占用位数子网掩码子网中主机数
21255.255.128.032,766
42255.255.192.016,382
83255.255.224.08,190
164255.255.240.04,094
325255.255.248.02,046
646255.255.252.01,022
1287255.255.254.0510
2568255.255.255.0254

 

C类:

子网数目占用位数子网掩码子网中主机数
21255.255.255.128126
42255.255.255.19262
83255.255.255.22430
164255.255.255.24014
325255.255.255.2486
646255.255.255.2522

这篇关于子网掩码换算和子网的划分详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1041117

相关文章

Mysql 中的多表连接和连接类型详解

《Mysql中的多表连接和连接类型详解》这篇文章详细介绍了MySQL中的多表连接及其各种类型,包括内连接、左连接、右连接、全外连接、自连接和交叉连接,通过这些连接方式,可以将分散在不同表中的相关数据... 目录什么是多表连接?1. 内连接(INNER JOIN)2. 左连接(LEFT JOIN 或 LEFT

Java中switch-case结构的使用方法举例详解

《Java中switch-case结构的使用方法举例详解》:本文主要介绍Java中switch-case结构使用的相关资料,switch-case结构是Java中处理多个分支条件的一种有效方式,它... 目录前言一、switch-case结构的基本语法二、使用示例三、注意事项四、总结前言对于Java初学者

Linux内核之内核裁剪详解

《Linux内核之内核裁剪详解》Linux内核裁剪是通过移除不必要的功能和模块,调整配置参数来优化内核,以满足特定需求,裁剪的方法包括使用配置选项、模块化设计和优化配置参数,图形裁剪工具如makeme... 目录简介一、 裁剪的原因二、裁剪的方法三、图形裁剪工具四、操作说明五、make menuconfig

详解Java中的敏感信息处理

《详解Java中的敏感信息处理》平时开发中常常会遇到像用户的手机号、姓名、身份证等敏感信息需要处理,这篇文章主要为大家整理了一些常用的方法,希望对大家有所帮助... 目录前后端传输AES 对称加密RSA 非对称加密混合加密数据库加密MD5 + Salt/SHA + SaltAES 加密平时开发中遇到像用户的

Springboot使用RabbitMQ实现关闭超时订单(示例详解)

《Springboot使用RabbitMQ实现关闭超时订单(示例详解)》介绍了如何在SpringBoot项目中使用RabbitMQ实现订单的延时处理和超时关闭,通过配置RabbitMQ的交换机、队列和... 目录1.maven中引入rabbitmq的依赖:2.application.yml中进行rabbit

C语言线程池的常见实现方式详解

《C语言线程池的常见实现方式详解》本文介绍了如何使用C语言实现一个基本的线程池,线程池的实现包括工作线程、任务队列、任务调度、线程池的初始化、任务添加、销毁等步骤,感兴趣的朋友跟随小编一起看看吧... 目录1. 线程池的基本结构2. 线程池的实现步骤3. 线程池的核心数据结构4. 线程池的详细实现4.1 初

Python绘制土地利用和土地覆盖类型图示例详解

《Python绘制土地利用和土地覆盖类型图示例详解》本文介绍了如何使用Python绘制土地利用和土地覆盖类型图,并提供了详细的代码示例,通过安装所需的库,准备地理数据,使用geopandas和matp... 目录一、所需库的安装二、数据准备三、绘制土地利用和土地覆盖类型图四、代码解释五、其他可视化形式1.

SpringBoot使用Apache POI库读取Excel文件的操作详解

《SpringBoot使用ApachePOI库读取Excel文件的操作详解》在日常开发中,我们经常需要处理Excel文件中的数据,无论是从数据库导入数据、处理数据报表,还是批量生成数据,都可能会遇到... 目录项目背景依赖导入读取Excel模板的实现代码实现代码解析ExcelDemoInfoDTO 数据传输

如何用Java结合经纬度位置计算目标点的日出日落时间详解

《如何用Java结合经纬度位置计算目标点的日出日落时间详解》这篇文章主详细讲解了如何基于目标点的经纬度计算日出日落时间,提供了在线API和Java库两种计算方法,并通过实际案例展示了其应用,需要的朋友... 目录前言一、应用示例1、天安门升旗时间2、湖南省日出日落信息二、Java日出日落计算1、在线API2

使用Spring Cache时设置缓存键的注意事项详解

《使用SpringCache时设置缓存键的注意事项详解》在现代的Web应用中,缓存是提高系统性能和响应速度的重要手段之一,Spring框架提供了强大的缓存支持,通过​​@Cacheable​​、​​... 目录引言1. 缓存键的基本概念2. 默认缓存键生成器3. 自定义缓存键3.1 使用​​@Cacheab