计算机网络:网络层 —— IPv4 协议的表示方法及其编址方法

文章目录

      • IPv4
        • IPv4的表示方法
        • IPv4的编址方法
          • 分类编址
            • A类地址
            • B类地址
            • C类地址
            • 可指派的地址数量
            • 一般不使用的特殊IPv4地址
          • 划分子网编址
            • 子网掩码
            • 默认子网掩码
          • 无分类编址方法
            • 地址掩码
            • 斜线记法
            • 无分类域间路由选择 CIDR

IPv4

IPv4(Internet Protocol version 4)是互联网上最常用的 IP 协议版本。是给因特网(Intemnet)上的每一个主机(或路由器)的每一个接口分配的一个在全世界范围内唯一的32比特的标识符。它是互联网传输层协议栈中的网络层协议,用于为网络中的设备分配唯一的 IP 地址,并在网络上传输数据

![[IPv4地址.png]]

IPv4 地址空间的有限性导致了 IP 地址短缺问题。IPv4 地址共有约 42 亿个,但是随着互联网的快速发展,这个数量已经远远不够。2011年2月3日,因特网号码分配管理局(Internet Assigned Numbers Authority,IANA)(由 ICANN 行使职能)宣布,IPv4 地址已经分配完毕。

IPv4的表示方法

IPv4 地址是由 32位二进制数 表示,通常以“点分十进制”(dotted decimal)的形式呈现,如 192.168.0.1。IPv4 地址由两部分组成,网络部分主机部分

  • 网络部分用来标识网络
  • 主机部分用来标识网络中的具体设备

![[IPv4的表示方法.png]]

IPv4的编址方法

IPv4地址的编址方法经历了三个历史阶段:

![[IPv4的编址方法发展.png]]

分类编址

IPv4 的分类编址方法将 32 比特的 IPv4 的地址划分为网络号部分主机号部分

  • 网络号:标志主机(或路由器)的接口所连接到的网络。同一个网络中,不同主机(或路由器)的接口的IPv4地址的网络号必须相同,表示它们属于同一个网络。

  • 主机号:标志主机(或路由器)的接口。同一个网络中,不同主机(或路由器)的接口的IPv4地址的主机号必须各不相同,以便区分各主机(或路由器)的接口

![[IPv4的分类编址.png]]

IPv4 的分类编址方法将 IPv4 地址分为了五类:

![[IPv4的分类编址类别.png]]

  • A类、B类和C类地址都是单播地址,只有单播地址可以分配给网络中的主机(或路由器)的各接口

  • 主机号为“全0”的地址是网络地址,不能分配给主机(或路由器)的各接口

  • 主机号为“全1”的地址是广播地址,不能分配给主机(或路由器)的各接口

A类地址

![[A类地址.png]]

  • 开头的八位组(第一个字节)的第一位必须是 0

  • 这一类地址主要用于大型网络,如企业或国家层面的网络。

  • A 类地址的第一个字节代表网络号,其余三个字节代表主机号。

  • 其地址范围是从 1.0.0.0126.255.255.255

  • 每个 A 类网络最多支持约 1677万(2^24)个主机。

本地环回测试地址,也被称为环回地址或本地回环地址,是一组特殊的IP地址,主要用于测试本机的网络配置和模拟网络通信。当需要测试本机上的网络应用程序或服务时,可以使用环回地址进行通信,数据报由本机进行接收和处理,不会发送到其他主机。

B类地址

![[B类地址.png]]

  • 开头的八位组的前两位必须是 10

  • B 类地址适合中型网络,如大学校园或大公司内部网络。

  • 前两个字节代表网络号,后两个字节代表主机号。

  • 其地址范围是从 128.0.0.0191.255.255.255

  • 每个 B 类网络最多支持约 65534(2^16 - 2)个主机。

C类地址

![[C类地址.png]]

  • 开头的八位组的前三位必须是 110

  • C 类地址通常用于小型网络,如家庭或小型办公室。

  • 前三个字节代表网络号,最后一个字节代表主机号。

  • 其地址范围是从 192.0.0.0223.255.255.255

  • 每个 C 类网络最多支持约 254(2^8 - 2)个主机。

