IPv6概念整理

IPv6概念整理,第1张

主要由基本的概述、地址的表示、子网划分、报头还有通信这几个方面

IPv6的特性

首先是IPv6的基本情况。IPv6是为了弥补IPv4的不足而诞生的。

1.互联网的不断发展下,IPv4下的IP地址已经饱和。对于互联网物联网的发展来说可能需要更加充足的IP地址。对于IPv6协议来说,IPv6的地址有128位的地址,可以提供2^128个地址。可以满足不断增长的IP需求

2.IPv4本身不提供安全功能,需要其他的安全软件对传输的数据进行加密。IPv6上IPSec安全功能是默认开启的。(IPv4上是可选的)这在一定程度上增加了通信的安全性。

3.IPv4的包头长度是可变的,这样的包头加重了路由器转发的负担。而IPv6简化了包头,将不必要的信息放在头的末尾。路由器只需要查看第一部分的包头进行转发即可,不需要再去查看扩展包头。扩展包头可以到应用程序了再进行查看。

4.IPv4需要DHCP服务去配置IP。而IPv6支持主机有状态和无状态的自动配置。在一定程度上节省了资源

IPv6由8个16位块(128位二进制)组成。十六进制上由8组4位十六进制数字表示,使用冒号:进行分割。

2001:0000:3238:DFE1:0063:0000:0000:FEFB

就算在十六进制下IP地址仍然显示很长,由此有两种方式来缩短IP地址

1.丢弃前导零

如果一个组内有多个零时。可以省略这些零。

2001:0000:3238:DFE1:63:0000:0000:FEFB

2001:0:3238:DFE1:63:0:0:FEFB

2.两个或多个块中连续为零可用::表示。

2001:0000:3238:DFE1:63::FEFB

一个IP地址中只能使用一次::否则分析器没有办法确定有多少字段缺少0 .没有办法补齐IP地址

1.单播:

1 vs 1 主机只与目标地址进行通信。

2. 组播:

1 vs N。 主机将数据发送给组播组内的所有主机。

3. 任播:

多个接口分配了相同的任播IP地址

主机要与配备有任播IP地址的主机通信,会发送单播消息。路由器会找到最近的目标主机。

有三种单播地址:

全局单薄地址: Global unicast address

    格式: 全局路由前缀+子网ID+接口ID

    可理解为IPv4中的公网地址

全局地址是通过IPv6前缀下发所拿到的一个全局可达的IPv6地址,例如下图中的fd4d:e0f1:f1db::250:56ff:fe86:1b10。有了这个全局IPv6地址,就能跟世界上任何一个IPv6全局地址通讯了,类似于通俗说的公网地址

链路本地地址:link-local address

    自动配置IPv6的地址。始终以FE80开头。

    格式:FE80+0+接口ID

    只可以在本地链路上使用。不能被路由

在同一个交换机下面的机器就能直接通过这个地址通讯啦,不需要再配置别的地址。

·   

 假设公司内网有两个不同的子网A和B(IPv6中的链路就是同一子网内的主机。)

    所以链路A的IPv6主机只能在链路A内与其他IPv6主机进行通信。不能和链路B的IPv6主机进行通信。(如果链路A的IPv6主机要与链路B的IPv6主机进行通信就需要跨路由)

    本地链路地址只能在本地链路上使用。且不能被路由

唯一本地地址: unique local address

这种IPv6地址是全局唯一的。但只应用于本地通信

格式:前缀+本地位+全局ID+子网ID+接口ID

唯一本地IPv6地址始终以 FD 开头

对应于链路本地地址上的例子。唯一本地地址是 可以通过路由 在链路A和链路B上进行通信的。但他的通信范围只局限在私有网络。可以理解为IPv4的私有网络。

IP:192.168.1.3  Mask:255.255.255.0

CIDR IP:192.168.1.3/24

IPv6使用网络前缀来进行子网划分。

2001:C3:0:2C6A::/64 ----》 subnet

2001:C3:0:2C6A:C9B4:FF12:48BC:1A22/64 ---->address of the subnet

相比IPv4包头来说IPv6的包头精简了很多。

删除掉了IPv4的包头长度/标志/标识/分片偏移/包头校验和/选项/可填充变量

Version:标识Version即版本信息,4代表IPv4,6代表IPv6;

IHL:标识了IP报文的首部长度,大小为20-60字节;

Type of Service:服务类型,在QoS中才会使用到此字段;

