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

子网划分介绍以及如何划分子网(例题详解)子网划分这项技术用来把一个单一的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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • vue动态引入js文件的方法_vue如何引入js文件

    vue动态引入js文件的方法_vue如何引入js文件Vue动态引入JS文件

  • Swift3创建数组

    Swift3创建数组数组是由一组类型相同的元素构成的有序数据集合。数组中的集合元素是有序的,而且可以重复出现。1 数组创建在Swift语言中,数组的类型格式为:Array或[ElementType]其中Array中的ElementType表示数组的类型,是泛型写法。[ElementType]是一种简写方式。两者表示的功能是一样的,我们更偏向于使用简写形式,本书里所有数组类型都是使用简写形式。下

  • startActivityForResult报错「建议收藏」

    startActivityForResult报错「建议收藏」startActivityForResult报错!startActivityForResult(newIntent(MainActivity.this,OtherActivity.class),0);骗子!从教程、网上滴字不漏抄来的例子,运行居然报错!后来抄翻互联网,…

  • 第二章:activiti工作流连接数据库,和eclipse安装activiti插件

    第二章:activiti工作流连接数据库,和eclipse安装activiti插件第二章:activiti工作流连接数据库,和eclipse安装activiti插件

  • 微信开放平台网站应用扫码登录

    微信开放平台网站应用扫码登录<?phpnamespaceapp\common\wechat;/***微信开放平台*Date:2020/9/080015*Time:上午10:03*/classWXOpenPlatform{privatestatic$appId=’xxxxxxxxxxxxxxxxxxxxxxxxx’;privatestatic$appSecret=’xxxxxxxxxxxxxxxxxxxxxxxxx’;privatestati.

  • Socket粘包问题「建议收藏」

    Socket粘包问题「建议收藏」什么时候要考虑粘包问题1.:如果利用tcp每次发送数据,就与对方建立连接,然后双方发送完一段数据后,就关闭连接,这样就不会出现粘包问题(因为只有一种包结构,类似于http协议)。关闭连接主要要双方都发送close连接(参考tcp关闭协议)。如:A需要发送一段字符串给B,那么A与B建立连接,然后发送双方都默认好的协议字符如”hellogivemesthabouryourself”,然后

发表回复

您的电子邮箱地址不会被公开。

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