简述

本文主要介绍IPv6地址。

含义

IPv6,互联网协议第6版本,英文全称Internet Protocol Version 6,用于替代IPV4的下一代IP协议。IPv6地址是独立接口的标识符,所有的IPv6地址都被分配到接口,而非节点。类别上可分为单播地址、任播地址、组播地址等。

IPv4的地址是32位,地址空间只有4,294,967,296(2的32次方)个地址,减去私有网段、网络ID、广播ID、保留网段、本地环回127.0.0.0网段、组播224.0.0.0网段,大概剩余25亿左右。

IPv6的地址是128位,是IPv4地址长度的4倍,采用十六进制表示。

地址格式

IPv6地址长度为128位,由两个逻辑部分组成:一个64位的网络前缀和一个64位的主机地址。

首选格式:通常表示写成8段,每段为四个十六进制数的形式,用[ :]作为分隔符。如:

fe80:0000:0000:0000:cd04:c16b:9adf:dfe7

前导零压缩法:将每一段的前导零省略,但是每一段都至少应该有一个数字。如

fe80:0:0:0:cd04:c16b:9adf:dfe7

双冒号法:如果连续段位的值都是0,那么这些0就可以简单的以::来表示,每个地址中只能有一个::。如

fe80::cd04:c16b:9adf:dfe7

十六进制数字不区分大小写,但IETF建议使用小写字母。

IPv6+端口号:把IPv6的地址用[]包起来,如:[fe80::cd04:c16b:9adf:dfe7]:45001

地址类型

RFC2373中定义了三种IPv6地址类型,单播地址、任播地址和组播地址。

单播地址(Unicast IPv6 Addresses)

一个地址标识单个接口,发送给单播地址的分组将传输到该地址标识接口。

可聚合全球单播地址(Aggregatable Global Unicast Addresses):可在全球范围内路由和到达的,相当于IPv4里面的global addresses。前三个bit是001,如

2000::1:2345:6789:abcd

本地链路地址(Link-Local Addresses):用于同一个链路上的相邻节点之间通信,相当于IPv4里面的169.254.0.0/16地址。Ipv6的路由器不会转发链路本地地址的数据包。前10个bit是1111 1110 10,由于最后是64bit的interface ID,所以它的前缀总是FE80::/64。如

FE80::1

站点本地地址(Site-Local Addresses):对于无法访问Internet的本地网络,可以使用站点本地地址,这个相当于IPv4里面的private address(10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16)。它的前10个bit是1111 1110 11,它最后是16bit的Subnet ID和64bit的interface ID,所以它的前缀是FEC0::/48。

唯一的本地IPv6单播地址(ULA,Unique Local IPv6 Unicast Address):在RFC4193中标准化了一种用来在本地通信中取代单播站点本地地址的地址。ULA拥有固定前缀FD00::/8,后面跟一个被称为全局ID的40bit随机标识符。

未指定地址(Unspecified address):0:0:0:0:0:0:0:0 或者::

当一个有效地址还不能确定,一般用未指定地址作为源地址。未指定地址不能作为一个目标地址来使用。

回环地址(Loopback address):

回环地址::1用于标识一个回环接口,可以使一个节点可以给自己发送数据包。相当于IPv4的回环地址127.0.0.1

兼容IPv4的地址(IPv4-compatible address):形如::w.x,y.z,这里的w.x.y.z是IPv4公共地址的十进制点号表示法,用于IPv6/IPv4节点们(同时支持)在使用仅支持IPv4的网络上用IPv6的协议进行通信。

IPv4映射地址(IPv4-mapped address):形如::FFFF:w.x.y.z,这里的w.x.y.z是IPv4公共地址的十进制点号表示法,用于一个仅支持IPv4的节点表现为一个IPv6的节点

6over4地址:[64bit-prefix]:0:0:WWXX:YYZZ,其中的WWXX:YYZZ是w.x.y.z IPv4公共地址的十进制点号表示法,用于一个使用6to4协议的隧道机制的节点。

6to4地址:2002:WWXX:YYZZ:[SLA ID]:[Interface ID],用于表示一个使用6to4协议的隧道机制节点。

任播地址(Anycast Address)

任意点传送地址是一组接口的地址,发送到一个任意点传送地址的信息包只会发送到这组接口中的一个(根据路由协议对距离的测定,该接口距离发送点最近)。

组播地址(Multicast Address)

IPv6组播地址是由固定的8bit地址前缀FF00::/8,4bit的标志位,4bit组播范围和112bit多播组标识符(组ID)组成。

一个多播地址标识位于不同设备上的一组接口,发送给多播地址的分组将传输到该地址标识的所有接口,多播地址不会作为源地址出现。

FF01::到FF0F::的多播地址是保留专用地址;FF01::1 节点本地范围所有节点多播地址;FF02::1 链路本地范围所有节点多播地址;FF01::2 节点本地范围所有路由器多播地址;FF02::2 链路本地范围所有路由器多播地址;FF05::2 站点本地范围所有路由器多播地址;

ok,以上就是IPv6地址简单介绍,看完记得转发、点赞和收藏。如果有错误,欢迎批评指正,感谢。

(云渺书斋)