Total Length:IP报文段的总长度;

Identification:标识,主机每发一个报文,则+1;

Flags:3个bit,分别为保留位,DF位(0可以分片,1不能分片),MF位(0最后一片,1未完待续);

Fragment Offset:片偏移,分片重组的时候需要使用到的字段,此处不做详细解释;

Time to Live:简称TTL,数据包可在网络中经过的路由节点数;

Protocol:下层协议,如UDP或TCP等;

Header Checksum:首部校验和;

Source Address:源IP地址;

Destination Address:目的IP地址;

Options:选项字段;

Padding:填充字段。

增加了流标签和扩展包头信息

    版本:表示internet协议的版本

    流量类型: 最重要的6位用于服务类型,以便让路由器知道应该向该分组提供什么服务。 最低有效2位用于显式拥塞通知(ECN)。

    流标签:维护同学的数据包的顺序流。尚未定义好如何使用

    有效负载长度:扩展包头+上层数据

    下一个包头:扩展包头

IPv6扩展报文头的引入简化了IPv6基本报文头的格式,一个IPv6报文中可以包含0个及以上扩展报文头。当需要有多个IPv6扩展报文头的时候,IPv6的基本报文头的Next Header字段将会指明下一个扩展报文头的类型,IPv6扩展报文头的Next Header字段将会指明下一个扩展报文头的类型,以此类推,如果后续没有IPv6扩展报文头,那么此字段将指明上层协议类型。

路由设备转发时根据基本报头中Next Header值来决定是否要处理扩展头,并不是所有的扩展报头都需要被转发路由设备查看和处理的。除了目的选项扩展报头可能出现一次或两次(一次在路由扩展报头之前,另一次在上层协议数据报文之前),其余扩展报头只能出现一次。

用来实现地址解析,重复地址检测,路由器发现以及路由重定向等功能。具体的ICMPv6的消息类型及具体作用如下

邻居请求报文NS(Neighbor Solicitation)报文:Type字段值为135,Code字段值为0,在地址解析中的作用类似于IPv4中的ARP请求报文。用来获取邻居的链路层地址,验证邻居是否可达,进行重复地址检测等。

邻居通告报文NA(Neighbor Adivertisment)报文:Type字段值为136,Code字段值为0,在地址解析中的作用类似于IPv4中的ARP应答报文。用来对NS消息进行响应。另外,当节点在链路层变化的时候主动发出NA消息,告知邻居本节点的变化。

ICMPv6路由器请求(Router Solicitation)消息:Type字段值为133,节点启动后,通过RS消息向路由器发出请求,请求前缀和其他配置信息,用于节点的自动配置。

ICMPv6路由器通告(Router Advertisement)消息:Type字段值为134,对RS消息进行回应。在没有抑制RA消息发布的条件下,路由器会周期性地发布RA消息,其中包括前缀信息选项和一些标志位的信息。

ICMPv6重定向(Redirect)消息:Type字段值为137,当满足一定的条件时,缺省网关通过向源主机发送重定向消息,使主机重新选择正确的下一跳地址进行后续报文的发送。

地址解析

整体报文交互总览(NS和NA):

①节点1会发送一个NS报文,Type值为135,源地址为节点1的IPv6地址。目的地址为节点2的被请求节点组播地址,要请求的为节点2的链路层地址。同时NS的报文的Options字段中携带了节点1的链路层地址。如下图:

获取同一链路上邻居节点的链路层地址(与IPv4的ARP功能相同),通过邻居请求消息NS和邻居通告消息NA实现。节点1要获取节点节点2的链路层地址。

DAD (重复地址检测):

邻居请求报文NS(Neighbor Solicitation)报文:Type字段值为135,Code字段值为0,在地址解析中的作用类似于IPv4中的ARP请求报文。用来获取邻居的链路层地址,验证邻居是否可达,进行重复地址检测等。

节点在发送路由器公告前要获得唯一的链路本地地址

为什么要唯一:未确定唯一性的地址不能使用。即不能接收目的地址或者发送源地址为此地址的分组

1.接口要加入全节点组播地址 FF02::1

2.要生成IPv6地址的请求节点组播地址(solicited-node multicast address).接受地址为IPv6的这些分组

3.发送NS请求。源地址为::。目的地址为临时单播地址请求节点的组播地址

4.所生成的local-link address会处于暂时状态(Tentative)。如果收到该节点的回应则证明该节点已被使用。需要重新生成新的local-link address.如果没有NS回应则证明该节点没有被其他主机使用。则确定local-link address

