IPv4、IPv6地址、组播地址及子网子划分详解四

article/2025/9/21 3:57:20

IPv4、IPv6地址、组播地址及子网子划分详解四

  • 6、IPv6
  • 6.1、国际IP地址分配方式:
  • 6.2、IPv6的结构
  • 6.3、IPv6地址简写方式
  • 6.4、地址类型
  • 6.4.1、单播地址
  • 6.4.2、组播地址
  • 6.4.3、任意播地址
  • 6.5、IPv6接口ID的生成方法

6、IPv6

IPv4地址总数=232=4,294,967,296
IPv6地址总数=2128= 340,282,366,920,938,463,374,607,431,768,211,456

2019 年 11 月 25 日已分配完公网 IPv4 地址,以后就没有多余地址可以分配了。在使用IPv4时为了节省带宽和IP地址使用了无类域间路由选择(CIDR)和网络地址转换,还有变长子网掩码(VLSM),都为了节约使用有限的IP资源。全球近75亿人口,对于连接因特网的使用量将会从现在的百分之十几逐步增加,IPv4地址空间远远不足。再看目前国内的发展,移动网络、物联网、城域网的高速增长需要IPv6来实现。

前面我们讲到对于IPv4节点的配置比较复杂;还有就是IPv4地址分配杂乱无章,没有层次性,网络设备需要维护庞大的路由表项;常被诟病的安全性问题, IPv4在网络层没有安全性可言,安全性一直被认为是由网络层以上的层负责;IPv4包头复杂性,使得网络节点处理的效率不高。

有很多人觉得IPv6太长难于记忆,那我们下面来对IPv6详述来帮助理解,在之前说一说IPv6的好处,采用新标准IPSec,安全性提高;由于报头简单查找效率提高;允许设备在网络之间漫游,不会中断连接;能自动配置,实现即插即用;能更好的支持QoS;IPv6没有广播使用的是组播可避免在IPv4中的广播风暴。

6.1、国际IP地址分配方式:

在这里插入图片描述
IANA 网际网络号码分配局:ICANN的IANA部门负责将IP地址分配给5个区域性的互联网注册机构RIR ,比如APNIC,它负责亚太地区的IP分配。

RIR 区域网际网路注册管理机构:RIR将地址进一步分配给区域内大的LIR/ISP,比如:APNIC区域中国的CNNIC。

LIR/ISP 运营商:LIR/ISP再根据自己的情况,将IP地址分配给机构或者直接分配给用户,比如将IPv4 A类地址分配给一个超大型机构,而将IPv4 C类地址分配给一个中型企业。

6.2、IPv6的结构

在这里插入图片描述IPv6使用十六进制,由8个16比特的部分构成,也就是分为8段,使用“:”分隔。
在这里插入图片描述

IPv4使用二进制,由4个8比特的部分构成,分为4段,使用“.”分隔。

IPv6地址和Pv4地址网络前缀
在IPV6中掩码只能使用CIDR表示。
在这里插入图片描述

6.3、IPv6地址简写方式

简写的原则:省略IPv6地址各分段里前导0;地址中包含的连续全为0的组,可以用双冒号“::”来代替。
2001:0410:0000:0001:0000:0000:0000:45ff/64
A、省略前前导0
2001:410:0: 1:0:0:0:45ff/64
B、地址中包含的连续全为0的组,可以用双冒号“::”来代替。一个地址中“::”只能出现一次。
2001:410:0:1::45ff/64

fe80:0000:0000:0000:0000:0000:0000:0009–>fe80::9

6.4、地址类型

现在看很多资料这一块比较混乱,各个时期的,各个版本的都不太一样,为什么会出现这种情况,主要是IANA负责将该段地址范围内的地址分配给多个区域互联网注册管理机构(RIR)。RIRIPv6地址空间中还有很多地址尚未分配,还有待发展空间,有很多不确定性。我们主要记住IPv6地址分为单播地址、任播地址、组播地址三种类型。
在这里插入图片描述

