子网划分介绍以及如何划分子网(例题详解)

子网划分介绍以及如何划分子网(例题详解)子网划分这项技术用来把一个单一的IP网络地址划分成多个更小的子网(subnet)。这种技术可使一个较大的分类IP地址能够被进一步划分为几个子网。这样就可以让使用一个大的分类地址(classfuladdress)的企业能给该企业中处于不同地理位置的分公司分配不同的子网,对外整个企业是一个网络地址,而在内部,不同分公司则有不同的子网地址,因而不需要为每个站点都分别申请一个网络地址。子网划分通常是把IP地址中主机标识部分划出一定的位数用作本网的各个子网,剩余的主机标识作为相应子网的主机标识部分。

大家好,又见面了,我是你们的朋友全栈君。

子网划分这项技术用来把一个单一的IP网络地址划分成多个更小的子网(subnet)。 这种技术可使一个较大的分类IP地址能够被进一步划分为几个子网。这样就可以让使用一个大的分类地址(classful address)的企业能给该企业中处于不同地理位置的分公司分配不同的子网,对外整个企业是一个网络地址,而在内部,不同分公司则有不同的子网地址,因而不需要为每个站点都分别申请一个网络地址。

当我们对一个网络进行子网划分时,基本上就是将它分成小的网络。比如,当一组IP地址指定给一个公司时,公司可能将该网络“分割成”小的网络,每个部门一个。这样,技术部门和管理部门都可以有属于它们的小网络。通过划分子网,我们可以按照我们的需要将网络分割成小网络。这样也有助于降低流量和隐藏网络的复杂性。

子网划分通常是把IP地址中主机标识部分划出一定的位数用作本网的各个子网,剩余的主机标识作为相应子网的主机标识部分。

划分多少位给子网,主要根据实际需要划分出的子网数而定。

这样IP地址就分为‘网络-子网-主机’三部分。与传统的分类地址一样,地址中的网络部分(网络号+子网)与主机部分之间的边界是由子网掩码来定义的。

划分子网后变成了三级结构 :当没有划分子网时,IP 地址是两级结构,地址的网络号字段也就是 IP 地址的“因特网部分”,而主机号字段是 IP 地址的“本地部分”。划分子网后 IP 地址就变成了三级结构。划分子网只是将 IP 地址的本地部分进行再划分,而不改变 IP 地址的因特网部分。
在这里插入图片描述
如何划分子网

  • 确定需要划分的子网数
  • 根据子网数确定子网的位数
  • 确定每个子网的IP地址范围

看一个具体实例

一家集团公司有4家子公司(A,B,C,D),上级给出一个172.16.100.0/24的网段,让给每家子公司以及子公司的部门分配网段。
要求:A公司需要120地址,B公司需要60个地址,C公司需要20个地址,D公司需要22个地址。

方法一:(较为麻烦)
我们在划分子网时优先考虑最大主机数来划分。
A公司120个地址,所以主机位至少要保留7位(2^7-2>120)
先将172.16.100.0/24用二进制表示:
10101100 00010000 01100100 00000000/24
主机位保留7位,即在现有基础上网络位向主机位借1位(可划分出2个子网)
1.10101100 00010000 01100100 00000000/25【172.16.100.0/25】
2.10101100 00010000 01100100 10000000/25【172.16.100.128/25】
A公司从这两个子网段中选择一个即可,我们选择172.16.100.0/25

B公司使用的网段从172.16.100.128/25中再次划分得到
B公司60个地址,所以主机位至少保留6位(2^6-2>60)
172.16.100.128/25二进制表示为
10101100 00010000 01100100 10000000/25
主机位保留6位,即在现有基础上网络位向主机位借1位(可划分出2个子网)
1.10101100 00010000 01100100 10000000/26【172.16.100.128/26】
2.10101100 00010000 01100100 11000000/26【172.16.100.192/26】
B公司从这两个子网段中选择一个即可,我们选择172.16.100.128/26

C公司使用的网段从172.16.100.192/26中再次划分得到
C公司22个地址,所以主机位至少保留5位(2^5-2>22)
172.16.100.128/26二进制表示为
10101100 00010000 01100100 11000000/26
主机位保留5位,即在现有基础上网络位向主机位借1位(可划分出2个子网)
1.10101100 00010000 01100100 11000000/27【172.16.100.192/27】
2.10101100 00010000 01100100 11100000/27【172.16.100.224/27】
C公司从这两个子网段中选择一个即可,我们选择172.16.100.192/27

D公司网段就为172.16.100.224/27