邻居通告:将地址分配给接口并启用后。主机再次发送邻居通告告诉该段上的其他主机。这个IP地址已经被使用了。

路由器请求:

在段上对路由器发送组播数据包。了解该段上的路由器

帮助主机设置默认网关

路由器通告:

路由器收到路由器请求时会回应主机,告诉它他在链路上的存在

如果路由器觉得自己不是最佳网关,会给主机回复重定向消息。告诉主机有更好的路由器可以使用

IPv4与IPv6是不兼容的,所以需要过度技术的支持

双栈路由器:

网络节点同时支持IPv4和IPv6两种协议。在IP网络上形成逻辑相互独立的两个IP网络。源地址根据要访问的目的地的类型自动选择相应的网络。

大多数软硬件都支持IPv4和IPv6.这个方法解决了IPv4和IPv6的共存问题,但是没有解决IPv4和IPv6的互通问题。

目的是为了解决IPv6的信息孤岛问题。

把一个协议数据包的报头(IPv4)直接封装在原包头(IPv6)上,伪装成该一个协议(IPV4)。通过该协议的的网络(IPv4)。到了原本协议相应的网络(IPv6)之后再把添加的包头(IPv4)拆掉

通过NAT-PT(网络地址转换 - 协议转换)将IPv6网络转移成IPv4网络传送给IPv4主机

IPv6是"Internet Protocol Version 6"的缩写,也被称作下一代互联网协议,它是由IETF设计的用来替代现行的IPv4协议的一种新的IP协议。

今天的互联网大多数应用的是IPv4协议,IPv4协议已经使用了20多年,在这20多年的应用中,IPv4获得了巨大的成功,同时随着应用范围的扩大,它也面临着越来越不容忽视的危机,例如地址匮乏等等。

IPv6是为了解决IPv4所存在的一些问题和不足而提出的,同时它还在许多方面提出了改进,例如路由方面、自动配置方面。经过一个较长的IPv4和IPv6共存的时期,IPv6最终会完全取代IPv4在互连网上占据统治地位。对比IPv4,IPv6有如下的特点,这些特点也可以称作是IPv6的优点:简化的报头和灵活的扩展 ;层次化的地址结构 ;即插即用的连网方式 ;网络层的认证与加密 ;服务质量的满足 ;对移动通讯更好的支持。

简化的报头和灵活的扩展

IPv6对数据报头作了简化,以减少处理器开销并节省网络带宽。IPv6的报头由一个基本报头和多个扩展报头(Extension Header)构成,基本报头具有固定的长度(40字节),放置所有路由器都需要处理的信息。由于Internet上的绝大部分包都只是被路由器简单的转发,因此固定的报头长度有助于加快路由速度。IPv4的报头有15个域,而IPv6的只有8个域,IPv4的报头长度是由IHL域来指定的,而IPv6的是固定40个字节。这就使得路由器在处理IPv6报头时显得更为轻松。与此同时,IPv6还定义了多种扩展报头,这使得IPv6变得极其灵活,能提供对多种应用的强力支持,同时又为以后支持新的应用提供了可能。这些报头被放置在IPv6报头和上层报头之间,每一个可以通过独特的“下一报头”的值来确认。除了逐个路程段选项报头(它携带了在传输路径上每一个节点都必须进行处理的信息)外,扩展报头只有在它到达了在IPv6的报头中所指定的目标节点时才会得到处理(当多点播送时,则是所规定的每一个目标节点)。在那里,在IPv6的下一报头域中所使用的标准的解码方法调用相应的模块去处理第一个扩展报头(如果没有扩展报头,则处理上层报头)。每一个扩展报头的内容和语义决定了是否去处理下一个报头。因此,扩展报头必须按照它们在包中出现的次序依次处理。一个完整的IPv6的实现包括下面这些扩展报头的实现:逐个路程段选项报头,目的选项报头,路由报头,分段报头,身份认证报头,有效载荷安全封装报头,最终目的报头。

层次化的地址结构

IPv6将现有的IP地址长度扩大4倍,由当前IPv4的32位扩充到128位,以支持大规模数量的网络节点。这样IPv6的地址总数就大约有3.4*10E38个。平均到地球表面上来说,每平方米将获得6.5*10E23个地址。IPv6支持更多级别的地址层次,IPv6的设计者把IPv6的地址空间按照不同的地址前缀来划分,并采用了层次化的地址结构,以利于骨干网路由器对数据包的快速转发。

