Internet协议版本6(IPv6)是互联网协议(IP)的最新修订版本和要广泛部署的协议的第一版本。 IPv6由互联网工程任务组(IETF)开发,用于处理IPv4地址耗尽的长期预期问题。 。
互联网协议版本6是一种新的寻址协议,旨在包含未来互联网的所有可能需求,我们知道互联网版本2.该协议作为其前身IPv4,工作在网络层(第3层)。 随着其提供大量的逻辑地址空间,该协议具有充分的特征,其解决了IPv4的缺点。
到目前为止,IPv4已经证明自己是一个可靠的可路由寻址协议,并且已经为我们的最大努力传递机制服务了几十年。 它是在80年代初设计的,没有得到任何重大的变化。 在它诞生时,互联网仅限于少数几所大学的研究和国防部。 IPv4是32位长,并提供大约4,294,967,296(232 )个地址。 这个地址空间被认为是足够的时间。 以下是在IPv6诞生中发挥关键作用的要点:
IPv4的后继设计不是向后兼容的。 为了保持IP地址的基本功能,IPv6被完全重新设计。 它提供以下功能:
在计算机网络中,寻址模式是指在网络上托管地址的机制。 IPv6提供了几种类型的模式,通过它们可以寻址单个主机。 可以立即寻址多个主机,或者可以寻址最近距离处的主机。
在单播寻址模式下,IPv6接口(host)在网段中唯一标识。 IPv6数据包包含源IP地址和目标IP地址。 主机接口配备有在该网络段中唯一的IP地址。当网络交换机或路由器接收到单个主机的单播IP分组时,它发出其连接到该特定主机的输出接口之一 。
IPv6组播模式与IPv4相同。 目的地为多个主机的数据包在特殊的多播地址上发送。 所有对该组播信息感兴趣的主机需要首先加入该组播组。 加入组的所有接口接收组播数据包并对其进行处理,而对组播数据不感兴趣的其他主机则忽略组播信息。
IPv6引入了一种新型的寻址,称为Anycast寻址。 在此寻址模式下,多个接口(host)被分配相同的任播IP地址。 当主机希望与配备有任播IP地址的主机通信时,它发送单播消息。 在复杂的路由机制的帮助下,在路由成本方面,该单播消息被递送到最接近发送方的主机。
让我们以一个位于所有大陆的TutorialPoints.com Web服务器为例。 假设所有Web服务器都分配有单个IPv6 Anycast IP地址。 现在,当欧洲的用户希望访问TutorialsPoint.com时,DNS指向物理上位于欧洲的服务器。 如果来自印度的用户尝试访问Tutorialspoint.com,则DNS将指向物理位于亚洲的Web服务器。 最接近或最接近的术语用于路由成本。
在上面的图片中,当客户端计算机尝试到达服务器时,请求被转发到具有最低路由开销的服务器。
在介绍IPv6地址格式之前,我们将探讨十六进制数字系统。 十六进制是使用radix(base)为16的位置数系统。为了以可读格式表示值,该系统使用0-9个符号表示从0到9的值,A-F表示从10到15的值。 十六进制中的每个数字都可以表示0到15之间的值。
IPv6地址由被划分为8个16位块的128位组成。 然后将每个块转换为由冒号符号分隔的4位十六进制数字。
每个块被转换为十六进制并由’:'符号分隔:
2001:0000:3238:DFE1:0063:0000:0000:FEFB
即使在转换为十六进制格式后,IPv6地址仍然很长。 IPv6提供了一些规则来缩短地址。 规则如下:
**规则1:**丢弃前导零:
在块5,0063中,可以省略前导的两个0,例如(第五块):
2001:0000:3238:DFE1:63:0000:0000:FEFB
**规则2:**如果两个或多个块包含连续零,则省略它们并用双冒号sign ::替换,例如(第6和第7块):
2001:0000:3238:DFE1:63::FEFB
连续的零块只能被::替换一次。如果地址中仍有零块,它们可以缩小到一个零,例如(第二块):
2001:0:3238:DFE1:63::FEFB
此地址类型等同于IPv4的公共地址。 IPv6中的全球单播地址是全局可识别的和唯一可寻址的。
全局路由前缀:最高有效48位指定为全局路由前缀,分配给特定的自治系统。 全局路由前缀的三个最高有效位始终设置为001。
自动配置的IPv6地址称为链路本地地址。 此地址始终以FE80开头。 链路本地地址的前16位总是设置为1111 1110 1000 0000(FE80)。 接下来的48位设置为0,因此:
链路本地地址仅用于链路(广播段)上的IPv6主机之间的通信。 这些地址不可路由,因此路由器不会将这些地址转发到链路之外。
这种类型的IPv6地址是全局唯一的,但它应该用于本地通信。 该地址的后半部分包含接口ID,前半部分被分为前缀,本地位,全局ID和子网ID。
前缀始终设置为1111 110。 L位,如果地址是本地分配,则设置为1。 到目前为止,L位到0的含义没有定义。 因此,唯一本地IPv6地址始终以“FD"开头。
链路本地地址的范围仅限于段。 唯一本地地址是本地全局的,但不通过Internet路由,将其范围限制为组织的边界。 全球单播地址是全球唯一和可识别的。 他们应该是互联网寻址的本质。
IPv6具有比IPv4更复杂的IP地址结构。 IPv6已经为特殊目的保留了几个地址和地址符号。 参见下表:
IPv6的奇迹在于它的头部。 IPv6地址是IPv4的4倍,但令人惊讶的是,IPv6地址的头部仅比IPv4的头部大2倍。 IPv6报头有一个固定报头和零个或多个可选(扩展)报头。 所有必要的信息,对路由器是必不可少的保存在固定报头。 扩展报头包含可选信息,帮助路由器了解如何处理数据包/流。
IPv6固定报头长度为40字节,包含以下信息。
S.N. | 字段和说明 |
---|---|
1 | 版本(4位):表示Internet协议的版本,即0110。 |
2 | 流量类(8位):这8位分为两部分。 最重要的6位用于服务类型,以便让路由器知道应该向该分组提供什么服务。 最低有效2位用于显式拥塞通知(ECN)。 |
3 | 流标签(20位):此标签用于维护属于通信的数据包的顺序流。 源标记序列以帮助路由器识别特定分组属于特定信息流。 此字段有助于避免数据包的重新排序。 它是为流媒体/实时媒体设计的。 |
4 | 有效负载长度(16位):该字段用于告诉路由器特定分组在其有效载荷中包含多少信息。 有效载荷由扩展报头和上层数据组成。 使用16位,可以指示高达65535个字节; 但是如果扩展报头包含逐跳扩展报头,则有效载荷可能超过65535字节,并且此字段设置为0。 |
5 | 下一个报头(8位):该字段用于指示扩展报头的类型,或者如果扩展报头不存在,则它指示上层PDU。 上层PDU的类型的值与IPv4的相同。 |
6 | 跳跃限制(8位):此字段用于无限期地停止数据包在网络中循环。 这与IPv4中的TTL相同。 跳跃限制字段的值在它通过链路(路由器/跳跃)时递减1。 当字段达到0时,数据包被丢弃。 |
7 | 源地址(128位):此字段指示数据包的发起方的地址。 |
8 | 目的地址(128位):此字段提供数据包的预期收件人的地址。 |
在IPv6中,固定报头只包含所需的很多信息,避免那些不需要或很少使用的信息。 所有这些信息以扩展报头的形式被放在固定报头和上层报头之间。 每个扩展头由不同的值标识。
当使用扩展报头时,IPv6固定报头的下一报头字段指向第一个扩展报头。 如果还有一个扩展头,则第一个扩展头的“下一个头"字段指向第二个扩展头,依此类推。 最后一个扩展头的“下一个头"字段指向上层头。 因此,所有报头以链接列表方式指向下一个报头。
如果下一个报头字段包含值59,则表示在此报头之后没有报头,甚至不是上层报头。
根据RFC 2460,必须支持以下扩展报头:
扩展报头的顺序应该是:
这些标题:
扩展报头以链表方式一个接一个地排列,如下图所示:
在IPv4中,希望与网络上的另一个主机通信的主机需要具有通过DHCP或手动配置获取的IP地址。 只要主机配备了一些有效的IP地址,它就可以与子网上的任何主机通信。 要在第3层上进行通信,主机还必须知道其他主机的IP地址。 在链路上的通信是通过硬件嵌入的MAC地址建立的。 要知道其IP地址已知的主机的MAC地址,主机发送ARP广播,作为回应,目标主机发回其MAC地址。
在IPv6中,没有广播机制。 启用IPv6的主机不是必须从DHCP获取IP地址或手动配置,但它可以自动配置其自己的IP。
ARP已被ICMPv6邻居发现协议替代。
IPv6网络中的主机能够使用唯一的链路本地地址自动配置自身。 一旦主机获得IPv6地址,它就加入多个多播组。 与该段相关的所有通信仅在那些多播地址上发生。 主机通过IPv6中的一系列状态:
一旦主机完成了其IPv6地址的配置,它会执行以下操作:
在IPv4中,地址是在类中创建的。等级IPv4地址清楚地定义了用于网络前缀的位和用于该网络上主机的位。要在IPv4中进行子网,我们使用默认的类别的网络掩码,这允许我们借用要用作子网位的主机位。这导致多个子网,但是每个子网的主机少。也就是说,当我们借用主机位来创建一个子网时,我们用较少的一点来用于主机地址。
IPv6地址使用128位表示一个地址,其中包含用于子网划分的位。地址的后半部分(最低有效位64位)始终仅用于主机。因此,如果我们对网络进行子网分配,则不会有任何妥协。
子网的16位相当于IPv4的B类网络。使用这些子网位,一个组织可以拥有另外65千个子网,这远远超出了这个。
因此路由前缀是/ 64,主机部分是64位。我们可以通过借用主机位进一步将网络子网超过16位子网ID; 但建议始终为主机地址使用64位,因为自动配置需要64位。
IPv6子网与IPv4中的可变长度子网掩码的概念相同。
/ 48前缀可以分配给一个组织,它具有最多/ 64个子网前缀的优点,这是65535个子网络,每个子网络具有264个主机。可以将A / 64前缀分配给链路上只有两个主机(或启用IPv6的设备)的点对点连接。
当主机连接到链路或网络时,它会获取IP地址,并且使用该链路上的该IP地址进行所有通信。 一旦相同的主机改变其物理位置,即移动到另一个区域/子网/网络/链路,其IP地址相应地改变,并且在主机上使用旧的IP地址发生的所有通信都关闭。
IPv6移动性为主机在不丢失任何通信/连接及其IP地址的情况下漫游不同链路提供了一种机制。
此技术涉及多个实体:
路由概念在IPv6的情况下保持相同,但是几乎所有路由协议都被相应地重新定义。 我们之前讨论过,主机如何对其网关说话。 路由是转发可路由数据的过程,其选择在到目的地的若干可用路由或路径之中的最佳路由。 路由器是一种转发未明确指定给它的数据的设备。
存在两种形式的路由协议:
路由协议可以分为两类: