路由联盟

1-ipv6基础知识之-地址

2020-06-15  本文已影响0人  Creator_Ly

1.ipv6地址表示


1.1 首选IPv6地址表示

首选表示法也称为IPv6地址的完全形式,由一系列冒号(:)分开的8个16bit 二进制组成。为了书写方便,每个16bit的二进制以文本形式表示为十六进制字符。


image.png

首选格式的IPv6地址范例:

0000:0000:0000:0000:0000:0000:0000:0001     
2001:0410:0000:1234:FB00:1345:7000:78AB 
3FFE:0B00:0C18:0001:0000:1234:AB34:0002 
FE80:0000:0000:0000:0000:0000:0000:0009 
FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF
1.2 压缩表示

IPv6中,经常见到一长串的0地址。为书写方便,在IPv6地址的连续16比特字段为0和16比特字段中的前导0,可以使用一种特定语法来压缩连续的0。

一般有以下两个规则:

首选格式                                        压缩格式
2001:0000:0000:1234:FDBD:1200:3000:36FF         2001::1234:FDBD:1200:3000:36FF
3FFE:0000:0000:0000:1017:0000:0000:0002         3FFE:: 1017:0000:0000:2
FE80:0000:0000:0000:0000:0001:0000:0008         FE80::1:0:8

2.ipv6地址分类


IPv6地址分为三种类型:

2.1 单播-本地链路地址

可以理解为网络层的MAC地址,所有的IPv6接口都有一个链路本地地址,即便它们同时还有一个全局单播地址。

这个概念类似于ipv4中,当DHCP分配失败时自动生成的169.254.XXX.XXX这样的地址,凡是源地址或目的地址中含有link-local address的报文,路由器都不应当转发它。这样的报文只能在一个LAN中互通。

本地链路地址前缀固定为FE80::开始

一个典型的IPv6主机单播地址由3部分组成:全局路由前缀、子网ID和接口ID(64位)

本地链路地址由MAC地址根据EUI算法生成,生成64位接口标识的算法如下:

首先取出48bit的MAC地址:                DC:4B:DD:1D:FA:49
将高24位于低24位分开,中间插入FFFE       DC:4B:DD:FF:FE:1D:FA:49
第一个字节二进制形式                  1101 1100 (DC)
将第一个字节的第7位反转                    1101 1110 (DE)
                                        DE:4B:DD:FF:FE:1D:FA:49
加上特定前缀                          fe80::DE4B:DDFF:FE1D:FA49/64

2.2 单播-可聚合全球地址

可聚合全球单播地址是用于IPv6因特网的IPv6地址,类似于ipv4的公网地址。最高的3个bit固定为001。

范围 2xxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx/3
第一个地址 2000::0
最后一个地址 3FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF

2.3 单播-本地站点地址

本地站点地址:site-local address
IPV6的私网地址,就像IPV4中的私网保留地址一样
只占用到整个IPV6地址空间的0.1%
前缀:FEC0::/10 其后的54比特用于子网ID 最后64位用于主机ID
范围:只能在本站点内使用,不能在公网上使用
例如:在本地分配十个子网
1、FEC0:0:0:0001::/64
2、FEC0:0:0:0002::/64
3、FEC0:0:0:0003::/64
10、FEC0:0:0:000A::/64
本地站点地址被设计用于永远不会与全球IPV6因特网进行通信的设备,比如:打印机、内部网服务器、网络交换机等

2.4 单播-未指定地址Unspecified address

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

2.5 单播-回环地址Loopack address

形式:0:0:0:0:0:0:0:1
同IPV4中127.0.0.1地址的含义一样,表示节点自已

2.6 单播-内嵌IPV4地址的IPV6地址 IPv4 Compatible Address

1、IPV4兼容的IPV6地址--用于在IPV4网络上建立自动隧道,以传输IPV6数据包。
其中高96bit设为0,后面跟32bit的IPV4地址
0000:0000:0000:0000:0000:0000:206.123.31.2
0000:0000:0000:0000:0000:0000:ce7b:1f01
由于这种机制不太好,现在已经不再使用,转而采用更好的过渡机制
2、映射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

2.6 组播-分配的地址

image.png

RFC2327在多播范围内为IPv6协议操作定义和保留了几个IPv6地址,这些保留地址称为多播指定地址,如下所示.

例:

2.7 组播-被请求节点的多播地址

一种特殊的组播地址,对于节点或路由器的接口上分配的每个单播和任意播地址,都会自动生成一个对应的被请求节点组播地址,并侦听。

image.png

2.8 任意播地址

在IPv6 中,任意播地址加入IP 的唯一一种新地址类型,IPv6 的实现基于RFC1546“主机任播服务”的内容。任播地址可以看作是单播和多播寻址在概念上的交叉。其中单播为“发往一个地址”,多播为“发往本组的每个成员”,任意播由为“发往本组的任意一个成员”。

在选择向哪个成员发送数据时,出于效率的考虑,我们通常将发往最近的那个,即选路最近。所以我们也可认为任意播意思是“发往本组中最近的成员”。

任意播的基本想法是提供 TCP/IP 以前很难实现的功能。任意播具体倾向于在如下场合提供灵活性:我们需要的服务可由许多不同的服务器或路由器提供,但我们并不关心是哪个提供的服务。选路时,任意播允许数据报发往一组等价路由器中最近的一个,允许在路由器之间分担负载并在某些特定的路由器退出服务时提供动态的灵活性,发往任意播地址的数据报将自动传递给最容易到达的设备。

任意播没有专门的寻址方案,任意播地址和单播地址相同,当一个单播地址被分给多个接口时,全自动创建一个任意播地址。

3. ipv6地址总结


主机的IPv6地址:

主机的接口会分配到如下单播地址:

主机的接口会监听如下组播地址:

路由器的IPv6地址:

主机的接口会分配到如下单播地址:

主机的接口会监听如下组播地址:

IPv4地址 IPv6地址
组播地址(224.0.0.0/4) IPv6组播地址(FF00::/8)
广播地址 IPv6中无此概念
未指定的地址是0.0.0.0 未指定的地址是::
环回地址是127.0.0.1 环回地址是::1
公有IP地址 全局单播地址
私有IP地址(10.x.x.x,172.16.x.x,192.168.x.x) 唯一本地(FD00::/8)或站点本地地址(FEC0::/10)(不推荐)
APIPA地址(169。254.x.x) 链路本地地址(FE80::/64)
地址表示法:点分十进制表示法 文本表示法:前导0压缩,0压缩的十六进制冒号表示法
前缀表示法:点分十进制表示的子网掩码或者是前缀长度的表示法 前缀表示法:仅有前缀长度的表示法
上一篇下一篇

猜你喜欢

热点阅读