深入理解IP子网掩码子网划分{作用} 以及 不同网段之间的ping的原理 以及子网掩码的区域划分
目录
子网掩码详解
子网掩码定义
子网掩码进一步解释
子网掩码的作用
计算总结表
子网掩码计算
子网掩码对应IP数量计算
判断IP是否在同一网段
1. 计算步骤
2. 示例
3. 关键点
总结
不同网段通信原理与Ping流程
1. 同网段通信
2. 跨网段通信
网段计算示例
3. Ping命令的作用
总结

子网掩码详解
子网掩码定义
- 子网掩码(Subnet Mask)是一个32位二进制数,用于标识IP地址中网络号和主机号的分界。
- 示例:
255.255.255.0(二进制:11111111.11111111.11111111.00000000)表示前24位为网络号。
- 示例:
-
ip地址分为两个部分
-
网络部分:标识子网,也就是网络位或者说网段
-
主机部分:标识主机
-
-
注意:单纯的ip地址段只是标识了ip地址的种类
-
从网络部分或主机部分都无法辨识一个ip所处的子网
-
例:172.16.10.1与172.16.10.2并不能确定二者处于同一子网
-
子网掩码进一步解释
- 所谓"子网掩码",就是表示子网络特征的一个参数。
- 它在形式上等同于IP地址。
- 也是一个32位二进制数字,它的网络部分全部为1,主机部分全部为0。
- 比如,IP地址172.16.10.1。
如果已知网络部分是前24位
主机部分是后8位
上面说的是二进制
那么子网络掩码就是11111111.11111111.11111111.00000000
写成十进制就是255.255.255.0。

子网掩码的作用
- 划分网络:确定IP地址的网络部分和主机部分。
- 路由决策:路由器根据子网掩码判断目标是否在同一网段。
- 减少广播域:分割广播域,优化网络性能。
- 决定了一个网段的大小
- 网段大小决定了有多少个ip地址可以用,网段越大,ip地址越多
ip地址:192.168.2.110 子网掩码:255.255.255.0
上面两个还有一个等效的写法:192.168.2.110/24

