IP地址、子网掩码、网络地址、广播地址、IP网段
文章目录
- IP地址
- IP地址分类
- 子网掩码
- 网络地址
- 广播地址
- IP网段
本文主要讨论iPv4地址。
IP地址
实际的 IP 地址是一串32 比特的数字,按照 8 比特(1 字节)为一组分成 4 组,分别用十进制表示然后再用圆点隔开,这就是我们平常经常见到的 IP 地址格式。
IP地址分类
| 分类 | 范围 | 网络号 | 主机号 | 地址开始以(位) | 默认子网掩码 | 用途 |
|---|---|---|---|---|---|---|
| A类 | 1.0.0.0 - 126.0.0.0 | 前8位 | 后24位 | 以0开始 | 255.0.0.0 | 用于大型组织和互联网服务提供商 |
| B类 | 128.0.0.0 - 191.255.0.0 | 前16位 | 后16位 | 以10开始 | 255.255.0.0 | 用于中型组织和互联网服务提供商 |
| C类 | 192.0.0.0 - 223.255.255.0 | 前24位 | 后8位 | 以110开始 | 255.255.255.0 | 用于小型组织和互联网服务提供商 |
| D类 | 224.0.0.0 - 239.255.255.255 | - | - | 以1110开始 | - | 用于多播通信 |
| E类 | 240.0.0.0 - 255.255.255.255 | - | - | 以1111开始 | - | 保留给未来使用 |