IPv6定义了三种不同的地址类型。分别为单点传送地址(Unicast Address),多点传送地址(Multicast Address)和任意点传送地址(Anycast Address)。所有类型的IPv6地址都是属于接口(Interface)而不是节点(node)。一个IPv6单点传送地址被赋给某一个接口,而一个接口又只能属于某一个特定的节点,因此一个节点的任意一个接口的单点传送地址都可以用来标示该节点。

IPv6中的单点传送地址是连续的,以位为单位的可掩码地址与带有CIDR的IPv4地址很类似,一个标识符仅标识一个接口的情况。在IPv6中有多种单点传送地址形式,包括基于全局提供者的单点传送地址、基于地理位置的单点传送地址、NSAP地址、IPX地址、节点本地地址、链路本地地址和兼容IPv4的主机地址等。

多点传送地址是一个地址标识符对应多个接口的情况(通常属于不同节点)。IPv6多点传送地址用于表示一组节点。一个节点可能会属于几个多点传送地址。在Internet上进行多播是在1988年随着D类IPv4地址的出现而发展起来的。这个功能被多媒体应用程序所广泛使用,它们需要一个节点到多个节点的传输。RFC-2373对于多点传送地址进行了更为详细的说明,并给出了一系列预先定义的多点传送地址。

任意点传送地址也是一个标识符对应多个接口的情况。如果一个报文要求被传送到一个任意点传送地址,则它将被传送到由该地址标识的一组接口中的最近一个(根据路由选择协议距离度量方式决定)。任意点传送地址是从单点传送地址空间中划分出来的,因此它可以使用表示单点传送地址的任何形式。从语法上来看,它与单点传送地址间是没有差别的。当一个单点传送地址被指向多于一个接口时,该地址就成为任意点传送地址,并且被明确指明。当用户发送一个数据包到这个任意点传送地址时,离用户最近的一个服务器将响应用户。这对于一个经常移动和变更的网络用户大有益处。

即插即用的连网方式

IPv6把自动将IP地址分配给用户的功能作为标准功能。只要机器一连接上网络便可自动设定地址。它有两个优点。一是最终用户用不着花精力进行地址设定,二是可以大大减轻网络管理者的负担。IPv6有两种自动设定功能。一种是和IPv4自动设定功能一样的名为“全状态自动设定”功能。另一种是“无状态自动设定”功能。

在IPv4中,动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)实现了主机IP地址及其相关配置的自动设置。一个DHCP服务器拥有一个IP地址池,主机从DHCP服务器租借IP地址并获得有关的配置信息(如缺省网关、DNS服务器等),由此达到自动设置主机IP地址的目的。IPv6继承了IPv4的这种自动配置服务,并将其称为全状态自动配置(Stateful Autoconfiguration)。

在无状态自动配置(Stateless Autoconfiguration)过程中,主机首先通过将它的网卡MAC地址附加在链接本地地址前缀1111111010之后,产生一个链路本地单点传送地址。接着主机向该地址发出一个被称为邻居发现(neighbor discovery)的请求,以验证地址的唯一性。如果请求没有得到响应,则表明主机自我设置的链路本地单点传送地址是唯一的。否则,主机将使用一个随机产生的接口ID组成一个新的链路本地单点传送地址。然后,以该地址为源地址,主机向本地链路中所有路由器多点传送一个被称为路由器请求( router solicitation)的配置信息。路由器以一个包含一个可聚集全球单点传送地址前缀和其它相关配置信息的路由器公告响应该请求。主机用它从路由器得到的全球地址前缀加上自己的接口ID,自动配置全球地址,然后就可以与Internet中的其它主机通信了。使用无状态自动配置,无需手动干预就能够改变网络中所有主机的IP地址。例如,当企业更换了联入Internet的ISP时,将从新ISP处得到一个新的可聚集全球地址前缀。ISP把这个地址前缀从它的路由器上传送到企业路由器上。由于企业路由器将周期性地向本地链路中的所有主机多点传送路由器公告,因此企业网络中所有主机都将通过路由器公告收到新的地址前缀,此后,它们就会自动产生新的IP地址并覆盖旧的IP地址。