可指派的地址数量

![[可指派的地址数量.png]]

  • D 类地址:

    • 开头的八位组的前四位必须是 1110
    • D 类地址用于多播通信,即将数据包发送给一组选定的接收者。
    • 其地址范围是从 224.0.0.0239.255.255.255
  • E 类地址:

    • 开头的八位组的前五位必须是 11110
    • E 类地址保留供实验和研究使用,不用于常规互联网通信
    • 其地址范围是从 240.0.0.0255.255.255.255
一般不使用的特殊IPv4地址

如下 IPv4 地址一般在特殊情况下使用

![[一般不使用的特殊IPv4地址.png]]

划分子网编址

随着更多的中小网络加入因特网,IPv4 分类编址方法不够灵活、容易造成大量IPv4地址资源浪费的缺点就暴露出来了,剩余的大量地址只能由该单位的同一个网络使用,而其他单位的网络不能使用。

![[申请新的网络号.png]]

申请新的网络号存在以下弊端

  • 需要等待很长的时间,并且要花费更多的费用
  • 即便申请到了两个新的网络号,其他路由器的路由表还需要新增针对这两个新的网络的路由条目。
  • 浪费原来已申请到的网络中剩余的大量地址

因此,划分子网编址方法对其进行改进(“打补丁”)

如果可以从 IPv4 地址的主机号部分借用一些比特作为子网号来区分不同的子网,就可以利用原有网络中剩余的大量 IPv4 地址,而不用申请新的网络地址了。

![[借用一些比特作为子网号.png]]

子网掩码

IPv4 地址的主机号部分借用一些比特作为子网号来区分不同的子网,就引入了一个新的概念:子网掩码,可以表明分类 IPv4 地址的主机号部分被借用了几个比特作为子网号。

IPv4 地址类似,子网掩码也是由 32比特 构成的。

  • 用左起多个连续的比特1对应 IPv4 地址中的网络号和子网号
  • 之后的多个连续的比特0对应 IPv4 地址中的主机号

将划分子网的IPv4地址与相应的子网掩码进行逐比特的逻辑与运算,就可得到该 IPv4 地址所在子网的网络地址。

![[IPv4地址与相应的子网掩码.png]]

只要给定了一个分类的 IPv4 地址及其相应的子网掩码就可以得出子网划分的全部细节

![[IPv4地址与相应的子网掩码划分.png]]

子网划分:

![[子网划分.png]]

  1. 原始网络:

    • 网络地址: 218.75.230.0
    • 子网掩码: 255.255.255.0
  2. 子网划分:

    • 从主机号中借用一位来形成子网号,使得每个子网拥有更多的地址。
    • 新的子网掩码变为: 255.255.255.128
  3. 子网0:

    • 网络地址: 218.75.230.0
    • 主机地址范围: 218.75.230.1218.75.230.126
    • 广播地址: 218.75.230.127
  4. 子网1:

    • 网络地址: 218.75.230.128
    • 主机地址范围: 218.75.230.129218.75.230.254
    • 广播地址: 218.75.230.255
  • 网络号: 是固定不变的,标识整个网络。
  • 子网号: 通过借用主机号的一位来区分不同的子网。
  • 主机号: 表示单个设备在网络内的唯一标识。
默认子网掩码

默认子网掩码是指在未划分子网的情况下使用的子网掩码

![[默认子网掩码.png]]

  • A 类地址:默认子网掩码为 255.0.0.0

  • B 类地址:默认子网掩码为 255.255.0.0

  • C 类地址:默认子网掩码为 255.255.255.0

无分类编址方法

IPv4 地址的划分子网编址方法在一定程度上缓解了因特网在发展中遇到的困难,但是数量巨大的C类网( 2 24 − 3 = 2097152 2^{24-3}= 2097152 2243=2097152)由于其每个网络所包含的地址数量太小( 2 8 = 256 2^8=256 28=256),因此并没有得到充分使用,而因特网的 IPv4 地址仍在加速消耗,整个 IPv4 地址空间面临全部耗尽的威胁。

