IPV6 出现的背景
考虑到 IPV4 的地址已经不能满足当前网络的需要,出现了不够用的情况。为此做出了如下的努力:
虽然出现了类似的解决方案,但终究无法从根本上解决这个问题,而且还带来了一些额外的问题:
所以新版本的 IPV6 出现了,并增加了更多的支持和功能:
IPV6 地址格式

可以看到:IPV6 由 128bit 组成,用 16 进制表示,共 32 位,其中每四位为一组,用冒号分开,共 8 组。
由于 IPV6 位数较多,于是有了一些缩写的原则:
前导 0 可以省略
每组中如果都是0,可以简写为 0.
如果有连续的 0:0:0,可以将其简写为 ::, 但每个 IPV6 中只能有一个 :: .
另外和 IPV4 一样,在表示网段时,IPV6 也为网络位和主机位。其中默认前 64 位为网络位。
IPV6 地址类型
IPV4 |
IPV6 |
单播 |
单播 |
组播 |
组播 |
广播 |
任播(寻找最近) |
单播:
全局为一单播地址:如
2000::/3
, 相当于 IPV4 中的公有 IP 地址(有 IANA 管理和下发)
链路本地地址:如
fe80::/10
,在物理链路中使用,可理解为在一个广播域内的通信(无法跨越路由器)
满足1111 1110 10xx
前 10 位为链路本地地址
本地唯一单播地址:如
fc00::/7
, 类似于 IPV4 中的私有地址
任播:和之前 IPV4 给路由器接口配置地址只能唯一不同,一个 IPV6 地址可以配置到多台路由器的接口上。此时路由器再转发数据时,会查看路由表中,离自己最近的那台设备进行转发。
特殊地址:
::1
类似于 IPV4 (127.10.0.1)回环接口,用于测试
::
类似于 IPV4 0.0.0.0
EUI-64
使用 EUI-64 自动配置 IPV6 地址,配置链路本地地址。 
由于每台设备的 MAC 地址是唯一的,所以通过 MAC 我们就能得到唯一的 IPV6 地址:
将 MAC 地址均分为前 24 位和后 24 位,在中间插入 FF FE 共 16 bit .
然后将第 7 位反转.
最后补充前 64 位,链路本地加 FE80:: + 上面的地址