计算机网络 —— 网络层(子网掩码和子网划分)

计算机网络 —— 网络层(子网掩码和子网划分)

  • 网络地址转换NAT
  • 子网掩码和子网划分
  • 举个例子
    • 第一步:看类型
    • 第二步:从主机号开始比对
    • 第三步:去头去尾

我们今天来看子网掩码和子网划分

网络地址转换NAT

网络地址转换(Network Address Translation, NAT)是一种在IP网络中修改数据包的网络地址信息的技术,主要用于将私有(内部)IP地址转换为公有(外部)IP地址,或者反之,从而实现私有网络与公共互联网之间的通信。NAT技术对于缓解IPv4地址短缺问题起到了关键作用,同时也增加了网络的安全性,因为它隐藏了内部网络的真实IP配置。

在这里插入图片描述

子网掩码和子网划分

假设我们现在有一片网络:
在这里插入图片描述
现在我们想把这片网络拆分成三个子网:
在这里插入图片描述我们子网1用原来的IP地址:
在这里插入图片描述
现在我有一个投机取巧的方法,我可以把原来的IPv4中的一些位数拿出来作为子网的IP
在这里插入图片描述
在这里插入图片描述
现在有一个问题:分类地址中有多少位来作为子网号了呢?
在这里插入图片描述
这就是子网掩码的功能了:

子网掩码(Subnet Mask)是一个32位的二进制序列,通常以点分十进制的形式表示,与IP地址一起使用来确定网络地址和主机地址的部分。它的主要功能是将IP地址划分为两部分:网络部分(Network ID)和主机部分(Host ID)。这样做可以将大的网络划分为更小的子网,提高IP地址的使用效率,并且便于网络的管理和路由。
子网掩码中的每一个位与IP地址中的对应位进行逻辑与运算(AND operation)。子网掩码中的“1”表示对应的IP地址位是网络部分,“0”表示主机部分。例如,一个常见的子网掩码255.255.255.0(或其二进制形式11111111.11111111.11111111.00000000)意味着前24位用于网络部分,后8位用于主机部分。
通过改变子网掩码,网络管理员可以灵活地创建不同大小的子网,适应不同规模的网络需求。例如,使用子网掩码255.255.255.128可以将一个C类网络进一步划分为两个较小的子网。
此外,子网掩码还帮助设备识别哪些设备位于同一个子网内,哪些不在。对于同一子网内的设备间通信,可以直接通过局域网进行,而不需要通过路由器;对于跨子网的通信,则需要通过路由器来完成。

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

举个例子

在这里插入图片描述

第一步:看类型

以218开头,说明是一个C类的IP地址,C类IP地址前24位为网络号,后面8位为主机号
在这里插入图片描述

第二步:从主机号开始比对

然后我们看对应的子网掩码:
在这里插入图片描述

有3个255,说明前24位都是网络号,我们看最后一个128,展开为8位:
在这里插入图片描述

第三步:去头去尾

这里注意一下,主机号全为0为网络地址,全为1为广播地址,不参与统计的个数:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
这里有一道练习题,大家可以做一下:
在这里插入图片描述

还有一道考研真题:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/692340.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

碳素钢化学成分分析 螺纹钢材质鉴定 钢材维氏硬度检测

碳素钢的品种主要有圆钢、扁钢、方钢等。经冷、热加工后钢材的表面不得有裂缝、结疤、夹杂、折叠和发纹等缺陷。尺寸和允许公差必须符合相应品种国家标准的要求。 具体分类、按化学成分分类 : 碳素钢按化学成分(即以含碳量)可分为低碳钢、中…

Objective-C 学习笔记 | 基础

Objective-C 学习笔记 | 基础 参考书:《Objective-C 编程(第2版)》 第1部分 入门 Objective-C语言是以C语言为基础的,但增加了对面向对象编程的支持。Objective-C语言是用来开发在苹果iOS以及OS X操作系统上运行的应用的编程语…

Coze入门指南:创建Bot时,如何写好人设与回复逻辑(Persona Prompt)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 Coze Bot 📒📝 Persona & Prompt🌟 # Character🌟 ## Skills🌟 # Overall Rules to follow🌟 ## Workflow🌟 ## Constraints📝 通用写法与模板📝 示例🌟技巧和注意事项⚓️ 相关链接 ⚓️📖 介绍 📖…

VSCode数据库插件

Visual Studio Code (VS Code) 是一个非常流行的源代码编辑器,它通过丰富的插件生态系统提供了大量的功能扩展。对于数据库操作,VS Code 提供了几种插件,其中“Database Client”系列插件是比较受欢迎的选择之一,它包括了对多种数…

【机器学习】机器学习与医疗健康在智能诊疗中的融合应用与性能优化新探索

文章目录 引言机器学习与医疗健康的基本概念机器学习概述监督学习无监督学习强化学习 医疗健康概述疾病预测诊断辅助个性化治疗方案制定 机器学习与医疗健康的融合应用实时健康监测数据预处理特征工程 疾病预测与优化模型训练模型评估 诊断辅助与优化深度学习应用 个性化治疗方…

Vue第三方库与插件实战手册