6.4.1、单播地址

标识单台设备的地址。
IPv6单播地址分类(根据地址范围):
A、全球单播地址
带有全球地址的数据包可被转发或者汇总到全球网络的任何部分-RFC3587,可路由的公有地址,与IPv4中的单播地址类似。
范围:2000:0000:0000:0000:0000:0000:0000:0000~3FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF
压缩后:2000::/3
在这里插入图片描述

由于是16进制2由4位组成0010,前缀是3前三位是固定的001,后一位可以变化,后45位是全局路由前缀,由于是可路由的公有地址,要从 ISP 或区域 Internet 注册机构(Regional Internet Registry,RIR)获取。全局路由前缀+子网ID总计是64位,就构成IPv6的网络地址部分。与192.168.1相似。

后16是子网ID,与C类IP里节点地址中1网络位相似,与IPv4不同地方是IPv6单独使用了16位来作为子网位,而不似IPv4采用在节点地址占用主机地址来划分子网。这样就有216= 65535 个子网,需要记住的是在IPv6地址自动分配时,子网地址优先在网络地址上进行分配。

关于接口ID:之所以叫做接口ID,是因为一个设备可以拥有不止一个IPv6接口,所以标识接口比标识一个设备更准确。但是一个接口又可以有多个IPv6地址,所以并不是唯一的,接口ID可以手动指定也可以自动生成。
在这里插入图片描述
在2000::/3全球单播地址地址范围中还为文档示例预留了地址空间,例如2001:0DB8::/32。

B、链路本地单播地址前缀为FE80::/10。
链路本地地址只能在连接到同一本地链路的节点之间使用。
可以在自动地址分配、邻居发现和链路上没有路由器的情况下使用链路本地地址。以链路本地地址为源地址或目的地址的IPv6报文不会被路由器转发到其他链路。只能在连接到同一本地链路的节点之间使用。

链路本地地址的前缀是FE80::/10。
在这里插入图片描述
当一个节点启用 IPv6 时自动生成,其固定的前缀+EUI-64规则形成的接口标识。这种机制使得两个连接到同一链路的IPv6节点不需要做任何配置就可以通信。所以链路本地地址广泛应用于邻居发现,无状态地址配置等应用。

注意:在本链路上,路由表中看到的下一跳都是对端的Link Local地址,不是公网IP地址。只能在连接到同一本地链路的节点之间使用,不能跨越路由。

C、唯一本地地址前缀为 fc00::/7。
类似于IPv4中的私网地址,任何没有申请到提供商分配的全球单播地址的组织机构都可以使用唯一本地地址,唯一本地地址只能在本地网络内部被路由转发而不会在全球网络中被路由转发。

在这里插入图片描述
该地址包含一个 40 位的伪随机数,以减少当网站合并或数据包误传到网络时碰撞的风险。

D、未指定地址。
形式:::/128,即 0:0:0:0:0:0:0:0。表示地址未指定,或者在写默认路由时代表所有路由。

E、环回地址
::1/128,即 0:0:0:0:0:0:0:1。相当于 IPv4 中的回环地址 lo 127.0.0.1,表示节点自已。

F、内嵌IPV4地址的IPV6地址
映射IPV4的IPV6地址–仅用于拥有IPV4和IPV6双协议栈节点的本地范围。
其中高80bit设为0,后16bit设为1,再跟IPV4地址。

0000:0000:0000:0000:0000:ffff:206.123.31.2
0000:0000:0000:0000:0000:ffff:ce7b:1f01

6.4.2、组播地址

在 IPv6 中没有广播的概念,而是使用用组播来代替,因此 IPv6 中存在大量的组播使用。
在这里插入图片描述FF00::/8—FFFF::/8,所有IPv6组播地址都以FF开始。
在这里插入图片描述
IPv6组播地址是由前缀、标志(Flag)字段、范围(Scope)字段以及组播组ID(Group ID)4个部分组成:

