ipv6单播地址包括哪两种类型

您所在的位置:网站首页 dhcp的地址池主要包含哪两种类型 ipv6单播地址包括哪两种类型

ipv6单播地址包括哪两种类型

2024-06-26 14:45| 来源: 网络整理| 查看: 265

2ad3c2a5d8eb99d913ac857a0605014e.png

概述

作为 IPv4协议的替代,IPv6协议使用 128位的地址结构解决了 IP地址不足的问题,同时对一些特 性进行了优化处理。出现于 IPv4时代的组播技术,由于其有效解决了单点发送、多点接收的问题, 实现了网络中点到多点的高效数据传送,能够大量节约网络带宽、降低网络负载,因此在 IPv6 中 的应用得到了进一步的丰富和加强。

IPv6组播与 IPv4组播的最大不同在于 IPv6组播地址机制的极大丰富,而其它诸如组成员管理、组 播报文转发以及组播路由建立等与 IPv4组播基本相同。因此,本文将重点介绍组播地址对 IPv6的 支持情况;对于 IPv6组播协议,只对其与 IPv4组播协议的异同进行大致的介绍。

IPv6 组播技术实现 IPv6组播地址

在介绍 IPv6组播地址之前,先简单回顾一下 IPv6的地址结构:IPv6地址的长度为 128比特,每个 IPv6地址被分为 8组,每组的 16比特用 4个十六进制数来表示,组和组之间用冒号隔开,例如:FEDC:BA98:7654:3210:FEDC:BA98:7654:3210。

IPv6组播地址格式

IPv6组播地址用来标识一组接口,通常这些接口属于不同的节点。一个节点可能属于 0到多个组播 组。发往组播地址的报文被组播地址标识的所有接口接收。

图1 IPv6组播地址格式

6caea25c7333d59cfa39b07910e35af4.png

如图 1所示,IPv6组播地址中各字段的含义如下:

0xFF:最高 8比特为 11111111,标识此地址为 IPv6组播地址。

Flags:4比特,该字段中各位的取值及含义如表 1所示。

表1 Flags字段各位的取值及含义

位取值及含义0位保留位,必须取0R位取 0表示非内嵌 RP的 IPv6 组播地址 ;  取 1表示内嵌 RP的 IPv6 组播地址(此时 P、T位也必须置 1)P位取 0表示非基于单播前缀的 IPv6 组播地址; 取 1表示基于单播前缀的 IPv6 组播地址(此时 T位也必须置 1)T位取 0表示由 IANA 永久分配的 IPv6 组播地址 ;取 1表示非永久分配的 IPv6 组播地址 Scope:4比特。用来标识该 IPv6组播组的应用范围,其取值及含义如表 2所示。表2 Scope字段的取值及其含义 2225ded667606115288793bdddeeb317.png Group ID:112 比特,IPv6组播组标识号。用来在由 Scope字段所指定的范围内唯一标识 IPv6 组播组,该标识可能是永久分配的或临时的,这由 Flags字段的 T位决定。 预留的 IPv6组播地址

根据 RFC 4291,目前已被预留的 IPv6组播地址如表3所示。

表3 预留的 IPv6组播地址列表

ba336edd5c40b9d9710dadbf5c18aaae.png

说明:表3中的 X代表 0~F的任意一个十六进制数

基于单播前缀的 IPv6组播地址

RFC 3306中规定了一种动态分配 IPv6组播地址的方式——基于单播前缀的 IPv6组播地址。这种 IPv6组播地址中包含了其组播源网络的单播地址前缀,通过这种方式分配全局唯一的组播地址。

图2 基于单播前缀的 IPv6组播地址格式

bf6d5e6aced6f1672021dd93c22d5698.png

基于单播前缀的 IPv6组播地址的格式如图 2所示,其中各字段的含义如下:

Flags:R位置 0,P、T位则分别置 1,表示基于单播前缀的组播地址。

Scope:如 2.1.1  图 1表 2所示。

Reserved:8比特。保留字段,必须为 0。

