子网划分中subnet-id可以取全0和全1吗?子网计算实战

简介: 子网划分划分中的全0 和全 1在不同模式下处理情况不同。分为 classful 和classless,如果你的路由器工作在classful环境下,全0 和全1网段是不能使用的,而classless的掩码任何时候都和IP地址成对地出现。所以说要看题目给的具体情况,

子网划分划分中的全0 和全 1在不同模式下处理情况不同。分为 classful 和classless,如果你的路由器工作在classful环境下,全0 和全1网段是不能使用的,而classless的掩码任何时候都和IP地址成对地出现所以说要看题目给的具体情况,

RFC950 page6有这样一句话作为辅助理解

            "In certain contexts, it is useful to have fixed addresses
            with functional significance rather than as identifiers of
            specific hosts.  When such usage is called for, the address
            zero is to be interpreted as meaning "this", as in "this
            network".  The address of all ones are to be interpreted as
            meaning "all", as in "all hosts".  For example, the address
            128.9.255.255 could be interpreted as meaning all hosts on
            the network 128.9.  Or, the address 0.0.0.37 could be
            interpreted as meaning host 37 on this network."
         It is useful to preserve and extend the interpretation of these
         special addresses in subnetted networks.  This means the values
         of all zeros and all ones in the subnet field should not be
         assigned to actual (physical) subnets.
            In the example above, the 6-bit wide subnet field may have
            any value except 0 and 63.

RFC950参考规定:第一个子网(也就是“全0子网”)和最后一个子网(也就是“全1子网”)不可用,为的就是避免全0子网的网络地址和全1子网的广播地址分别与没有划分子网前的网络地址和广播地址相冲突。 但是在后来RFC1878规定中,该项规定已被废止了,现在的设备基本上都普遍支持RFC1878。

后来RFC1878参考规定划分子网后,可以有n个可用的子网(n表示总的子网数)。

1、如果你有一个CLASS C类的IP地址,比如192.168.10.0,你想把它分成8个网段,每个网段内有30台主机,该如何分?


在完成本题之前我们必须要理解一个概念: 什么是class C类地址?


百度百科上的解释是:宣告网段时携带子网掩码。 用更简洁的语言描述就是:掩码任何时候都和IP地址成对地出现。这个和本次要讨论的 "子网划分中全0和全1该如何处理?"有密切关系。


分析思路:若要分成8个网段,对于C类地址,需要借主机号三位来划分子网。即 2^3 = 8。

20190815174813164.png

192.168.10.0 为C类的网络地址(网络号24bit 主机号:8bit),其子网掩码是255.255.255.0 -> 11111111 11111111 11111111 00000000.广播地址是 192.168.10.255(主机号全1为广播地址)


主机位全为0时表示本网络的网络地址,主机位全为1时表示本网络的广播地址,这是两个特殊地址


借主机号3位后网络地址是: 192.168.10.0/27 ,子网掩码是: 255.255.255.224

IP地址的指派范围见下图:20190829195615528.png

2019083011230822.png

有了以上知识储备就可以很快的写出答案:


第一个子网


网络地址 :   192.168.10.0 / 27


主机号范围: 192.168.10.1 ~ 192.168.10.30


广播地址:       192.168.10.31

第二个子网


网络地址 :   192.168.10.32/27


主机号范围: 192.168.10.33 ~ 192.168.10.62

广播地址:       192.168.10.63


第三个子网


网络地址 :   192.168.10.64/27

主机号范围: 192.168.10.65 ~ 192.168.10.94


广播地址:      192.168.10.95


第四个子网


网络地址 :   192.168.10.96/27  


主机号范围: 192.168.10.97 ~ 192.168.10.126

广播地址:       192.168.10.127

第五个子网


网络地址 :   192.168.10.128/27

主机号范围: 192.168.10.129 ~ 192.168.10.158


广播地址:      192.168.10.159


第六个子网


网络地址 :   192.168.10.160/27  


主机号范围: 192.168.10.161 ~ 192.168.10.190


广播地址:       192.168.10.191


第七个子网


网络地址 :   192.168.10.192/27


主机号范围: 192.168.10.193 ~ 192.168.10.222


广播地址:       192.168.10.223


第八个子网


网络地址 :   192.168.10.224/27


主机号范围: 192.168.10.225 ~ 192.168.10.254


广播地址:       192.168.10.255

到这里会出现一个问题?


对于第一个子网的网络地址和主网络的网络地址一样,最后一个子网的广播地址和主网的广播地址是重叠的,如果没有class的分类,这将是混乱的,如果有一个广播消息发往192.168.10.255 是该发给主网还是子网呢?


对于本题并没有明确说明路由器以哪种模式运行,更严谨的做法是不要使用全0 和全1 的子网。此外CIDR采用的是classless,所以采用无分类技术的网络划分全0 和全 1可以划为分子网。


-- update 2022年3月1日17:37:43