前缀固定1111 1111

标志(Flag)字段:前3位设为0,最后一位定义地址类型:值为0时,表示当前的组播地址是由IANA所分配的一个永久分配地址;值为1时,表示当前的组播地址是一个临时组播地址(非永久分配地址)。
为方便记忆 0=永久分配 1=本地临时

范围字段(Scope):

二进制十六进制范围类型
00011本地接口范围
00102本地链路范围
00113本地子网范围
01004本地管理范围
01015本地站点范围 类似组播的私网地址
10008组织机构范围
1110E全球范围 类似组播的公网地址

组播组ID(Group ID):目前,RFC2373并没有将所有的112位都定义成组标识,而是建议仅使用该112位的最低32位作为组播组ID,将剩余的80位都置0,这样,每个组播组ID都可以映射到一个唯一的以太网组播MAC地址(RFC2464)。

FF02=固定前缀 永久分配 本地链路范围

地址范围描述
FF02::1链路本地范围所有节点
FF02::2链路本地范围所有路由器
FF02::3链路本地子网范围
FF02::5链路本地范围所有OSPF路由器
FF02::6链路本地范围所有OSPF的DR路由器
FF02::9链路本地范围所有运行RIP的路由器
FF02::A链路本地范围所有运行eigrp的路由器

被请求节点的组播地址:
一种特殊的组播地址,对于节点或路由器的接口上配置的每个单播和任意播地址,都会自动生成一个对应的被请求节点组播地址。注意链路本地单播地址也会生成一个被请求节点的组播地址。

工作范围:只在本地链路上有效

特点:
A、在本地链路上,被请求节点的组播地址组中通常只包含一个用户
B、只要知道一个节点的IPV6地址,就能计算出它的被请求节点的组播地址

作用:
A、在IPV6中,没有ARP。ICMP代替了ARP的功能,被请求节点的组播地址被节点用来获得相同本地链路上邻居节点的链路层地址。
B、用于重复地址检测DAD,在使用无状态自动配置将某个地址配置为自已的IPV6地址之前,节点利用DAD验证在其本地链路上该地址是否已经被使用。

前缀:FF02:0000:0000:0000:0000:0001:FFxx:xxxx/104
FF02::1:FFxx:xxxx/104
如何产生:被请求节点组播地址的前104位固定,将IP地址的后24位移下来填充到后面就可以了。

例如:IPv6—2001::2234:5678/64
被请求节点组播地址—FF02::1:FF34:5678/104,其中FF02::1:FF为固定部分,共104位。

6.4.3、任意播地址

就是一个单播地址分配给多台路由器来使用;发往任播地址的数据包被路由转发给分配了任播地址的;同单播地址相同,不能做为源地址使用。
在这里插入图片描述
同一单播地址被分配给多个接口,仅用于路由器。比如我将5台路由器都分配一个2001::3的单播地址,当其中一台主机请求某一服务或者特定数据包时,另一台主机将数据包将发送给其中最近一台路由器接口。利用这一特性,可以提供冗余服务,连接多台服务器,路由器都设置成为相同的地址,当其中一条线路中断时,接收方可以从其它最近的路由器接口获取资源。

6.5、IPv6接口ID的生成方法

  • 手工配置:建议在服务器和重要网络设备上配置。
  • 系统通过软件自动生成:保护主机的私密性。
  • IEEE EUI-64规范自动生成:最常用的方法。

通过EUI-64规范根据MAC地址生成接口ID:
在这里插入图片描述

将FFFE插入MAC地址的前24位与后24位之间,并将第7位的0改为1即可生成接口ID。

FFFE:1111|1111 1111|1110

