计算机网络之---子网划分与IP地址
子网划分与IP地址的关系
在计算机网络中,子网划分(Subnetworking)是将一个网络划分为多个子网络的过程。通过子网划分,可以有效地管理和利用IP地址空间,提高网络的性能、安全性和管理效率。
子网划分的基本目的是通过合理地分配IP地址,使得网络中的主机可以被组织在逻辑上更清晰的子网络中,从而实现高效的地址利用和更好的路由控制。
IP地址概念
- P地址(Internet Protocol Address)是分配给网络中每个设备的唯一标识符。在IPv4中,IP地址由32位二进制数表示,通常以四个十进制数表示,每个数值的范围是0到255(如:192.168.1.1)。
- IP地址可以分为网络地址和主机地址两部分,网络地址用于标识一个网络,主机地址用于标识网络中的具体设备。
子网概念
- 子网是从一个大的网络中分割出来的较小的网络。子网的划分基于IP地址和子网掩码来实现,子网掩码将IP地址分成两部分:网络部分和主机部分。
- 通过子网划分,我们可以把大网络划分成多个小网络(子网),每个子网有其独立的IP地址范围。
IP地址分类
IPv4地址分为几个类别,每类地址可以用于不同规模的网络。每个类别的地址范围如下:
- A类地址(1.0.0.0 ~ 127.255.255.255):默认子网掩码是 255.0.0.0,即网络部分占8位,主机部分占24位。
- B类地址(128.0.0.0 ~ 191.255.255.255):默认子网掩码是 255.255.0.0,即网络部分占16位,主机部分占16位。
- C类地址(192.0.0.0 ~ 223.255.255.255):默认子网掩码是 255.255.255.0,即网络部分占24位,主机部分占8位。
- D类地址(224.0.0.0 ~ 239.255.255.255):用于组播地址。
- E类地址(240.0.0.0 ~ 255.255.255.255):保留地址,通常不用于公共网络。
子网的计算规则
1. 确定原始网络的 IP 地址和子网掩码
假设我们有一个网络地址 192.168.1.0/24,这是一个典型的 C 类地址,子网掩码为 255.255.255.0(即 /24),表示网络部分占 24 位,剩下的 8 位用于主机部分。
2. 计算所需的子网掩码
如果需要将该网络划分为 4 个子网,可以通过借用主机部分的位来划分子网。要划分 4 个子网,需要借用多少位呢?
- 2 的幂次方公式:2n2n ≥ 4
- n=2n=2,因为 22=422=4。
所以,我们需要借用 2 位主机部分来划分 4 个子网。
3. 修改子网掩码
原始子网掩码为 /24,现在借用 2 位主机部分。因此,新的子网掩码是:
- 原来的 24 位 + 借用的 2 位 = /26。
所以,新的子网掩码是 255.255.255.192。
4. 计算每个子网的地址范围
使用新的子网掩码(/26)来划分地址空间,每个子网有 26 位是网络部分,剩下的 6 位 是主机部分。
每个子网的主机地址范围为:
- 2^6 - 2 = 62 个主机地址。
- 其中,2 个地址是保留的:一个是网络地址,一个是广播地址。
5. 划分子网
使用子网掩码 /26,网络 192.168.1.0/24 被划分为 4 个子网,每个子网的大小为 64 个地址(包含网络地址和广播地址)。
| 子网号 | 子网地址 | 可用主机地址范围 | 广播地址 | 子网掩码 |
|---|---|---|---|---|
| 子网 1 | 192.168.1.0/26 | 192.168.1.1 ~ 192.168.1.62 | 192.168.1.63 | 255.255.255.192 |
| 子网 2 | 192.168.1.64/26 | 192.168.1.65 ~ 192.168.1.126 | 192.168.1.127 | 255.255.255.192 |
| 子网 3 | 192.168.1.128/26 | 192.168.1.129 ~ 192.168.1.190 | 192.168.1.191 | 255.255.255.192 |
| 子网 4 | 192.168.1.192/26 | 192.168.1.193 ~ 192.168.1.254 | 192.168.1.255 | 255.255.255.192 |
6. 每个子网的主机数量
每个子网中有 62 个可用的主机地址。为什么是 62 个?
- 每个子网的大小是 64 个地址,其中包含了:
- 网络地址(第一个地址,不能分配给主机)
- 广播地址(最后一个地址,不能分配给主机)
因此,实际可用的主机地址数量是:64 - 2 = 62。
相关文章:
计算机网络之---子网划分与IP地址
子网划分与IP地址的关系 在计算机网络中,子网划分(Subnetworking)是将一个网络划分为多个子网络的过程。通过子网划分,可以有效地管理和利用IP地址空间,提高网络的性能、安全性和管理效率。 子网划分的基本目的是通过…...
计算机网络 (31)运输层协议概念
一、概述 从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能中的最低层。运输层的一个核心功能是提供从源端主机到目的端主机的可靠的、与实际使用的网络无关的信息传输。它向高层用…...
代码随想录算法训练营day28
代码随想录算法训练营 —day28 文章目录 代码随想录算法训练营前言一、122.买卖股票的最佳时机II二、55. 跳跃游戏三、跳跃游戏 II方法一方法二 1005. K 次取反后最大化的数组和总结 前言 今天是算法营的第28天,希望自己能够坚持下来! 今日任务&#x…...
建立时间和保持时间
建立时间 在时钟有效沿到来之前,数据必须维持一段时间保持不变,这段时间就是建立时间 Tsetup 1 基本概念 建立时间(Setup Time): 在 SystemVerilog 中,建立时间是指在时钟信号的有效边沿(例如…...
vue,router路由传值问题,引用官方推荐
参考贴https://blog.csdn.net/m0_57033755/article/details/129927829 根据官方文档的更新日志,建议使用state传值 官方文档更新日志 实际的console结果 传值 router.push({ name: KnowledgeDetail, state: { params } });接收值 const historyParams histor…...
AIDD-人工智能药物设计-AlphaFold系列:年终回顾,AlphaFold迄今为止的实际应用案例
AlphaFold系列:年终回顾,AlphaFold迄今为止的实际应用案例 01 引言 AlphaFold由 DeepMind 团队开发,最初在蛋白质结构预测竞赛 CASP 中惊艳亮相。随着 AlphaFold2 和后续版本的迭代进步,其精度和通用性不断提升,逐渐走…...
Scala语言的面向对象编程
Scala语言的面向对象编程 引言 在当今的软件开发中,面向对象编程(OOP)是一种非常强大且广泛使用的编程范式。Scala是一种现代编程语言,结合了面向对象编程和函数式编程的特性,非常适合用于大规模软件的开发。本文将介…...
MySQL学习记录1【DQL和DCL】
SQL学习记录 该笔记从DQL处开始记录 DQL之前值得注意的点 字段 BETWEEN min AND max 可以查询区间[min, max]的数值如果同一个字段需要满足多个OR条件,可以采取 字段 IN(数值1, 数值2, 数值3....)LIKE语句 字段 LIKE ___%%% 表示模糊匹配,_匹配一个字段…...
验证码转发漏洞
开发人员有时候会以数组的形式接收用户的手机号并遍历执行,这时就可以在注册或登录页面填写两个手机号并点击发送验证码,这两个手机号会同时收到相同验证码,可以用任意一个手机号登录或注册,即验证码转发漏洞。 1、burpsuite内置…...
使用 C++ 实现神经网络:从基础到高级优化
引言 在现代机器学习中,神经网络已经成为最重要的工具之一。虽然 Python 提供了诸如 TensorFlow、PyTorch 等强大的机器学习库,但如果你想深入理解神经网络的实现原理,或者出于某些性能、资源限制的考虑,使用 C 来实现神经网络会是…...
【WRF运行报错】总结WRF运行时报错及解决方案(持续更新)
目录 ./real.exe错误1:ERROR while reading namelist physics./wrf.exe错误1:FATAL CALLED FROM FILE: <stdin> LINE: 2419 Warning: too many input landuse types参考./real.exe 错误1:ERROR while reading namelist physics 执行./real.exe时,报错如下: taski…...
Kotlin语言的循环实现
Kotlin语言中的循环实现 Kotlin是一种现代的、跨平台的编程语言,广泛应用于Android开发、后端服务及多种其他软件开发领域。与Java类似,Kotlin也支持多种循环结构,包括for循环、while循环和do while循环。掌握这些循环结构是每个Kotlin开发者…...
基于CNN的人脸识别考勤管理系统实现
随着技术的不断进步,人脸识别技术已经在各行各业得到了广泛的应用,尤其在 考勤管理 上,它提供了更加智能、便捷、精准的解决方案。本篇博客将介绍如何基于 PyQt5 和 MySQL 实现一个 人脸识别考勤系统,并通过具体代码展示如何通过图…...
Android基于回调的事件处理
Android 中的回调机制:基于回调的事件处理详解 在 Android 开发中,回调(Callback)是一种常见的事件处理机制,主要用于异步操作和事件通知。与传统的基于监听器的事件处理相比,回调机制更加灵活、通用&…...
postgis和地理围栏
postgis postgis是pg数据库的一个插件,除原数据类型外(int varchar)、新增了空间数据类型(geography和geometry)。比如我们新建一张道路表road(字段有名称varchar、建设时间timestamp、地理位置geometry),可以将道路名字、建设时间存进去,同…...
《鸿蒙系统AI技术:筑牢复杂网络环境下的安全防线》
在当今数字化时代,复杂网络环境给智能系统带来了诸多安全挑战,而鸿蒙系统中的人工智能技术却展现出强大的安全保障能力,为用户在复杂网络环境中的安全保驾护航。 微内核架构:安全基石 鸿蒙系统采用微内核架构,将核心…...
SQL SERVER__RSN 恢复的深入解析
1. RSN 的工作原理 RSN 是 SQL Server 内部用于跟踪和管理备份和恢复操作顺序的编号。每次数据库备份(包括完整备份、差异备份和事务日志备份)都会生成一个唯一的 RSN。SQL Server 在恢复过程中使用 RSN 来确保备份文件按正确的顺序应用,从而…...
面试加分项:Android Framework PMS 全面概述和知识要点
在Android面试时,懂得越多越深android framework的知识,越为自己加分。 目录 第一章:PMS 基础知识 1.1 PMS 定义与工作原理 1.2 PMS 的主要任务 1.3 PMS 与相关组件的交互 第二章:PMS 的核心功能 2.1 应用安装与卸载机制 2.2 应用更新与版本管理 2.3 组件管理 第…...
Http协议封装
Myhttp封装http协议 源代码 #include <iostream> #include <cstring> #include <string> #include <thread> #include <atomic> #include <fstream> // 添加文件操作头文件#ifdef _WIN32 #include <winsock2.h> #include <ws2t…...
el-date-picker 禁用一个月前、一个月后(当天之后)的时间 datetimerange
文章目录 功能需求今天是 2025-01-09示例1示例2 代码 Vue2 功能需求 时间范围选择器,最大时间选择尺度为一个月。 今天是 2025-01-09 示例1 选择 2025-01-02 日 禁用未来日期(2025-01-09之后日期) 禁用上月2号(31日之前&#…...
《jEasyUI 格式化列》
《jEasyUI 格式化列》 引言 jEasyUI 是一款流行的开源jQuery UI库,旨在简化Web用户界面(UI)的开发。在jEasyUI中,格式化列是一种常见且强大的功能,它允许开发者根据需要自定义表格列的显示格式。本文将详细介绍jEasyUI…...
城通网盘直链解析:三步实现免费高速下载的完整方案
城通网盘直链解析:三步实现免费高速下载的完整方案 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 还在为网盘下载速度慢而烦恼吗?ctfileGet为你提供了一个智能解决方案…...
自动化内容创作:OpenClaw+Qwen3.5-9B批量处理游记照片生成博客
自动化内容创作:OpenClawQwen3.5-9B批量处理游记照片生成博客 1. 为什么需要自动化内容创作流水线 去年夏天我从西藏旅行回来,手机里存了800多张照片。当我坐在电脑前准备写游记时,面对海量素材突然感到无从下手——每张照片都需要回忆拍摄…...
[复现]神经网络(NN)+模型预测控制(MPC)算法、四旋翼无人机+非线性机器人汽车系统研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
C++ 智能指针的线程安全问题
C智能指针的线程安全问题探析 在现代C开发中,智能指针作为资源管理的利器,极大简化了内存管理。当多线程环境遇上智能指针,其线程安全问题便成为开发者必须直面的挑战。本文将深入探讨智能指针在多线程场景下的潜在风险,帮助开发…...
Linux文件偏移量与lseek()系统调用详解
1. 文件读写位置基础概念在Linux系统中,每次打开一个文件时,内核都会维护一个称为"文件偏移量"的指针。这个指针决定了下一个read()或write()操作将从文件的哪个位置开始执行。理解这个机制对于进行精确的文件操作至关重要。文件偏移量从0开始…...
用Python给双足机器人做个“不倒翁”大脑:线性倒立摆仿真入门(附完整代码)
用Python给双足机器人做个“不倒翁”大脑:线性倒立摆仿真入门(附完整代码) 当你在公园里看到小朋友玩不倒翁时,有没有想过双足机器人也需要类似的"不倒"能力?线性倒立摆模型(LIPM)就是…...
基于R语言的自动数据收集:网络抓取和文本挖掘实用指南【1.7】
3.5 XML和R的实践现在让我们转到实际例子。XML文件在R会话中如何查看、如何导入、如何访问,以及如何把来自XML文档的信息转化为更便于进一步图形化或统计化分析的数据结构,例如常规的数据框(data frame)呢?正如我们前面…...
基于OpenCV的航天器自主对接算法原型
南加州大学SURE项目学生开发算法原型,助力航天器对接自动化 作为在新泽西州长大、并在加拿大就读寄宿学校的学生,Derek Chibuzor年少时经常乘坐飞机。这段旅行经历激发了他对飞行的持久兴趣。进入南加州大学后,Chibuzor选择主修航空航天工程。…...
为什么工业 AI 必须引入本体论?
如果你只用大语言模型(LLM)写周报、画插图、做视频,你只需要关心它聪不聪明。但如果你要用它去设计一座造价上亿的芯片工厂、去控制百万集群算力中心的液冷系统。你就必须回答:AI 凭什么保证绝对不出错?大模型的数学本…...