使用DHCPv6进行地址自动设定,连接于网络的机器需要查询自动设定用的DHCP服务器才能获得地址及其相关配置。可是,在家庭网络中,通常没有DHCP服务器,此外在移动环境中往往是临时建立的网络,在这两种情况下,当然使用无状态自动设定方法为宜。

网络层的认证与加密

安全问题始终是与Internet相关的一个重要话题。由于在 IP协议设计之初没有考虑安全性,因而在早期的Internet上时常发生诸如企业或机构网络遭到攻击、机密数据被窃取等不幸的事情。为了加强Internet的安全性,从1995年开始,IETF着手研究制定了一套用于保护IP通信的IP安全(IPSec)协议。IPSec是IPv4的一个可选扩展协议,是IPv6的一个必须组成部分。

IPSec的主要功能是在网络层对数据分组提供加密和鉴别等安全服务,它提供了两种安全机制:认证和加密。认证机制使 IP通信的数据接收方能够确认数据发送方的真实身份以及数据在传输过程中是否遭到改动。加密机制通过对数据进行编码来保证数据的机密性,以防数据在传输过程中被他人截获而失密。IPSec的认证报头(Authentication Header,AH)协议定义了认证的应用方法,安全负载封装(Encapsulating Security Payload,ESP)协议定义了加密和可选认证的应用方法。在实际进行IP通信时,可以根据安全需求同时使用这两种协议或选择使用其中的一种。AH和ESP都可以提供认证服务,不过,AH提供的认证服务要强于ESP。

IPSec定义了两种类型的SA:传输模式SA和隧道模式SA。传输模式SA是在IP报头(以及任何可选的扩展报头)之后和任何高层协议(如TCP或UDP)报头之前插入AH或ESP报头;隧道模式SA是将整个原始的IP数据包放入一个新的IP数据包中。在采用隧道模式SA时,每一个IP数据包都有两个IP报头:外部IP报头和内部IP报头。外部IP报头指定将对IP数据包进行IPSec处理的目的地址,内部IP报头指定原始IP数据包最终的目的地址。传输模式SA只能用于两个主机之间的IP通信,而隧道模式SA既可以用于两个主机之间的IP通信,还可以用于两个安全网关之间或一个主机与一个安全网关之间的IP通信。安全网关可以是路由器、防火墙或VPN设备。

做为IPv6的一个组成部分,IPSec是一个网络层协议。它只负责其下层的网络安全,并不负责其上层应用的安全,如Web、电子邮件和文件传输等。也就是说,验证一个Web会话,依然需要使用SSL协议。不过,TCP/IPv6协议簇中的协议可以从IPSec中受益,例如,用于IPv6的OSPFv6路由协议就去掉了用于IPv4的OSPF中的认证机制。

作为IPSec的一项重要应用,IPv6集成了虚拟专用网(VPN)的功能,使用IPv6可以更容易地、实现更为安全可靠的虚拟专用网。

服务质量的满足

基于IPv4的Internet在设计之初,只有一种简单的服务质量,即采用“尽最大努力”(Best effort)传输,从原理上讲服务质量QoS是无保证的。文本传输,静态图像等传输对QoS并无要求。随着IP网上多媒体业务增加,如IP电话、VoD、电视会议等实时应用,对传输延时和延时抖动均有严格的要求。

IPv6数据包的格式包含一个8位的业务流类别(Class)和一个新的20位的流标签(Flow Label)。最早在RFC1883中定义了4位的优先级字段,可以区分16个不同的优先级。后来在RFC2460里改为8位的类别字段。其数值及如何使用还没有定义,其目的是允许发送业务流的源节点和转发业务流的路由器在数据包上加上标记,并进行除默认处理之外的不同处理。一般来说,在所选择的链路上,可以根据开销、带宽、延时或其他特性对数据包进行特殊的处理。

一个流是以某种方式相关的一系列信息包,IP层必须以相关的方式对待它们。决定信息包属于同一流的参数包括:源地址,目的地址,QoS,身份认证及安全性。IPv6中流的概念的引入仍然是在无连接协议的基础上的,一个流可以包含几个TCP连接,一个流的目的地址可以是单个节点也可以是一组节点。IPv6的中间节点接收到一个信息包时,通过验证他的流标签,就可以判断它属于哪个流,然后就可以知道信息包的QoS需求,进行快速的转发。

对移动通讯更好的支持

