【网络基础】通俗易懂的搞明白什么是子网掩码(大白话版)

2023-10-26

前言

本次的文章内容均为个人在网络上搜罗知识点并梳理而来,尽量用浅显易懂的方式讲解,但不会讲的很深入,因为只想给刚入行的人理解什么是子网掩码。会不定期的“修缮”文章内容,也欢迎大家指出错误和提出补充。

v-1.1版本

建议看这篇文章之前先了解以下什么是IP地址 ↓

【网络基础】通俗易懂的搞明白什么是IP地址(小白向)


什么是子网掩码

前篇文章的最后我们提到IP地址用过去A-E的分类去划分网络位和主机位,会照成很多资源的浪费,利用效率低下,需要采用新的划分规则,这就是子网掩码诞生的原因之一(注意A-E的分类方式还保留)。

IP地址本身不再记录划分信息,而是通过独立于IP地址的另一串数字来辅组记录,这就是子网掩码。

这串数字也是32位的二进制数,但表示的时候也是通过十进制数展示。比如

11111111 11111111 11111111 00000000  // 连续的1代表网络位,连续的0代表主机位
// 转换
255.255.255.0

转换后的前三组的255就表示一个ip地址中前三组数是网络号,而后一组的0表示一个ip地址中后一组是主机号。比如:

IP192.168.33.112  
子网掩码:255.255.255.0

说明192.168.33是网络位,112 是主机位。这就子网掩码的功能之一。

子网掩码还可以来划分子网!

子网

大致的了解一下什么是子网,其实我们可以简单的理解成在一个局域网中。比如两台笔记本电脑连接同一个wifi,那么他们就在同一个子网中或者说是同一个局域网中,就算路由器连接外网的网线断了,两台电脑之间也能相互通信。

子网的划分需要靠子网掩码来规定。

如何判断是否在同一个子网

前面提到子网的划分需要靠子网掩码来规定,怎么判断两台设备是否在同一个子网呢。假如我们有一台A笔记本,一台B笔记本,连接的是同一个wifi,通过查询我们得知:

A笔记本:
IP:192.168.33.112 | 子网掩码:255.255.255.0
B笔记本:
IP:192.168.33.223 | 子网掩码:255.255.255.0

通过IP地址的二进制格式与子网掩码的二进制格式进行and运算,相等,说明处于同一个子网,可以直接通信;

来来来,我们来算下:

// A
11000000 10101000 00100001 01110000 // IP
11111111 11111111 11111111 00000000 // 子网掩码
// and运算理解位为乘就可以了,两者每一位都相乘得
11000000 10101000 00100001 00000000
// 转成十进制为
192.168.33.0

// 同理B运算完后为
192.168.33.0

A和B笔记本的运算结果相等,说明在同一个子网。

子网掩码的功能总结

通过以上的讲述,我们知道了子网掩码有两个功能

  1. 将一个IP地址划分为网络位和主机位
  2. 判断两个设备是否在同一个子网

子网掩码的分类

Ip地址分类对应的默认子网掩码分为

  • A类:255.0.0.0
  • B类:255.255.0.0
  • C类:255.255.255.0

当然,比之前灵活的地方在于每一类还可以继续划分子网,被称为可变长子网掩码

可变长子网掩码

同过网络位扩展占用主机位,就可继续划分子网,比如C类中,我想再划分出4个子网,那么子网掩码可以为

255.255.255.192
// 转成二进制
11111111 11111111 11111111 11000000 // 连续的1代表网络位,连续的0代表主机位

可以看到网络位占用了2位主机位进行了扩展,这两位可以有00、01、10、11的组合,每个组合配合后六位数从000000到111111就可以把主机位的十进制总数255划分成

  1. 00情况下的00000000-00111111 转为 0-63
  2. 01情况下的01000000-01111111 转为 64-127
  3. 10情况下的10000000-10111111 转为128-191
  4. 11情况下的11000000-11111111 转为192-255

于是就把C类的主机位划分成4个子网。

举例说明

假如有两个IP

IP 192.168.11.30  子网掩码 255.255.255.192
IP 192.168.11.61  子网掩码 255.255.255.192

可以和上面列举的对比,发现这个子网掩码的最后一组为192,对应转成二进制是11000000,说明是C类并借了2位主机位,也就是网络位有8+8+8+2=26位,那么可以这样去简要表示这俩个ip

