IP子网的划分
文章目录
- 一、子网掩码
- 1. 产生背景
- 2. 定义
- 3. 分类
- 二、VLSM算法
- 1. 得出下列参数
- 2. 计算划分结果
- 3. 举例子计算
- 三、常见子网划分对应关系
- 四、练习
- IP编址
- 题目
- 需求
- 解题
- 1. 192.168.1.100/28
- 2. 172.16.0.58/26
- 3. 25.83.149.222/25
- 4. 100.100.243.18/20
- 5. 10.100.100.100/10
首先可以看下思维导图,以便更好的理解接下来的内容。
一、子网掩码
1. 产生背景
在网络规划中,使用自然分类来划分网络规模可能导致大量IP地址的浪费。由于IPv4地址资源已经耗尽,寻找更有效的地址分配方案变得至关重要。

2. 定义
子网掩码是一个由32位连续的1或0组成的掩码,用来衡量IP地址中网络位的长度。其中,1对应网络位,0对应主机位。

3. 分类
- 主类掩码:这种掩码与自然分类方法相符,但会造成IP地址的浪费。
- 可变长子网掩码(VLSM):通过增加掩码长度,将一个大网段划分为多个子网,实现更灵活的地址分配。
- 无类域间路由(CIDR):通过缩短子网掩码,将多个较小网段聚合成一个更大的网段,提高路由表的效率。
二、VLSM算法
1. 得出下列参数
为了进行VLSM子网划分,需要计算以下参数:
- 掩码借位数:将原掩码中的0变为1的位数。
- 掩码剩余位数。
- 本段掩码剩余位数。
2. 计算划分结果
根据计算得到的参数,可以进行如下计算:
- 子网数: 2 ( 借位数 ) 2^{(借位数)} 2(借位数)
- 每个子网可用IP地址数: 2 ( 剩余位数 ) − 2 2^{(剩余位数)} - 2 2(剩余位数)−2
- 每两个子网的间隔位数: 2 ( 本段剩余位数 ) 2^{(本段剩余位数)} 2(本段剩余位数)
3. 举例子计算
举例:
8.130.45.215/20
0000 1000,1000 0010,0010 1101,1101 0111
看20他是属于那个地方,20是属于45的部分,将45转化成为二进制为00101101,前四位为固定值,因为在二进制取了4位,那么固定值就是0010 剩余位都是0为网络地址,剩余位都是1为广播地址
网络地址:0000 1000,1000 0010,0010 0000,0000 0000转化为十进制那么网络地址就是8.130.32.0
广播地址:0000 1000,1000 0010,0010 1111,1111 1111转化为十进制那么广播地址就是8.130.47.255
因为8.130.45.215为A类地址所以是借位数为20-8=12
子网数:2^借位数12=4096
每个子网有多少IP地址:2^剩余位数(32-20)=4096
每个子网有多少可用IP:4096-2=4094
子网范围:
8.0.0.0-8.0.15.255
8.0.16.0-8.0.31.255
…
8.255.240.0-8.255.255.255
举例:
192.168.197.100/28
1100 0000,1010 1000,1100 0101,0100 0100
看28在那个位置,28属于100的部分,将100转化为二进制0100 0100,前两位为固定值,因为在二进制取了4位,那么固定值就是0100,剩余位数都是0为网络地址,剩余位都是1为广播地址
网络地址:1100 0000,1010 1000,1100 0101,0100 0000转化为十进制那么网络地址就是:192.168.197.64
广播地址:1100 0000,1010 1000,1100 0101,0100 1111转化为十进制那么广播地址就是:192.168.197.79
因为192.168.197.100为C类IP地址所以是借位数是28-24=4
子网数:2^借位数4=16
每个子网有多少IP地址:2^剩余位数(32-28)=16
每个子网可用IP:16-2=14
子网范围:
192.168.197.0-192.168.197.15
192.168.197.16-192.168.167.31
…
192.168.197.240-192.168.197.255
三、常见子网划分对应关系
子网掩码:25,对应255.255.255.128,可用地址:126个。
子网掩码:26,对应255.255.255.192,可用地址:62个。
子网掩码:27,对应255.255.255.224,可用地址:30个。
子网掩码:28,对应255.255.255.240,可用地址:14个。
子网掩码:29,对应255.255.255.248,可用地址:6个。
子网掩码:30,对应255.255.255.252,可用地址:2个。
子网掩码:31,对应255.255.255.254,可用地址:2个(适用于PPP链路)。
子网掩码:32,对应255.255.255.255,可用地址:1个(适用于设备的Loopback接口)。
通过这些常见子网划分对应关系,可以更好地规划IP地址的分配。
四、练习
IP编址
题目
192.168.1.100/28
172.16.0.58/26
25.83.149.222/25
100.100.243.18/20
10.100.100.100/10
需求
每题分别计算
网络地址:
广播地址:
子网数:
每子网主机数:
每子网可用主机数:
子网范围:
解题
1. 192.168.1.100/28
每题分别计算
网络地址:192.168.1.96
广播地址:192.168.1.111
子网数:2借位数=24=16
每子网主机数:2剩余位2(32-28)=16
每子网可用主机数:14
子网范围:
192.168.1.0-192.168.1.15
192.168.1.16-192.168.1.31
192.168.1.32-192.168.1.47
192.168.1.48-192.168.1.63
192.168.1.64-192.168.1.79
192.168.1.80-192.168.1.95
192.168.1.96-192.168.1.111
192.168.1.112-192.168.1.127
192.168.1.128-192.168.1.143
192.168.1.144-192.168.1.159
192.168.1.160-192.168.1.175
192.168.1.176-192.168.1.191
192.168.1.192-192.168.1.207
192.168.1.208-192.168.1.223
192.168.1.224-192.168.1.239
192.168.1.240-192.168.1.255
2. 172.16.0.58/26
每题分别计算
网络地址:172.16.0.0
广播地址:172.16.0.63
子网数:2^借位数10=1024
每子网主机数:2^剩余位数=64
每子网可用主机数:62
子网范围:172.16.0.0-172.16.0.63
172.16.0.64-127.16.0.127
…
172.16.255.192-172.16.255.255
3. 25.83.149.222/25
每题分别计算
网络地址:25.83.149.128
广播地址:25.83.149.255
子网数:2^借位数17=131072
每子网主机数:2^剩余位数(32-25)=128
每子网可用主机数:126
子网范围:25.0.0.0-15.0.0.127
25.0.0.128.0-25.0.0.255
…
25.255.255.128-25.255.255.255
4. 100.100.243.18/20
每题分别计算
网络地址:100.100.240.0
广播地址:100.100.255.255
子网数:2^借位数12=4096
每子网主机数:2^剩余位(32-20)4096
每子网可用主机数:4094
子网范围:100.0.0.0-100.0.15.255
100.0.16.0-100.0.31.255
…
100.255.240.0-100.255.255.255
5. 10.100.100.100/10
每题分别计算
网络地址:10.64.0.0
广播地址:10.127.255.255
子网数:2^借位数=4
每子网主机数:2^剩余位数=4194304
每子网可用主机数:4194302
子网范围:10.0.0.0-10.63.255.255.255
10.64.0.0-10.127.255.255
10.128.0.0-10.191.255.255
10.192.0.0-10.255.255.255
如有不详或错误,敬请指出。
相关文章:
IP子网的划分
文章目录 一、子网掩码1. 产生背景2. 定义3. 分类 二、VLSM算法1. 得出下列参数2. 计算划分结果3. 举例子计算 三、常见子网划分对应关系四、练习IP编址题目需求解题1. 192.168.1.100/282. 172.16.0.58/263. 25.83.149.222/254. 100.100.243.18/205. 10.100.100.100/10 首先可以…...
弹性盒子的使用
一、定义 弹性盒子是一种用于按照布局元素的一维布局方法,它可以简便、完整、响应式地实现各种页面布局。 容器中存在两条轴,主轴和交叉轴(相当于我们坐标轴的x轴和y轴)。我们可以通过flex-direction来决定主轴的方向。 主轴(main axis&am…...
软件测试/测试开发丨Selenium 网页frame与多窗口处理
点此获取更多相关资料 本文为霍格沃兹测试开发学社学员学习笔记分享 原文链接:https://ceshiren.com/t/topic/27048 一、多窗口处理. 1.1、多窗口简介 点击某些链接,会重新打开⼀个窗⼜,对于这种情况,想在新页⾯上操作࿰…...
MySQL高阶语句(三)
一、NULL值 在 SQL 语句使用过程中,经常会碰到 NULL 这几个字符。通常使用 NULL 来表示缺失 的值,也就是在表中该字段是没有值的。如果在创建表时,限制某些字段不为空,则可以使用 NOT NULL 关键字,不使用则默认可以为空…...
链表OJ练习(2)
一、分割链表 题目介绍: 思路:创建两个链表,ghead尾插大于x的节点,lhead尾插小于x的节点。先遍历链表。最后将ghead尾插到lhead后面,将大小链表链接。 我们需要在创建两个链表指针,指向两个链表的头节点&…...
ssh常用操作
ssh常用操作 SSH是一种安全协议,ssh是该协议的客户端程序,openssh-server则是该协议的服务端程序 常用系统都自带了ssh客户端程序,服务端程序则可能要安装 密码远程登陆 前提:服务器安装了openssh-server,未安装时…...
从AD迁移至AAD,看体外诊断领军企业如何用网络准入方案提升内网安全基线
摘要: 某医用电子跨国集团中国分支机构在由AD向AzureAD Global迁移时,创新使用宁盾网络准入,串联起上海、北京、无锡等国内多个职场与海外总部,实现平滑、稳定、全程无感知的无密码认证入网体验,并通过合规基线检查,确…...
Flutter系列文章-Flutter在实际业务中的应用
不同场景下的解决方案 1. 跨平台开发: 在移动应用开发中,面对不同的平台(iOS和Android),我们通常需要编写两套不同的代码。而Flutter通过一套代码可以构建适用于多个平台的应用,大大提高了开发效率&#x…...
FPGA | Verilog仿真VHDL文件
当VHDL模块中有Generic块时,应该怎么例化? VHDL模块代码 entity GenericExample isgeneric (DATA_WIDTH : positive : 8; -- 泛型参数:数据宽度ENABLE_FEATURE : boolean : true -- 泛型参数:是否启用特定功能);Port ( clk : …...
微服务--Gatway:网关
routes: - id:order_route(路由唯一 标识,路由到order) uri:http://localhost:8020 #需要转发的地址 #断言规则(用于路由规则的匹配) predicates: -path/order-serv/** -pathlb://order-service # lb: 使用nacos中的本地…...
Django传递dataframe对象到前端网页
在django前端页面上展示的数据,还是使用django模板自带的语法 方式1 不推荐使用 直接使用 【df.to_html(indexFalse)】 使用to_html他会生成一个最基本的表格没有任何的样式,一点都不好看,如果有需要的话可以自行修改表格的样式,…...
iOS swift5 弹出提示文字(停留1~2s)XHToastSwift
CoderZhuXH/XHToastSwift - github // // XHToast.swift // XHToastSwiftExample // // Created by xiaohui on 16/8/12. // Copyright © 2016年 CoderZhuXH. All rights reserved. // 代码地址:https://github.com/CoderZhuXH/XHToastSwiftimport UIKit/*** Toast…...
Spring Bean 的生命周期,如何被管理的
实例化一个Bean,也就是我们通常说的new 按照Spring上下文对实例化的Bean进行配置,也就是IOC注入 如果这个Bean实现了BeanNameAware接口,会调用它实现的setBeanName(String beanId)方法,此处传递的是Spring配置文件中Bean的ID 如…...
MATLAB算法实战应用案例精讲-【概念篇】量子机器学习
目录 前言 几个高频面试题目 机器学习的方法论 知识储备 机器学习的实现...
【kubernetes】Argo Rollouts -- k8s下的自动化蓝绿部署
蓝绿(Blue-Green)部署简介 在现代软件开发和交付中,确保应用程序的平稳更新和发布对于用户体验和业务连续性至关重要。蓝绿部署是一种备受推崇的部署策略,它允许开发团队在不影响用户的情况下,将新版本的应用程序引入生产环境。 蓝绿部署的核心思想在于维护两个独立的环…...
vue Cesium接入在线地图
Cesium接入在线地图只需在创建时将imageryProvider属性换为在线地图的地址即可。 目录 天地图 OSM地图 ArcGIS 地图 谷歌影像地图 天地图 //矢量服务let imageryProvider new Cesium.WebMapTileServiceImageryProvider({url: "http://t0.tianditu.com/vec_w/wmts?s…...
OBS Studio 30.0 承诺在 Linux 上支持英特尔 QSV,为 DeckLink 提供 HDR 回放功能
导读OBS Studio 30.0 现已推出公开测试版,承诺为这款广受欢迎的免费开源截屏和流媒体应用程序提供多项令人兴奋的新功能,以及大量其他更改和错误修复。 OBS Studio 30.0 承诺在 Linux 上支持英特尔 QSV(快速同步视频)、WHIP/WebRT…...
springboot整合SpringSecurity
先写了一个配置类 给这个访问路径,加上角色权限 package com.qf.config;import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; impo…...
最近在搭建ELK日志平台时,logstash报错JSON parse error
直接进入正题,我在搭建elk日志,使用最简单的log4j2 socket json格式 输出到logstash. 但是logstash报错如下: [WARN ] 2023-08-30 10:15:17.766 [nioEventLoopGroup-2-2] jsonlines - JSON parse error, original data now in message field…...
某次护网红队getshell的经历
信息收集 某企业提供信息:企业官网的真实外网ip,内网ip 企业官网比较硬,从控股超过51%的子公司入手 通过企查查找到一堆控股高的子公司,通过ICP/IP地址/域名信息备案管理系统查找子公司官网,收集二级域名。通过google…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
tauri项目,如何在rust端读取电脑环境变量
如果想在前端通过调用来获取环境变量的值,可以通过标准的依赖: std::env::var(name).ok() 想在前端通过调用来获取,可以写一个command函数: #[tauri::command] pub fn get_env_var(name: String) -> Result<String, Stri…...
通过MicroSip配置自己的freeswitch服务器进行调试记录
之前用docker安装的freeswitch的,启动是正常的, 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...
【前端实战】如何让用户回到上次阅读的位置?
目录 【前端实战】如何让用户回到上次阅读的位置? 一、总体思路 1、核心目标 2、涉及到的技术 二、实现方案详解 1、基础方法:监听滚动,记录 scrollTop(不推荐) 2、Intersection Observer 插入探针元素 3、基…...
【仿生机器人】刀剑神域——爱丽丝苏醒计划,需求文档
仿生机器人"爱丽丝"系统架构设计需求文档 一、硬件基础 已完成头部和颈部硬件搭建 25个舵机驱动表情系统 颈部旋转功能 眼部摄像头(视觉输入) 麦克风阵列(听觉输入) 颈部发声装置(语音输出)…...
C# winform教程(二)----button
一、button的使用方法 主要使用方法几乎都在属性内,我们操作也在这个界面 二、作用 用户点击时触发事件,事件有很多种,可以根据需要选择。 三、常用属性 虽然属性很多,但是常用的并不多 3.常用属性 名称内容含义AutoSize自动调…...