在单播MAC地址中,第1个Byte的第7bit是U/L(Universal/Local,也称为G/L,其中G表示Global)位,用于表示MAC地址的唯一性。如果U/L=0,则该MAC地址是全局管理地址,是由拥有OUI的厂商所分配的MAC地址;如果U/L=1,则是本地管理地址,是网络管理员基于业务目的自定义的MAC地址。

EUI-64接口ID中,第7bit的含义与MAC地址正好相反,0表示本地管理,1表示全球管理,所以使用EUI-64格式的接口ID,U/L位为1,则地址是全球唯一的,如果为0,则为本地唯一。这就是反转该位的原因。


http://chatgpt.dhexx.cn/article/fQQU3SDs.shtml

相关文章

07-IP组播配置指导

1 组播概述 1.1 组播简介 作为一种与单播(Unicast)和广播(Broadcast)并列的通信方式,组播(Multicast)技术能够有效地解决单点发送、多点接收的问题,从而实现了网络中点到多点的高…

IPv4、IPv6地址、组播地址及子网子划分详解一

IPv4、IPv6地址、组播地址及子网子划分详解一 一、IPv4地址1、IP地址的定义2、IP术语3、IP地址的组成3.1、我们前面讲到IP地址是软件地址,那硬件地址是什么?3.2、IP地址的编址方案4、IP地址的分类4.1、网络地址4.2、保留的IP地址4.3、私有IP地址4.4、组播…

IPV6组播地址

在IPv4中广泛的使用单播、广播、组播的方式。而在IPv6的应用环境中,使用单播,组播、任意播的新方式,放弃广播的使用,换而言之,在IPv6的环境中不再有广播的存在。理解IPv6的组播地址有一个重要的前提:就是读…

IPV4组播地址解析以及IPV4地址详解

为了便于对IP地址进行管理, 根据IPv4地址的第一个字节,IPv4地址可以分为以下五类。 A类:0~127 B类:128~191 C类:192~223 D类:224~239,组播地址 E类:240~254,保留为研究测试使用 IPv4地址中有一些地址段有特殊用途,这些地址段及用途的说明如表所示。 IPV4组播地址解…

计算机网络——组播地址(多播地址、D类地址)详解——不断完善更新中

1、是什么 先看这张图,组播地址是分类编址的IPv4地址中的D类地址,又叫多播地址,他的前四位必须是1110,所以网络地址的取值范围是224~~239。 2、这些IP地址用来做什么 224.0.0.0~224.0.0.255为预留的组播地址&#xff0…

Android LBS

前言 本文以项目AOSP的源码为参考,描述基于Android的定位服务的实现流程,包括GPS定位,网络定位,GeoCoder等服务。以代码执行流程为主线,一步步分析定位的实现流程。由于Android Binder采用C/S的架构模式,所…

LSB和MSB,LSB first,MSBfirst

LSB LSB(Least Significant Bit)–最低有效位 MSB MSB(Most Significant Bit)–最高有效位 解释 加入下面是一个四位二进制的数值,一般和10进制都认为是左边是最高位,也就是MSB;对应的最右边就是LSB. LSB first和MSB first 这种一般出现先对传感…

OSPF,LSDB,LSA分类

dis cur c ospf //查看OSPF的配置 DD报文选举的是主从关系,不是选举DR和BDR LSA通告网段信息和通告拓扑信息 two-way:双向通信,邻居状态下,选举DR和BDR 进入exstar状态,发送第一个DD报文,DD报文的作用是…

IS-IS P2P网络下LSDB同步过程

P2P链路下IS-IS的LSDB数据库同步过程 抓包如下: 大概过程: IS-IS在P2P网络中邻居建立完成后只发送一次CSNP报文 双方都会发送一次CSNP,包含LSP的摘要信息,意思是告诉对方我有哪些网段信息如果其中一方的LSDB中没有对方的CSNP内的某条路由&a…

【OSPF-一类router、二类network】(根据lsdb画出拓扑)