title: Vue第三方库与插件实战手册 date: 2024/6/8 updated: 2024/6/8 excerpt: 这篇文章介绍了如何在Vue框架中实现数据的高效验证与处理,以及如何集成ECharts、D3.js、Chart.js等图表库优化数据可视化效果。同时,探讨了Progressive Web App(PWA)的接入…

性能提升70%~220%,OBKV提高事务处理效率

1. OBKV 是什么? OBKV,OceanBase的多模KV产品,专注低成本、大规模的结构化或半结构化数据存储,并提供高效访问性能的简易操作接口。 在实现层面,OBKV Bypass了SQL层,直接基于OceanBase的分布式存储构建了…

Linux内核下网卡硬件 MAC 和PHY分析笔记

1 简介 通常CPU自带的以太网接口是MAC控制器,为了实现完整的功能,外围硬件还需要增加一个PHY芯片。 PHY芯片在建立网络连接时负责协商确定网速、全双工 或者 半双工等。在正常通讯时负责在MAC控制器的MII信号 与 网线中的信号之间做转换。 本文的内核代…

Servlet-01

文章目录 Servlet创建Servlet探究Servlet的生命周期 HttpServletWebServlet注解详解 重定向与请求转发ServletContextServletContext中的接口 HttpServletRequestHttpServletResponse状态码解释Cookie Servlet Q:它能做什么呢? A:我们可以通…

[office] Excel教学:Excel通配符怎么用? #其他#职场发展

Excel教学:Excel通配符怎么用? 尽管Excel使用了很多年,但很多人都还是忽略了Excel通配符的存在,不知道通配符是什么,不知道如何使用它。今天我就完整地介绍一下通配符,让你彻底地认识通配符。 关于通配符…

SpringBoot2+Vue3开发课程审核流程系统

SpringBoot2Vue3开发课程审核流程系统 简介 此系统实现了课程审核全流程功能并使用了Activiti7工作流技术,功能包含:课程管理、用户管理、流程定义、课程审核(我的申请、我的代办、我的已办) 功能介绍 课程管理 对课程信息的管…

【JavaScript对象详解】 Day05

JavaScript对象详解 JavaScript 基础 - 第5天对象语法对象属性对象使用属性-查属性-改属性-增属性-删 (了解) 方法和调用遍历对象遍历数组对象null 内置对象Math属性方法生成任意范围随机数 综合案例随机点名案例猜数字游戏猜数字游戏设定次数生成随机颜…

深入解读Prometheus Adapter:云原生监控的核心组件

一、引言 Prometheus Adapter的背景与重要性 在现代的云原生架构中,微服务和容器化技术得到了广泛的应用。这些技术带来了系统灵活性和扩展性的提升,但同时也增加了系统监控和管理的复杂度。Prometheus作为一款开源的监控系统,因其强大的指标…

微信小程序 导航navigation-bar

属性类型默认值必填说明最低版本titlestring否导航条标题2.9.0loadingbooleanfalse否是否在导航条显示 loading 加载提示2.9.0front-colorstring否导航条前景颜色值,包括按钮、标题、状态栏的颜色,仅支持 #ffffff 和 #0000002.9.0background-colorstring…

javaweb学习(day14-ThreadLocal文件上传下载)

一、线程数据共享和安全 -ThreadLocal 1 什么是 ThreadLocal ThreadLocal 的作用,可以实现在同一个线程数据共享, 从而解决多线程数据安全问题. ThreadLocal 可以给当前线程关联一个数据(普通变量、对象、数组)set 方法 [源码!] ThreadLocal 可以像 Map 一样存取数…

Steam下载游戏很慢?一个设置解决!

博主今天重装系统后,用steam下载发现巨慢 500MB,都要下载半小时。 平时下载软件,一般1分钟就搞定了,于是大致就知道,设置应该出问题了 于是修改了,如下设置之后,速度翻了10倍。 如下&#x…

Mysql使用中的性能优化——单次插入和批量插入的性能差异

一般Mysql的客户端和服务端不在一台机器上,所以它们之间的通信需要通过网络进行。我们本次实验,希望抛开网络的影响,测试不同SQL方案在Mysql服务器上的执行效率的对比。于是我们使用“存储过程”来辅助测试。 结论 先上结论: 批…

windows安装conda

1 Conda简介 Conda 是一个开源的软件包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。Conda 是为 Python 程序创建的,适用于 Linux,OS X 和Windows,也可以打包和分发其他软…

【Vue】如何提供访问vuex的数据

文章目录 一、提供数据二、访问Vuex中的数据通过$store访问的语法1)模板中使用2)组件逻辑中使用3)js文件中使用 三、通过辅助函数 - mapState获取 state中的数据 一、提供数据 State提供唯一的公共数据源,所有共享的数据都要统一…

Redis进阶知识个人汇总

持久化 三种方式实现它的持久化: RDB持久化 全称Redis数据备份文件,又称Redis数据快照 这种就是将Redis内存中所有数据记录到磁盘中,当实例出故障后,从磁盘中读快照文件进行恢复数据。 一般使用bgsave指令实现 复制主线程得到一…