为此,因特网工程任务组IETF又提出了采用无分类编址的方法,来解决 IPv4 地址资源紧张的问题,同时还专门成立 IPv6 工作组负责研究新版本的 IP,以切底解决 IPv4 地址耗尽问题。

1993年,因特网工程任务组IETF发布了无分类域间路由选择(Classless Inter-Domain Routing,CIDR)的 RFC 文档 [RFC1517~1519,RFC1520].

  • CIDR 消除了传统 A 类、B 类和 C 类地址以及划分子网的概念
  • CIDR 可以更加有效地分配 IPv4 地址资源,且可以在 IPv6 使用之前允许因特网的规模继续增长。

![[无分类编址方法发展.png]]

地址掩码

无分类编址方法使用的地址掩码与划分子网使用的子网掩码类似,由32比特构成。

  • 用左起多个连续的比特1对应IPv4地址中的网络前缀

  • 之后的多个连续的比特0对应IPv4地址中的主机号

  • 对于无分类编址的 IPv4 地址,仅从地址自身无法看出网络前缀和主机号各自的长度

无分类编址方法示例:
![[无分类编址方法.png]]
从二进制表示可以看出,地址掩码中连续的“1”位定义了网络前缀的长度。在这个例子中,连续的“1”位共有20位,因此网络前缀占用了20比特剩下的12比特则属于主机号部分

斜线记法

为了简便起见,可以不明确给出配套的地址掩码的点分十进制形式,而是在无分类编址的IPv4地址后面,加上斜线 "/" 在斜线,之后写上网络前缀所占的比特数量(也就是地址掩码中左起连续比特1的数量),这种记法称为斜线记法

如:128.14.35.7/20网络前缀为 20 比特主机号为 12 比特(32-20)

无分类域间路由选择 CIDR

无分类域间路由选择 CIDR 是将网络前缀都相同的、连续的多个无分类IPv4地址,组成一个CIDR地址块,只要知道CIDR地址块中的任何一个地址,就可以知道该地址块的以下全部细节:

  • 地址块中的最小地址
  • 地址块中的最大地址
  • 地址块中的地址数量
  • 地址块中聚合某类网络(A类、B类、C类)的数量
  • 地址掩码

****![[无分类域间路由选择 CIDR.png]]****

分类编址方法只能以 /8(A类网络)/16(B类网络)/24(C类网络) 为单位来分配,既不灵活,也容易造成 IPv4 地址的浪费。而使用 CIDR 的一个好处是,可以根据客户的需要分配适当大小的CIDR地址块,因此可以更加有效地分配 IPv4 的地址空间。

![[CIDR的好处1.png]]

