linux网络IPv6

时间:2024-04-06 09:27:31

IPv6

1.定义:

IPv6是Internet Protocol Version 6的缩写,号称可以为全世界的每一粒沙子编上一个网址。由于IPv4最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展。IPv6的使用,不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍.

IPv6的地址长度为128b,是IPv4地址长度的4倍。于是IPv4点分十进制格式不再适用,采用十六进制表示。IPv6有3种表示方法。

一、冒分十六进制表示法
  格式为X:X:X:X:X:X:X:X,其中每个X表示地址中的16b,以十六进制表示,例如:
  ABCD:EF01:2345:6789:ABCD:EF01:2345:6789
  这种表示法中,每个X的前导0是可以省略的,例如:
  2001:0DB8:0000:0023:0008:0800:200C:417A→ 2001:DB8:0:23:8:800:200C:417A

二、0位压缩表示法
  在某些情况下,一个IPv6地址中问可能包含很长的一段0,可以把连续的一段0压缩为“::”。但为保证地址解析的唯一性,地址中”::”只能出现一次,例如:
  FF01:0:0:0:0:0:0:1101 → FF01::1101
  0:0:0:0:0:0:0:1 → ::1
  0:0:0:0:0:0:0:0 → ::

三、内嵌IPv4地址表示法
  为了实现IPv4-IPv6互通,IPv4地址会嵌入IPv6地址中,此时地址常表示为:X:X:X:X:X:X:d.d.d.d,前96b采用冒分十六进制表示,而最后32b地址则使用IPv4的点分十进制表示,例如::192.168.0.1与::FFFF:192.168.0.1就是两个典型的例子,注意在前96b中,压缩0位的方法依旧适用.

internet proto version 6
ipv4 32/2    地址枯竭 子网掩码24 16 8
ipv6 128/2    子网16 32 48 64 80
128/2 ------------> 128/8    16    ------> 0-f
2017:0:0:0:f:0:0:1/48
2017::f:0:0:1
2017:0:0:0:f::1
0000------>ffff

IPv6协议主要定义了三种地址类型:单播地址(Unicast Address)组播地址(Multicast Address)和任播地址(Anycast Address)。与原来在IPv4地址相比,新增了“任播地址”类型,取消了原来IPv4地址中的广播地址,因为在IPv6中的广播功能是通过组播来完成的。
单播地址:用来唯一标识一个接口,类似于IPv4中的单播地址。发送到单播地址的数据报文将被传送给此地址所标识的一个接口。
组播地址:用来标识一组接口(通常这组接口属于不同的节点),类似于IPv4中的组播地址。发送到组播地址的数据报文被传送给此地址所标识的所有接口。
任播地址:用来标识一组接口(通常这组接口属于不同的节点)。发送到任播地址的数据报文被传送给此地址所标识的一组接口中距离源节点最近(根据使用的路由协议进行度量)的一个接口。
Pv6地址类型是由地址前缀部分来确定,主要地址类型与地址前缀的对应关系如下:
地址类型 地址前缀(二进制) IPv6前缀标识
单播地址 未指定地址 00…0(128 bits) ::/128
环回地址 00…1(128 bits) ::1/128
链路本地地址 1111111010 FE80::/10
站点本地地址 1111111011 FEC0::/10
全球单播地址 其他形式 -
组播地址
11111111 FF00::/8
任播地址
从单播地址空间中进行分配,使用单播地址的格式

2.配置:


静态IPV6地址设备,修改/etc/sysconfig/network-script/ifcfg-eth0文件,添加

linux网络IPv6



IPV6INIT=yes              (是否开机启用IPV6地址)
IPV6_AUTOCONFI=no             (是否使用IPV6地址的自动配置)
IPV6ADDR=2017::f/64        ( IPV6地址)

linux网络IPv6