未来移动通信与互联网的结合将是网络发展的大趋势之一。移动互联网将成为我们日常生活的一部分,改变我们生活的方方面面。权威机构预计,到2005年,全球将有14亿移动电话用户,其中10亿为移动互联网用户。移动互联网不仅仅是移动接入互联网,它还提供一系列以移动性为核心的多种增值业务:查询本地化设计信息、远程控制工具、无限互动游戏、购物付款等。

移动IPv6的设计汲取了移动IPv4的设计经验,并且利用了IPv6的许多新的特征,所以提供了比移动IPv4更多的、更好的特点。移动IPv6成为IPv6协议不可分割的一部分。

网络的发展,IPv6的时代也即将到来。先从IPv6的优点说起

1,巨大的地址空间2^128个

2,更有效的路由基础结构。 IPv6使得互联网上的骨干路由器的路由表可以简化,当在前IPv4环境下,骨路由器通常有85000条路由,而在IPv6中,路由表的路由条目大大减少。IPv6的结构,具有相当的层次性。128位一分为二,前64位起一个作用,后64位起一个作用。前64位在分段。有一个非常强的数据结构

3,更好的安全性 在IPv4中,IPsec是可选的。但在IPv6中,是必须要使用IPsec的。

4,移动性 在多个地点漫游,也可以保持连接

5,更好的QOS保证更好的服务质量 这也是IPv4的一个先天性的缺陷

IPV6 TCP/IP 架构术语

Node 节点 实施了IPv6的一台路由器或一台交换机或一台计算机等等

Lan segment 同一种数据链路层的实现 可能是以太网,也可能是FDDI

Link /链路 不过路由器的,就是一个Link 不需要数据转发的

Subent 多个Link

Neighbors 邻节点,多个节点,在一个Link上,它们之间的数据传输是不需要路由器转发的。

根据neighbor发现相邻节点

Interface 接口。可能是逻辑的(PPPOE就虚拟的一个接口),也可能是物理的(网卡)

Link MTU MTU 大传输单元 Link上传输的最大值

Path MTU从数据源发送一个数据包到一个目的地址,中间可能经过很多个网段,每一个可能都是一个单独的Link

而每一个Link的MTU都是不一样的,而Path MTU是所有Link里最小的一个

因为它不会超过Link MTU。也不用像IPv4那样拆分

IPv6地址 128位

IPv6地址语法:用十六进制表示

IPv6地址的类型:全球的,本地的,单播的,多播折,泛播的很多种

IPv6接口标识: MAC地址 数据链路层的地址和网络层的地址是有关系的

IPv6地址空间

128位地址空间 有2^128个地址

当前使用情况:15%可用 85%保留不可用

选择128位,并非仅仅为了巨大的地址空间,是为了能更好的把路由域名划分出层次结构,更好的反映现代Internet的拓扑结构,128位可以容纳多级的层次结构

前64Bits 前缀 类型 范畴等标识位

后64BitsInterface ID

IPv6地址语法

IPv6地址的纯2进制表示:128个0和1组成,每16位为一段,共八段。

用16进制表示,并用冒号分割:

21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A 每四位一段,共八段

每段中起始的0可以省略

写法为:21DA:D3:0:2F3B:2AA:FF:FE28:9C5A

那为什么要选择16进制来表示IPv6?

1,IPv4选择十进制主要是方便读,方便记

2,IPv6如果用十进制来表示,则将出现16段分割的10进制,相比之下不方便读,更不方便记

3,二进制与十六进制更容易转换

4,在IPv6中地址的自动配置更容易和灵活,因此大部分时候终端用户使用机器名,即使在没有DHCP的情况下,它

也能自动分配IP

零压缩法 为了进一步简化地址标识

用法:连续的一段或者多段全零地址缩写为 ::

例如:FE80:0:0:0:2AA:FF:FE9A:4CA2

FE80::A:FF:FE9A:4CA2

FF02:0:0:0:0:0:0:2

FF02::2

当看到两个冒号时,就意味着中间全是零

规则:一个地址中,只能有一次使用 ::

IPv6地址前缀

IPv4的表示法 标准的A,B,C三类

无类域间路由(CIDR):10.10.10.1/24 可自由划分一个网段

IPv6采用地址前缀长度表示法它没有子网这个概念

21DA:D3:0:2F3B:: /64一个子网

前64表示一个子网,后64位表示网络接口地址

21DA:D3:: /48 一个路由

/48 小于64 此时它表示一个路由 这样的作法就让路由表变的简单

FF00:: /8 地址段

IPv6地址类型

单播Unicast

1,标识单个接口(Interface)