192.168.11.30/26
192.168.11.61/26

那么这俩ip在一个子网中吗,首先26个网络号必定是C类,前三组都是1,不用算了都乘1直接确定192.168.11,最后一组C类的为0(192先不看,先看大类),那也不用算了都乘0直接确定192.168.11.0,然后最后一组是C类的再次划分192,两个ip的子网掩码都是192,必定同一个子网了。

综上,可变长子网掩码本质就是通过划分主机位来划分出子网,还要注意的是每个子网的一头一尾也是要给网络地址和广播地址的。


总结

有了子网掩码,IP地址的网络位和主机位的划分变得更加灵活,在有限的IP资源的情况下,提高IP地址的利用率,减少IP地址的浪费。

看完来个赞,年年益寿~

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【网络基础】通俗易懂的搞明白什么是子网掩码(大白话版) 的相关文章

  • 安装 Django1.11

    Django1 11 安装Django的步骤 联网 在命令行窗口中直接运行 pip install django 1 11 i https pypi tuna tsinghua edu cn simple 或使用离线方式安装 执行命令 pi
  • 初级(上) 二维码的生成

    吼吼 阳仔的第一篇博客开写啦 以下的内容都是我从imooc上面听课的总结 当然是只针对二维码 作为一个初级程序媛 也是要坚持学习的 首先 谢谢imooc网上的老师发放的免费视频 让我自己有了一些简单的了解 接下来 就把我的总结贴出来吧 第一
  • 微信公众号开发之绑定微信开发者

    第一步 登录微信公众号 绑定网页开发者 在登录后的界面中 我们向下拉在左侧会看到有一个 开发者工具 点击 这时在开发者工具中 会看到有好几个工具 其中有一个 web开发者工具 我们点击进入 在这里 我们就会看到有一个 绑定开发者微信号 按钮
  • LDO的原理及应用

    01 LDO定义 LDO即lowdropoutregulator 是一种低压差线性稳压器 这是相对于传统的线性稳压器来说的 传统的线性稳压器 如78XX系列的芯片都要求输入电压要比输出电压至少高出2V 3V 否则就不能正常工作 但是在一些情