举例:一个容易“犯错”的 CIDR

我们来看 16.158.165.91/22 这个 CIDR。求一下这个网络的第一个地址、子网掩码和广播地址。


你要是上来就写 16.158.165.1,那就大错特错了。


/22 不是 8 的整数倍,不好办,只能先变成二进制来看。16.158 的部分不会动,它占了前 16 位。中间的 165,变为二进制为‭10100101‬。除了前面的 16 位,还剩 6 位。所以,这 8 位中前 6 位是网络号,16.158.<101001>,而 <01>.91 是机器号。


第一个地址是 16.158.<101001><00>.1,即 16.158.164.1。子网掩码是 255.255.<111111><00>.0,即 255.255.252.0。广播地址为 16.158.<101001><11>.255,即 16.158.167.255。


-- update 2023年6月21日11:21:14


再算一次,回一下过程。第一次竟然算错了,真是粗心大意。

1. 子网掩码: 题中给出的是CIDR,也就是22个1,将ip地址转换成二进制和22个1相与得到的就是子网。  子网为255.255.252.0

2. 子网的第一个地址

知道了子网掩码之后,将子网掩码和ip地址进行相与得到的就是子网的地址。

子网掩码第三个字节有变化,所以主要讲第三个字节转换,和子网掩码的第三个字节相与得到的就是子网。

该子网的第一个地址是 16.158.164.1

广播地址为16.158.167.255

03e11e20c3534f35bb94b97bdf164941.png

参考: IP地址和子网划分学习笔记之《子网划分详解》_漂洋过海来打你的技术博客_51CTO博客_子网划分详解划分子网的方法


目录
相关文章
|
网络协议 网络架构
【计算机网络】OSI、TCP/IP、五层模型
【计算机网络】OSI、TCP/IP、五层模型
408王道计算机组成原理强化——输入输出系统大题(I/O)
408王道计算机组成原理强化——输入输出系统大题(I/O)
730 1
408王道计算机组成原理强化——输入输出系统大题(I/O)
|
数据安全/隐私保护
思科模拟器Cisco Packet Tracer 8.2.1注册、下载和安装教程(正确+详细)
本文详细总结了思科模拟器Cisco Packet Tracer 8.2.1注册、下载和安装教程(正确+详细),看这一篇就够啦~
48644 6
思科模拟器Cisco Packet Tracer 8.2.1注册、下载和安装教程(正确+详细)
|
存储 数据挖掘 数据处理
Apache Paimon 是一款高性能的数据湖框架,支持流式和批处理,适用于实时数据分析
【10月更文挑战第8天】随着数据湖技术的发展,越来越多企业开始利用这一技术优化数据处理。Apache Paimon 是一款高性能的数据湖框架,支持流式和批处理,适用于实时数据分析。本文分享了巴别时代在构建基于 Paimon 的 Streaming Lakehouse 的探索和实践经验,包括示例代码和实际应用中的优势与挑战。
822 1
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
1098 3
|
网络协议 安全 数据安全/隐私保护
|
算法 关系型数据库 Java
数据库原理第四章课后题答案(第四版)
数据库原理第四章课后题答案(第四版)
702 0
|
人工智能 算法 计算机视觉
无论真实还是AI视频,摩斯卡都能重建恢复4D动态可渲染场景
【6月更文挑战第30天】摩斯卡系统革命性地从单视角视频重建4D动态场景,融合2D视觉模型与物理优化,实现渲染。利用“Motion Scaffold”表示几何、外观和运动,即使在多视角输入困难时也能保证高质量重建与渲染。虽有输入质量和计算资源限制,但其创新性提升了动态场景处理的实用性和可控性。[arXiv:2405.17421](https://arxiv.org/pdf/2405.17421)
328 2
|
存储 监控 Cloud Native
ClickHouse物化视图里常见的7个坑,你踩过几个?
在 OLAP 的业务场景中,不仅要把数据存起来,还需要把数据处理好。在 ClickHouse 中,为了提高数据处理性能,使用 Materialized View 是有效的方法之一。本文主要探讨 Materialized View(下文称 MV) 的工作原理与最佳实践,并介绍了使用过程中容易踩坑的一些问题和解决方案。
1795 5
|
存储 数据采集 人工智能
跨越时空的对话:如何使用AI阅读工具ChatDOC快速建立数字化身?
开门见山,这篇文章主要介绍如何将 AI 改造为靠谱、好用、基于某个人物的数字化身。比如,乔布斯 AI、马斯克 AI、张一鸣 AI、王兴 AI、佛陀 AI、孔子 AI. 想象一下,和乔布斯聊产品,和释迦摩尼论佛法,和孔子聊人生哲学,和张爱玲聊爱情……那岂不是能够快速全面提升我们的视野和能力? 让各个领域的精英群体或者名人,成为你的专属 AI 助手,便是这篇文章的写作目的。
830 0