使用 CIDR 的另一个好处是路由聚合(也称为构造超网

在如下图的例子中,我们对 R2 的路由表进行了聚合操作。具体来说,我们将五个子网的路由条目合并为一个单一的聚合路由条目
![[路由聚合.png]]

  1. 确定公共前缀:首先,我们需要找到这些子网地址的公共前缀。观察这些子网地址,我们可以看到它们的前缀都是 172.1。这意味着它们共享了前 16 位。

  2. 计算最长公共前缀:接下来,我们需要找出这些子网地址中最长的公共前缀。在这种情况下,最长公共前缀是 172.1.4,对应于前 22 位。

  3. 创建聚合路由:根据最长公共前缀,我们可以创建一个新的聚合路由条目。该条目的地址范围覆盖了所有的原始子网地址。在这个例子中,聚合后的路由条目是 172.1.4.0/22

最终,R2 的路由表中只有一个聚合路由条目 172.1.4.0/22,而不是原来的五个具体路由条目。这种聚合方式大大减小了路由表的规模,同时也降低了路由查找的时间复杂度。

  • 网络前缀越长,地址块越小,路由越具体

  • 若路由器查表转发分组时发现有多条路由条目匹配,则选择网络前缀最长的那条路由条目,这称为最长前缀匹配,因为这样的路由更具体。

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

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

相关文章

Amcor 如何借助 Liquid UI 实现SAP PM可靠性

背景介绍 安姆科是塑料行业的全球领军企业,该企业认识到 SAP 工厂维护(SAP PM)对于确保高效的维护管理的重要性。 在诸如制造业等高度依赖机械设备的行业中,SAP PM是一种通过数据驱动决策来最大限度减少停机时间、降低间接成本、…

玩转Docker | 使用Docker部署捕鱼网页小游戏

玩转Docker | 使用Docker部署捕鱼网页小游戏 一、项目介绍项目简介项目预览二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署捕鱼网页小游戏下载镜像创建容器检查容器状态下载项目内容查看服务监听端口安全设置四、访问捕鱼网页小游戏五、总结一、项目介绍…

没有对象来和我手撕红黑树吧

1. 红黑树的介绍 红黑树也是一种自平衡的二叉搜索树,在每一个节点增加了一个存储位来表示节点的颜色,可以是红色也可以是黑色,通过约束颜色来维持树的平衡,具有以下的性质: 每个节点不是红色就是黑色根节点为黑色如果…

怎么实现电脑控制100台手机,苹果手机群控系统不用越狱实现新突破

今天来给大家介绍一款软件——手机群控。 什么是手机群控?就是将多台手机同时连接至一台电脑,集中控制管理。 对于苹果iOS免越狱中控,此前一直是个难题。 毕竟iOS系统封闭性极强,且苹果官方限制了USB的传输类型,只允…

【网络面试篇】TCP与UDP类

目录 一、综述 1. TCP与UDP的概念 2. 特点 3. 区别 4. 对应的使用场景 二、补充 1. 基础概念 (1)面向连接 (2)可靠的 (3)字节流 2. 相关问题 (1)TCP 和 UDP 可以同时绑定…

web自动化测试平台开发之核心执行器

web自动化测试平台开发之核心执行器 一、如何从自动化框架到核心执行器二、核心执行器框架逻辑梳理三、核心执行器利用命令驱动执行 一、如何从自动化框架到核心执行器 脚本:底层用了三个内容:pythonpytestselenium,线性脚本,只是单纯的把功能测试用例转…

AI自媒体变现路径大盘点!建议收藏!

当下的我做为一人公司或者超级个体为目标的创业模式,无论是在写作、图文和短视频输出方面,我都是运用了N个AI工具来提升我的生产力。 这种创业模式就是一个人N个AI的模式,我们可以通过AI工具做提效来赚取差价,以时间复利来累计财…

Boost电路双闭环控制MATLAB仿真

一、Boost电路电流内环控制MATLAB仿真模型 1.MATLAB仿真模型 1.1.仿真模型图 因为要使用电流内环控制,相比较于开环控制中直接给定MOS开关的占空比,这里通过把电路的平均电流和一电流基准值相比较来控制MOS开关的占空比,因此称为闭环控制。…

centos7 zabbix监控nginx的pv和uv和status_code

zabbix监控nginx的pv: pv)cat /var/log/nginx/access.log|awk {print $1}|wc -l;;zabbix-get验证: [rootbogon ~]# zabbix_get -s 192.168.253.231 -k pv_uv[pv] 100zabbix监控nginx的uv uv)cat /var/log/nginx/access.log|awk {print $1}|uniq -c | w…

分布式系统理论基础:Raft、Zab

目录 引言RaftZabPaxos、Raft、Zab再比较小结 该系列博文会告诉你什么是分布式系统,这对后端工程师来说是很重要的一门学问,我们会逐步了解分布式理论中的基本概念,常见算法、以及一些较为复杂的分布式原理,同时也需要进一步了解…

Ubuntu 20.04 安装 OpenCV 和 OpenCV_contrib 教程

Ubuntu 20.04 安装 OpenCV 和 OpenCV_contrib 教程 Ubuntu 20.04 安装 OpenCV 和 OpenCV_contrib 教程前言 OpenCV概述核心功能优势特点应用领域安装与使用 OpenCV_contrib概述核心功能具体模块 安装与使用一、准备工作二、下载OpenCV和OpenCV_contrib三、编译和安装OpenCV四、…