注意事项:只有A,B,C有网络号和主机号之分,D类地址和E类地址没有划分网络号和主机号
分类中的特殊IP地址:
- 224.0.0.0 - 239.255.255.255:多播地址,用于将数据包同时发送给一组设备。
- 255.255.255.255:广播地址,用于将数据包发送给网络中的所有设备。
不在分类中的IP地址:
这些地址被保留,不用于公共互联网。它们用于特殊目的,如私有网络、回环测试等。
一些常见的保留地址包括:
- 0.0.0.0:表示当前网络中的所有设备。
- 127.0.0.0 - 127.255.255.255:用于回环测试,即将数据包发送给自身进行测试。
- 169.254.0.0 - 169.254.255.255:用于自动配置(例如,当设备无法获取 DHCP 分配的 IP 地址时)。
公网IP地址:
IP地址是由IANA统一分配的,以保证任何一个IP地址在Internet上的唯一性。这里的IP地址是指公网IP地址。
私网IP地址:
实际上一些网络不需要连接到Internet,只需要同一网络中的网络设备的IP地址不冲突即可。
在IP地址空间里,A、B、C三类地址中各预留了一些地址专门用于上述情况,称为私网IP地址。范围如下:
- A类:10.0.0.0 - 10.255.255.255
- B类:172.16.0.0 - 172.31.255.255
- C类:192.168.0.0 - 192.168.255.255
子网掩码
子网掩码是一个32位的二进制数字,用于划分IP地址的网络部分和主机部分。
子网掩码中的连续的1表示网络部分,连续的0表示主机部分。子网掩码的长度可以用斜线后面的数字表示,如/24,表示子网掩码中网络部分的长度为24位,主机部分的长度为8位。
将子网掩码与IP地址进行逻辑与运算,可以确定网络地址和主机地址的界限。
子网掩码的作用:
- 确定网络地址:通过与IP地址进行逻辑与运算,子网掩码可以将IP地址中的主机部分置为0,从而得到该IP地址所属的网络地址。
- 确定主机地址范围:子网掩码的长度决定了主机地址的范围,长度为N的子网掩码可以支持2^(32-N)个主机(需排除网络地址、广播地址)。
例如,对于IP地址192.168.0.10和子网掩码255.255.255.0 (/24),将它们进行逻辑与运算,可以得到网络地址192.168.0.0,主机地址范围为192.168.0.1 - 192.168.0.254。
常见的子网掩码有以下几种:
| 子网掩码 | 可容纳主机数 | 描述 |
|---|---|---|
| /32 | 0 | 用于单个主机 |
| /24 | 约256 | 常用于小型网络 |
| /16 | 约65536 | 常用于中型网络 |
| /8 | 约 16777216 | 常用于大型网络 |
通过合理配置子网掩码,可以对IP地址进行灵活的分割和管理,实现子网划分、路由等网络功能。
网络地址
网络地址是指一个网络的标识符,它用于对区分不同网络进行归类和寻址。
在一个网络中,所有的主机都必须具有相同的网络地址,这样才能互相通信。网络地址由IP地址的网络部分和子网掩码共同决定。子网掩码中的1对应的位表示网络部分,而0对应的位表示主机部分。通过将IP地址与子网掩码进行与运算,从而得到网络地址。
网络地址在网络中具有唯一性,在全球范围内必须是唯一的。这样才能确保在互联网中的不同网络之间进行正确的寻址和路由。
总结起来,网络地址是用来标识一个网络的唯一标识符,由 IP 地址和子网掩码共同决定,并通过逻辑运算得到。具有相同网络地址的主机可以进行通信,而不同网络地址的主机需要通过路由器进行中转才能相互通信。
广播地址
广播地址是在一个网络中用于向所有主机发送广播消息的特殊IP地址。在IPv4中,广播地址是在网络地址的基础上将网络地址的主机部分全部置为二进制的1的地址。
假设有一个IP地址为192.168.0.0,子网掩码为255.255.255.0 (/24)的网络。网络地址为192.168.0.0,广播地址就是将主机部分的所有位都设置为1,即192.168.0.255。
当向广播地址发送数据包时,该数据包会被网络中的所有主机接收。这使得广播地址非常适合在局域网中进行群发通知、服务发现、资源共享等操作。例如,DHCP服务器可以使用广播地址来向局域网内的所有主机广播 DHCP 请求,以便分配 IP 地址。
需要注意的是,在现代网络中,广播地址的使用已经有所限制,因为广播消息可能导致网络拥塞和安全问题。因此,广播功能在许多网络设备上默认是禁用的,并且通常需要特殊权限进行配置和使用。
IP网段
IP 网段(IP subnet)(也有叫IP地址段)是将 IP 地址划分为多个子网络的过程。它允许网络管理员将可用的 IP 地址范围分配给不同的子网络,以满足网络的需求。通过划分 IP 地址为不同的子网,可以有效地管理和路由数据流量,增加网络的安全性和效率。
IP 网段通常由网络地址和子网掩码两个要素组成:
- 网络地址:用于标识网络的一部分 IP 地址
- 子网掩码:用于指定网络地址和主机地址的分界线。
通过IP网段可以得到以下信息:
- 子网掩码:用于确定网络地址和主机地址的边界。
- 网络地址:用于标识整个网络,是该地址段中所有主机共享的部分,它是通过将IP地址与子网掩码进行逻辑与运算得到的
- 起始地址:IP地址段中的第一个可用地址。
- 截止地址:IP地址段中的最后一个可用地址。
- 广播地址:地址段中的最后一个地址,用于向整个网络发送广播消息。
- 主机数量:根据子网掩码的长度,可以确定地址段中可用的主机数量(需排除网络地址和广播地址)。
- IP地址范围:通过网络地址和子网掩码,可以确定地址段中总的用的IP地址范围。
- 可用的IP地址范围:通过网络地址和子网掩码,可以确定地址段中可用的IP地址范围(需排除网络地址和广播地址)。
这些信息可以帮助您进行网络规划和管理,确保正确配置和分配IP地址。
举例分析:
有一IP网段192.168.0.2/24。
分析可得到:
-
子网掩码:
通过斜线后面的数字24,我们知道子网掩码的长度为24位,可以转化为全1的二进制数:11111111.11111111.11111111.00000000,以点分十进制表示为255.255.255.0,这就是子网掩码。
-
网络地址:
网络地址是通过对IP地址进行逻辑与运算得到的。将IP地址192.168.0.2和子网掩码255.255.255.0进行逻辑与运算,得到网络地址192.168.0.0。因此,网络地址就是192.168.0.0.
-
起始地址:
IP地址段中的第一个可用地址为192.168.0.2,所以起始地址为192.168.0.2。
-
截止地址:
IP地址段中的最后一个可用地址为192.168.0.224,所以截止地址为192.168.0.224。
-
广播地址:
广播地址是在网络地址的基础上将网络地址的主机部分全部置为二进制的1。网络地址为192.168.0.0,将主机部分所有位设置为1,得到广播地址为192.168.0.255。
-
主机数量:
根据子网掩码的长度,我们知道主机部分的位数是8位(32-24=8)。主机数量等于2^8-1=254(网络地址不在地址段中,广播地址为地址段中的最后一个地址,所以要减去1)。
-
IP地址范围:
IP地址范围为192.168.0.2 - 192.168.0.255。
-
可用的IP地址范围:
可用的IP地址范围是排除了网络地址和广播地址后的主机地址范围。可用的IP地址范围为192.168.0.2 - 192.168.0.254。
相关文章:
IP地址、子网掩码、网络地址、广播地址、IP网段
文章目录 IP地址IP地址分类子网掩码网络地址广播地址IP网段 本文主要讨论iPv4地址。 IP地址 实际的 IP 地址是一串32 比特的数字,按照 8 比特(1 字节)为一组分成 4 组,分别用十进制表示然后再用圆点隔开,这就是我们平…...
ffmpeg-android studio创建jni项目
一、创建native项目 1.1、选择Native C 1.2、命名项目名称 1.3、选择C标准 1.4、项目结构 1.5、app的build.gradle plugins {id com.android.application }android {compileSdk 32defaultConfig {applicationId "com.anniljing.ffmpegnative"minSdk 25targetSdk 32…...
智慧公厕是将数据、技术、业务深度融合的公共厕所敏捷化“操作系统”
文明社会的进步离不开公共设施的不断创新和提升。而在这些公共设施中,公共厕所一直是一个备受关注和改善的领域。近年来,随着智慧城市建设的推进,智慧公厕成为了城市管理的重要一环。智慧公厕不仅仅是为公众提供方便和舒适的便利设施…...
JVM中JAVA对象和数组内存布局
对象 数组 在Java中,所有的对象都是一种特殊的数组,它们的元素可以是基本数据类型、其他对象引用或者其他任何类型。Java对象和数组的内存布局包含以下部分: 1.对象头(Object Header) 每个Java对象都有一个对象头&am…...
【2023年数学建模国赛】赛题发布
2023数学建模国赛赛题已经发布啦,距离赛题发布已经过去三个小时了,大家是否已经确定题目呢?学姐后续会持续更新赛题思路与代码~...
Java HashMap源码学习
Java HashMap源码学习 基本使用 包含创建,添加,删除,迭代,打印 val map java.util.HashMap<Int, Int>() map.put(1, 2) map.put(2, 2) map.put(3, 2) map.remove(1) map.forEach {println("it.key${it.key}, it.va…...
Gin中用于追踪用户的状态的方法?!!!
Gin中的Cookie和Session的用法 文章目录 Gin中的Cookie和Session的用法介绍Cookie代码演示 Session代码展示 介绍 cookie 和 session 是 Web 开发中常用的两种技术,主要用于跟踪用户的状态信息。 Cookie func (c *Context) Cookie(name string, value string, max…...
HTTP代理与HTTPS代理在工作流程上有哪些区别
HTTP代理和HTTPS代理都是常见的代理技术,可以实现隐藏客户端IP地址、突破网络封锁、加速网站访问、过滤网络内容等功能。本文将介绍HTTP代理和HTTPS代理在工作流程上的区别。 HTTP代理的工作流程 客户端向代理服务器发送HTTP请求 当客户端需要访问某个网站时&#x…...
Docker从认识到实践再到底层原理(二-2)|Namespace+cgroups
前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏…...
算法的概述
算法分析: 解决同一问题的算法可以有多种。 我们希望从中选出最优的算法,效率高或者存储空间小。为此,需要对算法进行评估,分析。 通常考虑两个度量: 1、 时间复杂度:算法运行时需要的总步数,…...
菜鸟教程《Python 3 教程》笔记(19):错误与异常
菜鸟教程《Python 3 教程》笔记(19) 19 错误和异常19.1 assert(断言)19.2 异常处理19.2.1 try/except19.2.2 try/except...else19.2.3 try-finally 语句 19.3 抛出异常19.4 用户自定义异常19.5 清理行为19.5.1 定义清理行为19.5.2…...
空气净化器上亚马逊美国站需要办理什么认证?空气净化器UL867测试报告如何办理?
空气净化器又称“空气清洁器”、空气清新机、净化器,是指能够吸附、分解或转化各种空气污染物(一般包括PM2.5、粉尘、花粉、异味、甲醛之类的装修污染、细菌、过敏原等),有效提高空气清洁度的产品,主要分为家用 、商用…...
SpringBoot的测试方案
写完代码后,测试是必不可少的步骤,现在来介绍一下基于SpringBoot的测试方法。 基于SpringBoot框架写完相应功能的Controller之后,然后就可以测试功能是否正常,本博客列举MockMvc和RestTemplate两种方式来测试。 准备代码 实体类…...
华为OD机考算法题:字符串解密
目录 题目部分 解读与分析 代码实现 题目部分 题目字符串解密题目说明给定两个字符串string1和string2。 string1是一个被加扰的字符串。string1由小写英文字母(a~z)和数字字符(0~9)组成,而加扰字符串由0~9、a~f 组…...
unity 锚点设置
锚点聚合情况: 一个2d物体的位置 pos x pos y 是中心点相对于锚点的偏移量: 中心点就是位置。 按住shift 锚点和中心点都会被设置: 按住Alt: 同时按住shift和alt : 中心点 锚点 UI元素在对应的位置上。 锚点拉伸情况…...
Hadoop:HDFS--分布式文件存储系统
目录 HDFS的基础架构 VMware虚拟机部署HDFS集群 HDFS集群启停命令 HDFS Shell操作 hadoop 命令体系: 创建文件夹 -mkdir 查看目录内容 -ls 上传文件到hdfs -put 查看HDFS文件内容 -cat 下载HDFS文件 -get 复制HDFS文件 -cp 追加数据到HDFS文件中 -appendTo…...
自定义封装异步任务组件,实现FutureTask功能
FutureTask 在 JDK1.8 后的异步编排API中的CompletableFuture,提供了 异步任务的成功回调、异常回调。 public class FutureTaskTest {public static void main(String[] args) throws Exception {CompletableFuture<String> future CompletableFuture.sup…...
【区块链 | IPFS】IPFS节点搭建、文件上传、节点存储空间设置、节点上传文件chunk设置
一、创建ipfs节点 通过ipfs init在本地计算机建立一个IPFS节点 本文有些命令已经执行过了,就没有重新初始化。部分图片拷贝自先前文档,具体信息应以实物为准 ipfs init initializing IPFS node at /Users/CHY/.ipfs generating 2048-bit RSA keypair.…...
【autodesk】浏览器中渲染rvt模型
使用Forge完成渲染 Forge是什么 为什么能够渲染出来rvt模型 Forge是由Autodesk开发的一套云端开发平台和工具集。在Forge平台中,有一个名为"Model Derivative"的服务,它可以将包括RVT(Revit)在内的多种BIM(…...
Python超入门(1)__迅速上手操作掌握Python
# 1.第一个代码:输出语句 # 1.第一个代码:输出语句 print("My dogs name is Huppy!") print(o----) print( ||| ) print("*" * 10) """ 输出结果: My dogs name is Huppy! o----||| ********** "&…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案
一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题
分区配置 (ptab.json) img 属性介绍: img 属性指定分区存放的 image 名称,指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件,则以 proj_name:binary_name 格式指定文件名, proj_name 为工程 名&…...
【笔记】WSL 中 Rust 安装与测试完整记录
#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统:Ubuntu 24.04 LTS (WSL2)架构:x86_64 (GNU/Linux)Rust 版本:rustc 1.87.0 (2025-05-09)Cargo 版本:cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...
华为OD机考-机房布局
import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist
现象: android studio报错: [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决: 不要动CMakeLists.…...
深度学习之模型压缩三驾马车:模型剪枝、模型量化、知识蒸馏
一、引言 在深度学习中,我们训练出的神经网络往往非常庞大(比如像 ResNet、YOLOv8、Vision Transformer),虽然精度很高,但“太重”了,运行起来很慢,占用内存大,不适合部署到手机、摄…...