Plen:8比特。表示网络前缀的有效长度(单位为比特)。

Network prefix:64比特。表示该组播地址所属子网的单播前缀,有效长度由 Plen字段指定。

Group ID:32比特。表示 IPv6组播组标识号。

例如: 单播前缀为 3FFE:FFFF:1::/48 的网络分配基于单播前缀的组播地址为 FF3X:30:3FFE:FFFF:1::/96(X表示任意合法的 Scope)。

内嵌 RP地址的 IPv6组播地址

1.地址格式

嵌入式 RP(Rendezvous Point,汇集点)是 IPv6 PIM 中特有的 RP 发现机制,该机制使用内嵌 RP地址的 IPv6组播地址,使得组播路由器可以直接从该地址中解析出 RP的地址。

图3 内嵌 RP地址的 IPv6组播地址格式

7a96614f9635ccc50908c2d3680dd1fc.png

如图3所示,内嵌 RP地址的 IPv6组播地址使用基于单播前缀的 IPv6组播地址格式,其中各字段 的含义如下:

Flags:R、P和 T位均置 1,表示内嵌 RP地址的组播地址。

Scope:如 2.1.1  图 1表 2所示。

Reserved:4比特。保留字段,必须为 0。

RIID:4比特。表示 RP地址的接口 ID。

Plen:8比特。表示 RP地址前缀的有效长度(单位为比特)。

Network prefix:64比特。表示 RP地址前缀,有效长度由 Plen字段指定。

Group ID:32比特。表示 IPv6组播组标识号。

2.计算规则

内嵌于 IPv6组播地址中的 RP地址的计算规则如下:

(1) 先将 IPv6组播地址 Network prefix字段的前 Plen位作为 RP地址的网络前缀。

(2) 再将 IPv6组播地址 RIID字段填充到 RP地址的最低 4位。

(3) 最后,将 RP地址的所有剩余位补 0。

例如:对于 IPv6组播地址 FF7E:F40:2001:DB8:BEEF:FEED::1234,内嵌于其中的 RP地址的前缀 为 Network prefix字段的前 Plen(这里为 0x40 = 64 bits)位,最低 4位为 RIID(0xF),其余位均 为 0,如图4所示。

图4 嵌入式 RP计算举例

529c913676938c33925f4e160f4e5ec0.png

3.应用举例

假设网络管理员想在 2001:DB8:BEEF:FEED::/64 网段中设置 RP,则内嵌 RP地址的 IPv6 组播地 址为 FF7X:Y40:2001:DB8:BEEF:FEED::/96,可分配 32比特的 Group ID,内嵌于其中的 RP地址 为 2001:DB8:BEEF:FEED::Y/64。

如果网络管理员想在IPv6组播地址中保留更多可分配的Group ID,可以选择更短的RP地址前缀:譬如取 Plen = 0x20 = 32 bits,则此时内嵌 RP地址的 IPv6组播地址为 FF7X:Y20:2001:DB8::/64, 可分配 64比特的 Group ID,内嵌于其中的 RP地址为 2001:DB8::Y/32。

说明:X表示任意合法的 Scope,Y代表 1~F的任意一个十六进制数。

IPv6 SSM组播地址

IPv6 SSM(Source-Specific Multicast,指定信源组播)组播地址也使用基于单播前缀的 IPv6组播 地址格式,其中的 Plen字段和 Network prefix字段均取 0。IPv6 SSM组播地址范围为 FF3X::/32 (X表示任意合法的 Scope)。

IPv6组播MAC地址

IPv6组播 MAC地址以 0x3333开头,低 32位为 IPv6组播地址的低 32位,最终形成 48比特的组 播 MAC 地址。如图5 所示,IPv6 组播地址 FF1E::F30E:101 所对应的组播 MAC 地址为 33-33-F3-0E-01-01。

图5 IPv6组播地址的 MAC地址映射举例

fa270b31048bf145f1fe0eb1efe7532f.png IPv6组播协议