2,负载均衡场景下多个接口呵以使用同一个单播地址

3,数据包发送给单个接口

一个数据包发出去,给一个单独的目标接口

多播Multicast

标识一组(0-多个)接口

数据包发送到该组内所有的接口

一个数据包发送出去,对方可能是一组,这一组可能是0-多个接口,只要是这个组里的,都可以收到

泛播Any cast

1,标识一组接口

2,数据包最终发一大批到该组内唯一一个接口

3,该接口是路由协议认为距离发送方最近的一个

4,不同路由协议对距离的衡量标准不同

定义了一组接口,将数据发送给该组唯一的一个接口,主要给路由器使用。

单播IPv6地址

全球的单播地址(Global Address) 此地址在互联网可以跌幅 相当于IPv4的公网地址

本地使用的单播仅局域网使用,互联网不路由

结构:以001开头 然后是45位的global routing prefix 全球方位路由,后面是16位的子网ID,最后是64位的接口ID

45Bits 16Bits 64Bits

001Global Routing Prefix Subnet IDInterface ID

本地使用的单播:

链路本地地址:Link-Local Address 不跨路由器的

地址范畴是一个单一的Link,这个地址是不会被路由器转发的。它类似于IPv4中的169.254.0.0/16 不指派DHCP分的IP,但也少有区别

以FE80开头,一看到FE80,那就是Link Local 自动配置

作用:自动配置,对邻节点发现过程是必需的

站点本地地址 Site-Local Address

相当于IPv4的私有地址,可跨路由器,但不可在公网使用

非自动配置,必须通过有状态或无状态的地址自动分配进行指派

范围:FEC0-FEFF

开头为FEC,FED,FEE,FEF的地址都是Site Local

本地回环地址

0:0:0:0:0:0:0:1 类似于IPv4中的127.0.0.1

IPv6 128位被表示成8段X16(每段16位)

前四段表示网段

1,第一段表示该单播地址的类型

2,FE80是Link-Locl Address

3,FEC-FEF是Site-Local Address

4,以2或者是3开始的是Global Address

5,后四段标识一个网络接口

IPv6接口标识 Interface Identifiers

IPv6中接口标识部分为64位,并非为了在同一个子网上支持2^64台主机,是为了方便与48位MAC地址映射,以用1394和将来的64位MAC地址映射

以后的MAC地址都是64位的,新的标准 IEEE EUI-64

公司地址仍然为24位 拓展ID增加到40位,给网卡制造商更大的地址空间

从EUI-64 生成IPv6接口标识

IPv6的后64位,可以从EUI-64的MAC地址生成,也可以手工指定,也可以通过其它方式

确定接口的方法有很多种:

所有001-111前缀的单播,必须从EUI-64生成

或,随即生成,以便实现一定的匿名需要

或,由状态自动配置(如DHCPv6)

或,随即生成(V如PPP)

或,手工指定

多播IPv6地址

前缀 11111111(8位)

FF01::1 节点本地范围所有的李点多播地址 一个节点上的所有接口

FF02::1 链路本地范围所有的节点多播地址 IPv4中的广播 Link上的所有节点

FF01::2 节点本地范围所有路由器多播地址

FF02::2 链路本地范围所有路由器多播地址

FF05::2 站点本地范围所有路由器多播地址

FF02::1 取代了IPv4中各类广播地址

请求节点多播地址

主要用于数据链路层地址解析

在IPv4中,利用ARP,以广播的形式 假如给192.168.1.100发送数据,就必须要知道它的MAC地址,这时就要发送广播,通过广播,就可知道它的数据链路层地址,这个做法会干扰到链路上的所有节点。

所以在IPv6中,就用了一个请求节点,来实现链路的解析

IPv6地址与请求节点地址是1对1的

根据IPv6地址得出请求节点地址(后24位一致)

IPv6 地址: FE80::2AA:FF:FE28:9C5A

相应的请求节点:FF02::1:FF28:9C5A

将IPv6地址后24位取下来,前面是固定的。它会去侦听

侦听的作用:当发送方要访问FE80::2AA这个地址,但不知道它的数据链路层地址,这个时候要将数据发送给多播地址,FFO2这个地址,后24位是一样的。根据一个算法,将IPv6地址算成一个多播地址。多播地址与IPv6地后24位是一样的


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/358520.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-10
下一篇2023-05-10

发表评论

登录后才能评论

评论列表(0条)

    保存