目录 一、一类LSA-Router 每台交换机会产生一条类型为router的lsa,来描述自身直连网段信息(通过dis ospf lsdb,查看router的条目,就能确定该区域内路由器的数目了) 查看ospf相关信息的命令 二、二类lsa-network 由…

ISIS—ISIS中LSP(数据库)同步如何保证LSDB可靠性—04

目录 一、LSP基础知识:(链路状态更新,相当于OSPF的LSA) 二、ISIS中LSP(数据库)同步如何保证LSDB可靠性? ISIS LSP(数据库)同步机制 ①P2P网络: ②MA网络: ③特例问题&#xf…

【LAB4-Cisco】OSPF邻居建立过程与LSDB分析

实验需求 1、根据拓扑提示,对各路由启用OSPF路由协议并划分相应区域,并验证邻居关系以及数据库信息,从而保证内网全网互通。其中,要求R7上的回环口条目作为外部条目引进来。 2、新加入公司网络的Area 2 区域存在一定的接入安全隐患…

IS-IS LSDB详解(华为设备)

概述: IS-IS协议主要有两大功能:子网依赖功能和子网无关功能。子网依赖功能就是建立和维护邻接关系的功能,而子网无关功能则主要用于执行和管理和管理链路状态信息的交换和路由计算,具体可以分为四个过程。 更新过程。路由决策过…

1.1.6 LSDB同步

邻接关系 邻接建立过程 讲完了报文之后我们具体来看一下是怎么同步的,我们可以看到下图是我们LSDB的过程: 注意: 我们要注意,在到达同步过程之前我们先要达到2-way的状态,就是我们首先要有邻居状态的建立,才…

网络篇 OSPF的LSDB过载保护-52

目录 一、实验原理 二、实验拓扑 三、实验步骤 四、实验过程 总结 实验难度 2 实验复杂度3 一、实验原理 若没有正确规划网络或配置不好,可能出现大量的LSA,这些LSA会消耗掉本地的CPU和内存资源的。在Cisco IOS 12.3(7)和更晚的版本中&#xff0…

OSPF之链路状态数据库LSDB

OSPF链路状态数据库 原理概述: OSPF是一种基于链路状态的动态路由协议,每台 OSPF 路由器都会生成相关的LSA,并将这些LSA通告出去。路由器收到LSA后,会将它们存放在链路状态数据库LSDB中。 LSA有多种不同的类型,不同类型…

ORACLE生成自增唯一序列值的函数

“F_NEXT_VAL” 函数名 VAL 变量值 PRAGMA AUTONOMOUS_TRANSACTION 声明为自治事务 CREATE OR REPLACE FUNCTION "F_NEXT_VAL" RETURN INTEGER ASpragma autonomous_transaction;VAL INTEGER; BEGINSELECT t."VALUE" INTO VAL FROM SYS_SEQUECE t WHERE t…

Mysql和Oracle实现序列自增

/*ORACLE设置自增序列 oracle本身不支持如mysql的AUTO_INCREMENT自增方式,我们可以用序列加触发器的形式实现, 假如有一个表 T_WORKMATES,我们需要让学号PNO自增*/ --创建序列 SEQ_PNO CREATE SEQUENCE SEQ_PNO minvalue 1 --最小值为1 n…

如何实现 Oracle 的自增序列,两步轻松搞定

在实际项目开发过程中,设计数据库表时经常遇到需要主键自增的场景。那如何实现Oracle的主键自增呢,这里我们记录一种最常用的方式:sequence trigger。 就是利用Oralce的序号和触发器来实现字段的自增,下面直接来看一个完整的例子…

oracle中设置表的主键字段为自增序列(实例)

oracle中设置表的主键字段为自增序列(实例) 1、首先创建一个表(如日志表) //删除库表中存在的日志表 drop table S_LOG_INFO cascade constraints; //新建日志表 create table S_LOG_INFO (PRIMARYKEY NUMBER …