IPv6支持的组播协议包括 MLD(Multicast Listener Discovery Protocol,组播侦听者发现协议)、 MLD Snooping(Multicast Listener Discovery Snooping,组播侦听者发现协议窥探)、IPv6 PIM(IPv6 Protocol Independent Multicast,IPv6协议无关组播)和 IPv6 MBGP(IPv6 Multicast BGP,IPv6 组播 BGP)等。

组播组管理协议

MLD源自 IGMP(Internet Group Management Protocol,互联网组管理协议),MLD有两个版本:MLDv1源自 IGMPv2,MLDv2源自 IGMPv3。

与 IGMP 采用 IP 协议号为 2的报文类型不同,MLD采用 ICMPv6(IP 协议号为 58)的报文类型, 包括 MLD 查询报文(类型值 130)、 MLDv1 报告报文(类型值 131)、 MLDv1 离开报文(类型值 132)和 MLDv2报告报文(类型值 143)。MLD协议与 IGMP协议除报文格式不同外,协议行为完全相同。

组播路由协议

IPv6 PIM与 PIM除报文中 IP地址结构不同外,其它协议行为基本相同,IPv6 PIM也支持如下四种模式:

IPv6 PIM-DM(IPv6 Protocol Independent Multicast-Dense Mode,IPv6协议无关组播—密 集模式) FF1E

IPv6 PIM-SM(IPv6 Protocol Independent Multicast-Sparse Mode,IPv6协议无关组播—稀 疏模式)

IPv6 PIM-SSM(IPv6 Protocol Independent Multicast Source-Specific Multicast,IPv6协议 无关组播-指定源组播)

IPv6 BIDIR-PIM(IPv6 Bidirectional Protocol Independent Multicast,IPv6双向协议无关组 播,简称 IPv6双向 PIM)

IPv6 PIM发送链路本地范围的协议报文(包括 PIM Hello、Join-Prune、Assert、Bootstrap、Graft、 Graft-Ack和 State-refresh报文)时,报文的源 IPv6地址使用发送接口的链路本地地址;IPv6 PIM 发送全球范围的协议报文(包括 Register、Register-Stop和 C-RP Advertisement报文)时,报文的源 IPv6地址使用发送接口的全球单播地址。

IPv6组播并不支持 MSDP协议,如果需要接收来自其它 IPv6 PIM域的组播数据,有以下两种实现方式:

通过其它方式(譬如广告等)直接获取其它 IPv6 PIM域内的组播源地址,使用 IPv6 PIM-SSM 发起指定源组的加入。

使用嵌入式 RP机制,通过嵌入 RP地址的 IPv6组播地址来获取其它 IPv6 PIM域内的 RP地 址,向其它域内的 RP发起组加入。对于域间 IPv6组播路由信息的传递,则可以使用 IPv6 的 MBGP 协议,其与 IPv4的 MBGP协议也基本相同。

二层组播协议

1. MLD Snooping

MLD Snooping与 IGMP Snooping协议基本相同。

2.IPv6 PIM Snooping

IPv6 PIM Snooping与 PIM Snooping协议基本相同。

3.  组播 VLAN

组播 VLAN,对于 IPv4组播和 IPv6组播,处理原理相同。

 49e50a2d6d3dd063fc4a7a0872533432.gif

 49e50a2d6d3dd063fc4a7a0872533432.gif

0edd108e59dc6d7cd8504695c7157fe3.png

瑞哥建了一个微信群,不在群的朋友,可以加瑞哥微信(备注单位+姓名)

进群前先转发本图文至朋友圈,添加后截图给瑞哥,立即拉群!

一个有态度的优质教程集聚地

帮助过上万位网友解决教程需求问题

教程仅用于学习交流,禁止用于商业交易©

猜您喜欢往期精选▼

HoVPN技术

嵌套 VPN技术 | 必看

6a80b5163dfdd490fad7d28425d130fa.png

努力学习,勤奋工作,让青春更加光彩

45d7d6e46dcfa77f14f03989475ba70e.png

再长的路,一步步也能走完,再短的路,不迈开双脚也无法到达



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3