随机推荐

  • Javascript:window.close()不起作用?

    一般的窗口关闭的JS如下写法 window close 但是呢 chrome firefox等中有时候会不起作用 改为下面的写法 window open about blank self close 或者 window open self
  • 服务端 TCP 连接的 TIME_WAIT 过多问题的分析与解决

    https blog csdn net zxlyx article details 120397006 本文给出一个 TIME WAIT 状态的 TCP 连接过多的问题的解决思路 非常典型 大家可以好好看看 以后遇到这个问题就不会束手无策了
  • ubuntu安装anaconda及创建桌面快捷启动图标

    第一步 下载anaconda 1 因为跑代码的原因 我要下载python3 6的anaconda 如果大家也有版本的要求 首先需要查看python与anaconda的版本对应关系 详细可见https blog csdn net yuejis
  • verilog实例-仲裁(Arbiter)

    目录 1 仲裁 2 仲裁方案 3 严格优先级轮询 1 design detil 2 time 3 code 4 公平轮询 1 design detil 2 time 3 code 5 公平轮询 仲裁w o死周期 1 design detil
  • 【Arduino实验05 基于环境光的LED灯亮度感应控制】

    目录 一 实验目的 二 实验设备与环境 三 实验重点 四 实验难点 五 实验内容 5 1实验任务 5 2实验原理 5 3实验内容 5 4实验结果 5 5思考题 一 实验目的 1熟悉光敏传感器原理与功能 2理解串联电路获取传感器数据原理 3
  • 基于烟花算法的单目标优化问题求解及Matlab实现

    基于烟花算法的单目标优化问题求解及Matlab实现 烟花算法 Fireworks Algorithm 是一种新型的群智能算法 模拟了烟花爆炸时颜色花火 噪声花火等不同类别的行为特征 通过对爆炸位置 高度 数量等参数进行调整来求解单目标优化问
  • CRC校验流程

    通常我们在涉及到传输指令或者命令行的时候 为了保证数据传输的正确性和准确性 会涉及到校验码的问题 而我们通常会采用CRC校验 CRC是比较常用的对命令行和指令行的校验方法 一般会放在指令的后面 用以核对数据的正确性 其实如果是比较简单的指令
  • js使用mqtt的示例代码

    浏览器如果要使用mqtt 需要引用js包 基本使用 Create a client instance var options mqtt客户端的id 这里面应该还可以加上其他参数 具体看官方文档 clientId mqttjs Math ra
  • 数字IC手撕代码-数据位宽转换器(宽-窄,窄-宽转换)

    前言 本专栏旨在记录高频笔面试手撕代码题 以备数字前端秋招 本专栏所有文章提供原理分析 代码及波形 所有代码均经过本人验证 目录如下 1 数字IC手撕代码 分频器 任意偶数分频 2 数字IC手撕代码 分频器 任意奇数分频 3 数字IC手撕代
  • 数组转化为list

    1 Arrays asList strArray 方式 将数组转换List后 不能对List增删 只能查改 否 则抛异常 此时是java util Arrays ArrayList 这里面有java util Arrays里面的内部类 里面
  • [pycharm]添加环境变量

    1 问题描述 当import第三方库时 例如自己定义的rosmsg 可能会出现无法索引的情况 2 解决方案 2 1 方法1 在pycharm解释器里面添加路径 File gt Setting gt Project xxxx gt Pytho
  • java开发环境搭建参考网址整理【全】

    前言 大家每次换本儿是不是和我一样头疼需要重新把开发环境重新搭建一遍 我本人主要是通过百度参考别人的网址跟着搭建的 慢慢我就想为啥不专门写一篇文章整理一下从头至尾比较全面的步骤呢 这样方便自己 也方便大家哈 ps 以下有关的文章链接是参考优
  • python中dtypes_Dataframe创建及index,columns,values,dtypes等属性介绍

    DataFrame概念 可以通俗理解为excel中一片数据 表格型数据结构 带有标签的二维数组 有行标签 index 和列标签 columns 其值可以是数值 字符串 布尔值等 1 index 行标签 2 columns 列标签 3 val
  • Layui之动态选项卡&iframe使用

    目录 tab选项卡 方法层 实体类 User web层 登录界面代码 tab选项卡 我们顺着上篇的博客内容 在那个基础上加一个选项卡 首先我们打开Layui的在线文档 网址如下 Tab选项卡 在线演示 Layuihttp layui org
  • LeetCode之螺旋矩阵 II 简单易懂与晦涩难懂两种方法解决

    目录 题目 方法一 简单易懂 四方步步紧逼法 代码 方法二 复杂一点 上下法 代码 题目 给你一个正整数 n 生成一个包含 1 到 n2 所有元素 且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 示例 1 输入 n 3
  • ptv服务器系统,红狮PTV安灯管理服务器系统有效提升国内某知名车企生产效率

    国内某知名汽车企业 在其以往的日常生产管理中 由于汽车生产各产线设备间没有实现互联 工位间信息不流通 每天都需要安排设备管理员定时巡视各个工位 检查设备运行状况 记录生产现状 这不仅造成了时间 人力成本的浪费 更制约了该企业生产效率的提升
  • 修改远程桌面登陆端口的方法

    Windows系统中的远程终端服务是一项功能非常强大的服务 其默认的端口号3839很容易成为入侵者长驻主机的通道 使用户电脑成为通常称为的 肉鸡 受入侵者远程操控 盗取用户重要资料和隐私信息 是非常严重的网络安全隐患 因此 在使用远程终端服
  • 小程序的开放能力、分享及组件的传参

    一 小程序开放功能 1 获取网络状态wx getNetworkType 2 从网络上下载文档wx downloadFile 3 下载成功之后进行预览文档wx openDocument Page 点击 预览文档 的按钮 触发tap回调 tap
  • python解析xml

    import xml dom minidom dom xml dom minidom parse r K identify voc to coco cache annotations 0 xml 打开xml文件 送到dom解析
  • 【网络基础】通俗易懂的搞明白什么是子网掩码(大白话版)

    目录 前言 什么是子网掩码 子网 如何判断是否在同一个子网 子网掩码的功能总结 子网掩码的分类 可变长子网掩码 总结 前言 本次的文章内容均为个人在网络上搜罗知识点并梳理而来 尽量用浅显易懂的方式讲解 但不会讲的很深入 因为只想给刚入行的人