37IPV6

一、IPv4存在的问题

  • IPv4地址数量有限,理论2的32次方

  • IPv4地址分配方式,IANA—RIR—LIR,分到中国只有3亿

  • 地址有限的解决方案

    • CIDR/VLSM
    • NAT
  • 无法适应物联网的发展

  • 广播机制存在,会造成一定的性能损耗

二、IPv6特点

1.地址空间巨大

  • 理论2的128次方,“可以给每粒沙子分配一个地址”

2.精简报文结构,提高效率

  • 在这里插入图片描述
    在这里插入图片描述

  • IPv6和IPv4相比,去除了IHL、identifiers、Flags、Fragment Offset、Header Checksum、Options、Padding域,只增了流标签域,因此IPv6报文头的处理较IPv4大大简化,提高了处理效率。另外,IPv6为了更好支持各种选项处理,提出了扩展头的概念,新增选项时不必修改现有结构就能做到,理论上可以无限扩展,体现了优异的灵活性。下面为读者介绍IPv6扩展报头的一些信息。

3.实现自动配置和重新编址

  • 可以自动生成ipv6地址

4.支持层次化网络编址

  • ipv4,各大运营商申请的时候,都不连续,无法汇总。
  • ipv6,各大isp地址段连续,可以更好的层次化编址,方便路由聚合,精简路由表提高转发效率。

5.支持端到端的安全

  • ipv6原生支持IPseg,所以ospfy3等协议,不用再自己解决验证等安全问题

  • 在这里插入图片描述

  • OSPF

  • 在这里插入图片描述
    在这里插入图片描述

6.移动性支持

  • RFC 3775 - Mobility Support in IPv6
  • 类似于wlan漫游,主机移动到另一个网络,原先的地址不需要修改,ipv6协议可以自动映射成新网络的地址

7.更好的支持QoS

  • IPv6增加了流标签,更方便做gos,流标签可以定义一个数据流。数据流是由五元组生成,之前要看五元组,有了流标签不需要查看五元组。

二、IPV6地址

1.地址格式

1.1.IPv6地址总长度为128比特,分为8组,每组为4个十六进制数的形式,十六进制数间用冒号分隔。例如:FC00:0000:130F:0000:0000:09C0:876A:130B

1.2.地址压缩表示

  • 每组中的前导"0"都可以省略,所以上述地址可写为:FC00:0:130F:0:0:9C0:876A:130B。
  • 地址中包含的连续两个或多个均为0的组,可以用双冒号"::"来代替,所以上述地址又可以进一步简写为:FC00:0:130F::9C0:876A:130B。
  • 需要注意的是,在一个IPv6地址中只能使用一次双冒号"::“,否则当计算机将压缩后的地址恢复成128位时,无法确定每个”::"代表0的个数。

1.3地址结构

一个IPv6地址(如2001::1/16)可以分为两部分:

  • 网络前缀:相当于IPv4地址中的网络ID
  • 接口标识:相当于IPv4地址中的主机ID
    • 手动配置
      • interface GigabitEthernet0/0/0
      • ipv6 enable
      • ipv6 address 2001::1/16
    • dhcpv6服务器分配
    • 随机生成
    • eui64
      • 在这里插入图片描述

      • 为什么u/l位取反

        • 因为以太网mac地址的第7位,和ipv6地址的第7位,关于全局还是本地的含义相反
        • https://tools.ietf.org/html/rfc5342#section-2.2

2.单播地址

2.1.全球单播地址

  • 相当于IPv4的公网ip
  • 在这里插入图片描述

2.2.唯一本地地址

  • 相当于IPv4的私网ip,在Internet不可路由,主要为了安全,或者暂时没申请到地址
  • 在这里插入图片描述

2.3.链路本地地址

  • 当一个节点启动IPv6协议栈时,启动时节点的每个接口会自动配置一个链路本地地址(其固定的前缀+EUI-64规则形成的接口标识)。这种机制使得两个连接到同一链路的IPv6节点不需要做任何配置就可以通信。所以链路本地地址广泛应用于邻居发现,无状态地址配置等应用。
  • 链路本地地址是IPv6中的应用范围受限制的地址类型,只能在连接到同一本地链路的节点之间使用。它使用了特定的本地链路前缀FE80::/10(最高10位值为1111111010),同时将接口标识添加在后面作为地址的低64比特。
  • 以链路本地地址为源地址或目的地址的IPv6报文不会被路由设备转发到其他链路。

2.4.环回地址

  • 等同ipv4的环回地址,也就是代表本机
  • ::1/128

2.5.未指定地址

  • 还没获得地址的时候,如dhcp请求报文
  • ::/128

三、组播地址

1.地址范围

FFO0::/8

  • https://www.rfc-editor.org/info/rfc4291

  • 在这里插入图片描述

  • flag ( ff后的4位):

    • flgs位为4bit : |0|R|P|T|
    • flgs位的高1bit为保留,必须设置为0
    • T位如果为置0表示永久分配或者是well-known组播地址,如果置1表示临时分配动态的地址,不固定。
    • P位如果置1的话表示此组播地址是一个基于单播前缀的ipv6组播地址。默认为0,如果P位设置为1,那么T位必须为1。
    • R位如果置1的话表示此组播地址是一个内嵌RP地址的ipv6组播地址。默认为0。
  • scop(flag后的4位):可以控制组播报文传播的范围

  • group id (最后的32位)

  • 中间的80位现在保留不用,全为0

2.被请求节点组播地址

  • ipv6新增,代替了很多ipv4的广播,如arp
  • 被请求节点组播地址(Solicited-NodeMulticast Address)通过节点的单播或任播地址生成。当一个节点具有了单播或任播地址,就会对应生成一个被请求节点组播地址,并且加入这个组播组。
  • 一个单播地址或任播地址对应一个被请求节点组播地址。该地址主要用于邻居发现机制和地址重复检测功能。
  • 被请求节点组播地址由固定前缀FF02::1:FF00:0/104和对应IPv6地址的最后24bit组成。被请求节点组播地址的有效范围为本地链路范围。

3.预定义组播地址

  • 类似于IPv4的224.0.0.x
  • FF02:0:0:0:0:0:0:1,所有节点的组播地址。
  • FF02:0:0:0:0:0:0:2,所有路由器的组播地址。
  • FF02:0:0:0:0:1:FFXX:XXXX,Solicited-Node组播地址。
  • FF02:0:0:0:0:0:0:5,所有OSPF路由器组播地址。
  • FF02:0:0:0:0:0:0:6,所有OSPF的DR路由器组播地址。
  • FF02:0:0:0:0:0:0:D,所有PIM路由器组播地址。

4.mac地址映射

四、任播地址

1.类似于CDN的思路

在这里插入图片描述

  • 20
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值