计算总结表
| CIDR值 | 子网掩码 | 主机位数 | 总地址数 | 可用地址数 | 常见场景 |
|---|---|---|---|---|---|
| /8 | 255.0.0.0 | 24 | 16,777,216 | 16,777,214 | 国家级网络 |
| /16 | 255.255.0.0 | 16 | 65,536 | 65,534 | 中型企业 |
| /24 | 255.255.255.0 | 8 | 256 | 254 | 家庭/小型办公室 |
怎么确定网段的大小呢,就要看子网掩码。
8位、16位、24位等就是代表子网掩码的值的。
数字越小的,表示网段越大
192.168.2.118/24 10.0.0.0/8 172.16.0.0/16
子网掩码计算
- 步骤示例(划分
192.168.1.0/24为4个子网):- 确定需要的主机数:每个子网至少支持30台设备 → 主机号需5位(2^5=32,保留全0和全1地址)。
- 子网掩码:原为
/24(255.255.255.0),新增2位网络号 → 变为/26(255.255.255.192)。 - 子网划分结果:
- 子网1:192.168.1.0/26(可用地址1-62)
- 子网2:192.168.1.64/26(可用地址65-126)
- 子网3:192.168.1.128/26(可用地址129-190)
- 子网4:192.168.1.192/26(可用地址193-254)
子网掩码对应IP数量计算
255.255.255.0前面的255.255.255对应二进制就是24个1。
也就是对应的ip地址的前面24位是不变的,那么ip地址的这24位就是网络位。
剩余的8位是主机位,网络位不变,主机位是可变的,可变的ip数量。
就是这个网段的ip地址数量,共2的8次方=256个,就可以写为172.16.10.1/24
但是172.16.10.0和172.16.10.255都被保留下来不让主机使用
172.16.10.0作为网络号,通过网络号可以找到这个网络号对应网段的网络了,172.16.10.255是广播地址,这个广播地址我们一会说。
也就是可用ip地址个数为256-2=254个。
所以ip协议有两个作用
- 一个是为每一台计算机分配IP地址
- 另一个是确定哪些地址在同一个子网络。
判断IP是否在同一网段
1. 计算步骤
- 将IP地址和子网掩码转换为二进制。
- 对两者进行按位AND运算,得到网络地址。
- 比较两个IP地址的网络地址是否相同。
2. 示例
问题:判断以下两个IP地址是否在同一个子网。
- IP地址1:172.16.10.1
- IP地址2:172.16.10.2
- 子网掩码:255.255.255.0
计算过程:
-
转换为二进制:
- IP地址1:
10101100.00010000.00001010.00000001 - IP地址2:
10101100.00010000.00001010.00000010 - 子网掩码:
11111111.11111111.11111111.00000000
- IP地址1:
-
按位AND运算:
- IP地址1与子网掩码:
10101100.00010000.00001010.00000001 (172.16.10.1) AND 11111111.11111111.11111111.00000000 (255.255.255.0) ----------------------------------- 10101100.00010000.00001010.00000000 (172.16.10.0) - IP地址2与子网掩码:
10101100.00010000.00001010.00000010 (172.16.10.2) AND 11111111.11111111.11111111.00000000 (255.255.255.0) ----------------------------------- 10101100.00010000.00001010.00000000 (172.16.10.0)
- IP地址1与子网掩码:
-
比较网络地址:
- 两个IP地址的网络地址均为
172.16.10.0。
- 两个IP地址的网络地址均为
结论:两个IP地址在同一个子网中。
3. 关键点
- 子网掩码的作用:用于划分IP地址的网络部分和主机部分。
- 按位AND运算:通过逻辑运算提取网络地址。
- 网络地址相同:若两个IP地址的网络地址相同,则它们在同一个子网中。
总结
通过将IP地址和子网掩码转换为二进制并进行按位AND运算,可以快速判断两个IP地址是否在同一个子网中。这种方法简单高效,是网络配置和故障排查中的常用技巧。
不同网段通信原理与Ping流程
1. 同网段通信
- 原理:同一网段的IP地址,物理线路接通后可以直接通信。
- 流程:
- 设备A(192.168.1.10/24)向设备B(192.168.1.20/24)发送数据包。
- 检查目标IP是否在同一子网(网络号相同)。
- 通过ARP协议获取目标MAC地址。
- 直接通过交换机或Hub传输数据。
2. 跨网段通信
- 原理:不同网段的IP地址,即使物理线路接通,也不能直接通信,需要通过路由器转发。
- 流程:
- 设备A(192.168.1.10/24)向设备C(10.0.0.5/24)发送数据包。
- 发现目标IP不在同一子网。
- 将数据包发送至默认网关(如192.168.1.1)。
- 网关路由器根据路由表转发至目标网络。
- 目标网络的路由器通过ARP找到设备C并交付数据。
网段计算示例
- 问题:网络位25位,主机位7位,判断两个IP地址是否在同一网段。
- 计算过程:
- IP地址1:192.168.100.126
- 二进制:
11000000 10101000 01100100 01111110 - 子网掩码:
11111111 11111111 11111111 10000000(255.255.255.128) - 逻辑与运算结果:
192.168.100.0
- 二进制:
- IP地址2:192.168.100.129
- 二进制:
11000000 10101000 01100100 10000001 - 子网掩码:
11111111 11111111 11111111 10000000(255.255.255.128) - 逻辑与运算结果:
192.168.100.128
- 二进制:
- IP地址1:192.168.100.126
- 结论:两个IP地址的网络号不同(192.168.100.0 vs 192.168.100.128),不在同一网段,无法直接通信。
3. Ping命令的作用
- 验证连通性:通过发送ICMP Echo Request报文,检测目标设备是否可达。
- 路径诊断:结合
tracert(Windows)或traceroute(Linux)命令,分析数据包从源到目标的路径,帮助排查网络故障。
总结
- 同网段通信:直接通过ARP和交换机完成。
- 跨网段通信:依赖路由器转发,涉及默认网关和路由表。
- 网段计算:通过子网掩码和逻辑与运算判断IP地址是否在同一网段。
- Ping命令:用于测试连通性和诊断网络路径。
通过以上内容,您可以更好地理解不同网段通信的原理、网段计算方法以及Ping命令的实际应用。
喜欢本文的请动动小手点个赞,收藏一下,有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。
相关文章:
深入理解IP子网掩码子网划分{作用} 以及 不同网段之间的ping的原理 以及子网掩码的区域划分
目录 子网掩码详解 子网掩码定义 子网掩码进一步解释 子网掩码的作用 计算总结表 子网掩码计算 子网掩码对应IP数量计算 判断IP是否在同一网段 1. 计算步骤 2. 示例 3. 关键点 总结 不同网段通信原理与Ping流程 1. 同网段通信 2. 跨网段通信 网段计算示例 3. P…...
rust 前端npm依赖工具rsup升级日志
rsup是使用 rust 编写的一个前端 npm 依赖包管理工具,可以获取到项目中依赖包的最新版本信息,并通过 web 服务的形式提供查看、升级操作等一一系列操作。 在前一篇文章中,记录初始的功能设计,自己的想法实现过程。在自己的使用过…...
2.2 STM32F103C8T6最小系统板的四种有关固件的开发方式
2.2.1 四种有关固件的开发方式 四种有关于固件的开发方式从时间线由远及近分别是:寄存器开发、标准外设驱动库开发、硬件抽象层库开发、底层库开发。 四种开发方式各有优缺点,可以参考ST官方的测试与说明。 1.寄存器开发 寄存器编程对于从51等等芯片过渡…...
【C++】 stack和queue以及模拟实现
一、stack及其模拟实现 1.1 stack介绍 stack是一种容器适配器,专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行 元素的插入与提取操作。stack是作为容器适配器被实现的,容器适配器即是对特定类封装作为其底层的容器&am…...
python与C系列语言的差异总结(2)
Python有很多表达布尔值的方式,布尔常量False、0、Python零值None、空值(如空的列表[]和空字符串""),都被视为False。布尔常量True和其他一切值都被视为True。但不相等。这个自由度相比C类语言更加高。 if (not None):…...
Linux之文件系统
1.前言 文件 内容属性 文件分为被打开的文件(跟基础IO有关,在内存上)和没有被打开的文件(在磁盘上)。 在磁盘上找没有被打开的文件属于文件系统的工作 2.对硬件的理解 2.1 磁盘,服务器,机柜,机房 1.磁…...
LeetCode刷题 -- 23. 合并 K 个升序链表
小根堆排序与合并 K 个有序链表的实现 1. 介绍 本技术文档详细介绍了如何使用 小根堆(Min Heap) 实现 K 个有序链表的合并。 核心思想是: 使用 小根堆 维护当前最小的节点。每次取出堆顶元素(最小值)加入合并链表&…...
DeepSeek在MATLAB上的部署与应用
在科技飞速发展的当下,人工智能与编程语言的融合不断拓展着创新边界。DeepSeek作为一款备受瞩目的大语言模型,其在自然语言处理领域展现出强大的能力。而MATLAB,作为科学计算和工程领域广泛应用的专业软件,拥有丰富的工具包和高效…...
mapbox基础,使用geojson加载fill-extrusion三维填充图层
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️mapboxgl.Map style属性1.3 ☘️fill-extrusion三维填充图层样式二、�…...
基于 SpringBoot 的 “电影交流平台小程序” 系统的设计与实现
大家好,今天要和大家聊的是一款基于 SpringBoot 的 “电影交流平台小程序” 系统的设计与实现。项目源码以及部署相关事宜请联系我,文末附上联系方式。 项目简介 基于 SpringBoot 的 “电影交流平台小程序” 系统设计与实现的主要使用者分为 管理员 和…...
单片机裸机编程-时机管理
对于 RTOS 实时操作系统,我们是通过 TASK(任务)进行底层操作的,这与裸机编程中的函数(fun)类似。不同的任务或函数实现不同的功能,在RTOS中,单片机有信号量、队列等不同任务之间的通…...
Flutter系列教程之(2)——Dart语言快速入门
目录 1.变量与类型 1.1 num类型 1.2 String类型 1.3 Object与Dynamic 1.4 类型判断/转换 1.5 变量和常量 2.方法/函数 3.类、接口、抽象类 3.1 类 3.2 接口 4.集合 4.1 List 4.2 Set 4.3 Map 5.总结 Dart语言的语法和Kotlin、Java有类似之处,这里就通…...
pyecharts介绍
文章目录 介绍安装pyecharts基本使用全局配置选项 折线图相关配置地图模块使用柱状图使用 介绍 echarts虑是个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可,而Pyhon是门富有表达力的语言&a…...
前缀和相关题目记录(未完待续...)
1 前缀和 一维前缀和是指对于一个数组 a a a,我们定义一个新的数组 s s s,其中每个元素 s [ i ] s[i] s[i] 表示从数组开头到第 i i i 个元素的累加和: s [ i ] a [ 1 ] a [ 2 ] ⋯ a [ i ] ∑ j 1 i a [ j ] s[i] a[1] a[2] \…...
Https解决了Http的哪些问题
部分内容来源:小林coding 详细解析 Http的风险 HTTP 由于是明文传输,所以安全上存在以下三个风险: 1.窃听风险 比如通信链路上可以获取通信内容,用户号容易没。 2.篡改风险 比如强制植入垃圾广告,视觉污染&#…...
OpenCV给图像添加噪声
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 如果你已经有了一张干净的图像,并希望通过编程方式向其添加噪声,可以使用 OpenCV 来实现这一点。以下是一个简单的例子&a…...
湖北中医药大学谱度众合(武汉)生命科技有限公司研究生工作站揭牌
2025年2月11日,湖北中医药大学&谱度众合(武汉)生命科技有限公司研究生工作站揭牌仪式在武汉生物技术研究院一楼101会议室举行,湖北中医药大学研究生院院长刘娅教授、基础医学院院长孔明望教授、基础医学院赵敏教授、基础医学院…...
欢乐力扣:快乐数
文章目录 1、题目描述2、思路1代码 1、题目描述 快乐数。 编写一个算法来判断一个数 n 是不是快乐数。 快乐数定义为:对于一个正整数,每次不断将其转化成 每位数字的平方和。 判断是否最终和会为1,是1就是快乐数,否则不是。 …...
【聊天室后端服务器开发】功能设计-框架与微服务
服务器功能设计 微服务思想应用 微服务架构 主要组成分析 客户端 客户端通过 HTTP 协议与网关进行交互,进行操作如用户注册、好友申请等客户端只需要知道网关的地址,无需关心后端服务的具体实现 网关 作为系统的统一入口,网关负责接收客…...
国标28181协议在智联视频超融合平台中的接入方法
一. 国标28181介绍 国标 28181 协议全称是《安全防范视频监控联网系统信息传输、交换、控制技术要求》,是国内视频行业最重要的国家标准,目前有三个版本: 2011 年:推出 GB/T 28181-2011 版本,为安防行业的前端设备、平…...
Cursor实现用excel数据填充word模版的方法
cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...
ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...
tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...
如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