【鸿蒙HarmonyOS实战:通过华为应用市场上架测试版App实现HBuilder X打包的UniApp项目的app转hap教程(邀请码)方式教程详解】

鸿蒙HarmonyOS实战:通过华为应用市场上架测试版App实现HBuilder X打包的UniApp项目的app转hap教程(邀请码)方式详解 在使用uniapp打包的鸿蒙项目的过程中,由于生成的是app文件,而hdc传给鸿蒙HarmonyOS系统需要的是hap文…

HarmonyOS 5.0应用开发——应用打包HAP、HAR、HSP

【高心星出品】 目录 应用打包HAP、HAR、HSPModule类型HAPHAR创建HAR建立依赖HAR共享内容 HSP创建HSP建立依赖同上HSP共享内容同上 HAR VS HSP 应用打包HAP、HAR、HSP 一个应用通常会包含多种功能,将不同的功能特性按模块来划分和管理是一种良好的设计方式。在开发…

数据结构————map,set详解

今天带来map和set的详解&#xff0c;保证大家分清楚 一&#xff0c;概念 map和set是一种专门用来搜索的容器或数据结构 map能存储两个数据类型&#xff0c;我们称之为<key-value>模型 set只能存储一个数据类型&#xff0c;我们称之为纯<key>模型 它们的效率都非…

Vue.js(2): 组件与路由基础指南

这一路上可能会有艰辛、困难、疑惑、付出、泪水、失败&#xff0c;但是一定要享受这个过程&#xff0c;因为所有的失败都是为了下一刻的成功 文章目录 组件什么是组件组件化开发的好处组件底层是什么全局注册组件局部注册组件组件嵌套组件命名规则组件传值 SPAvue-router路由动…

[c++高阶]二叉搜索树深度剖析

1.前言 从二叉搜索树开始&#xff0c;后面慢慢学的AVL树&#xff0c;红黑树&#xff0c;map,set&#xff0c;哈希表等等都会慢慢的变得更难了&#xff0c;也更加难以理解了。希望大家能够坚持下去&#xff0c;只要坚持&#xff0c;就是胜利。 本章重点 着重讲解什么是二叉搜索…

【力扣刷题实战】单值二叉树

大家好&#xff0c;我是小卡皮巴拉 文章目录 目录 力扣题目&#xff1a; 单值二叉树 题目描述 示例 1&#xff1a; 示例 2&#xff1a; 解题思路 题目理解 算法选择 具体思路 解题要点 完整代码&#xff08;C语言&#xff09; 兄弟们共勉 &#xff01;&#xff01;…

MySQL数据库MHA高可用

目录 一、MHA简述 二、MHA 的组成 三、MHA 的特点 四、MHA工作原理 五、MHA部署步骤 六、搭建 MySQL MHA MHA一主两从高可用集群示意图 实验环境 1. Master、Slave1、Slave2 节点上安装 mysql5.7 2. 关闭防火墙 3. 修改 Master、Slave1、Slave2 节点的主机名 4. 修…

国内短剧源码短剧系统搭建小程序部署H5、APP打造短剧平台

​在当今的互联网时代&#xff0c;短剧作为一种新兴的娱乐形式&#xff0c;受到了越来越多用户的喜爱。为了提供更好的用户体验和满足用户需求&#xff0c;一个好的短剧系统需要具备多元化的功能和优质的界面设计。 本文将介绍国内短剧源码短剧系统搭建小程序部署H5、APP所需的…

【传知代码】图像处理解决种子计数方法

文章目录 一、背景及意义介绍研究背景农业考种需求传统计数方法的局限性人工计数仪器设备计数 研究意义提高育种效率提高计数准确性广泛的适用性数据存档与分析便利 二、概述三、材料与数据准备以及方法介绍整体流程图像采集图像预处理形态学操作腐蚀运算开运算 图像二值化种子…