A公司:
网络地址:【172.16.100.0/25】
可用地址范围:【172.16.100.1/25~172.16.100.126/25】
广播地址:【172.16.100.127/25】
子网掩码:【255.255.255.128】
B公司:
网络地址:【172.16.100.128/26】
可用地址范围:【172.16.100.129/26~172.16.100.190/26】
广播地址:【172.16.100.191/26】
子网掩码:【255.255.255.192】
C公司:
网络地址:【172.16.100.192/27】
可用地址范围:【172.16.100.193/27~172.16.100.222/27】
广播地址:【172.16.100.223/27】
子网掩码:【255.255.255.224】
D公司:
网络地址:【172.16.100.224/27】
可用地址范围:【172.16.100.225/27~172.16.100.254/27】
广播地址:【172.16.100.224/27】
子网掩码:【255.255.255.224】

方法二:(推荐)
利用Huffman树
A:120 → 128
B:60 → 64
C:20 → 32
D:22 → 32
Huffman树

根据Huffman编码
子网号可根据上图Huffman树得到

A的网络号为 172.16.100 , 子网号为0
172.16.100.0 000 0000
172.16.100.0 111 1111
所以A的可用地址范围为:【172.16.100.1/25~172.16.100.126/25】
子网掩码为:255.255.255.128

B的网络号为 172.16.100 , 子网号为10
172.16.100.10 00 0000
172.16.100.10 11 1111
所以B的可用地址范围为:【172.16.100.129/26~172.16.100.190/26】
子网掩码为:255.255.255.192

C的网络号为 172.16.100 , 子网号为110
172.16.100.110 0 0000
172.16.100.110 1 1111
所以C的可用地址范围为:【172.16.100.193/27~172.16.100.222/27】
子网掩码为:255.255.255.224

D的网络号为 172.16.100 , 子网号为111
172.16.100.111 0 0000
172.16.100.111 1 1111
所以D的可用地址范围为:【172.16.100.225/27~172.16.100.254/27】
子网掩码为:255.255.255.255

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153574.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • COleVariant与常用基本数据类型之间的转换

    COleVariant与常用基本数据类型之间的转换COleVariant是数据库常用到的数据类型。它可以是字串,整型值,日期等。知道怎样将它转换为CString很有用处。设有CStringA;COleVariantB;来看看怎样将COleVariant转换为CString:switch(B.vt){caseVT_BSTR:   A=V_BSTRT(&B);break;//COleVariant是一个字串

    2022年7月18日
    21
  • webapi文档描述-swagger

    webapi文档描述-swagger最近做的项目使用mvc+webapi,采取前后端分离的方式,后台提供API接口给前端开发人员。这个过程中遇到一个问题后台开发人员怎么提供接口说明文档给前端开发人员,最初打算使用word文档方式进行交流

    2022年8月5日
    7
  • Python递归详解

    Python递归详解递归的依据在数学中,其实就是数学中的数学归纳法。一、数学归纳法什么是数学归纳法?最简单和常见的数学归纳法是证明当n等于任意一个自然数时某命题成立。证明分下面两步:证明当n=1时命题成立。假设n=m时命题成立,那么可以推导出在n=m+1时命题也成立。(m代表任意自然数)这种方法的原理在于:首先证明在某个起点值时命题成立,然后证明从一个值到下一个值的过程有效。当这两点都已经证明…

    2022年6月17日
    40
  • 如何查看windows的CUDA版本「建议收藏」

    如何查看windows的CUDA版本「建议收藏」最近开始学习一些关于图像处理的计算机视觉的问题(跟着老师,开拓视野)首先就是安装anaconda环境(这个简单)然后老师要求使用pytorch作为我们学习的工具,于是上官网查看相应的pytorch的版本:只需要我们自己选择相应的系统,下载使用的工具方式,python的版本,以及CUDA版本号,就可以获得到相应的命令进行下载安装。这时遇到一个问题,CUDA是什么?CUDA(C…

    2022年6月14日
    167
  • Jenkins配置Coding Webhook

    Jenkins配置Coding WebhookJenkins配置CodingWebhook1.安装插件2.创建项目3.Coding设置ServiceHook1.安装插件需要重启Jenkins2.创建项目这里选择自由风格添加git注意:WebHook地址是你http://jenkins地址/coding/项目名设置运行脚本3.Coding设置ServiceHook使用CodingWebhookPlugin过时问题.使用插件后无法保存配置文件

    2022年5月5日
    78
  • 音频放大器的设计

    音频放大器的设计摘要进入21世纪以后,各种便携式的电子设备成为了电子设备的一种重要的发展趋势。从作为通信工具的手机,到作为娱乐设备的MP3播放器,已经成为差不多人人具备的便携式电子设备。所有这些便携式的电子设备的一个共同点,就是都有音频输出,也就是都需要有一个音频放大器。从中可知,音频放大器的重要性不言而喻。因此,设计了由电流串联负反馈放大电路、电压并联负反馈放大电路以及OTL功率放大器三级组成的音频…

    2022年5月3日
    47

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号