13
2023
05
09:51:54

下一代互联网与通信技术IPV6

1ipv6基础

1.1ipv4的局限性与ipv6的特征

(1)ipv4的局限性
ipv4的地址空间已经耗尽
internet发展太快,造成Internet的骨干路由要维护大量路由表,能力有限
对更简便的配置需求
对ip级安全性需求
对QOS的需求
(2)ipv6的特征
巨大的地址空间
新的协议报头
有效的分级的寻址和路由结构
位置安全和可移动性
更好的QOS
具有扩展性

1.2ipv6的地址空间

描述

2 ipv6 地址

2.1 地址格式

x❌x❌x❌x:x
x 是二进制的16位的十六进制数
16*8=128位,正是Ipv6的位数
(1)例:2001:0DB8:010F:0001:0000:0000:0000:0D0C
可以对其进行优化
2001:DB8:10F:1:0:0:0:D0C
继续优化
2001:DB8:10F:1::D0C
连续的16位段的“0”可以用::代表,但一个地址只能有一个::,两个同时出现的时候搞不清位数
例:2001:0DB8:0000:0000:FFFF:0000:0000:0D0C
最简表示形式为2001:DB8::FFFF:0:0:D0C或者
2001:DB8:0:0:FFFF::D0C
(2)FF02:0:0:0:0:0:0:1----->FF02::1
(3)回环地址,自己可以发给自己
0:0:0:0:0:0:0:1------->::1
(4):: 未指定地址
(5)兼容Ipv4地址
0:0:0:0:0FFFF:192.0.2.100
可以化简为
::FFFF:C000:0264

2.2 ipv6地址前缀:子网或者路由标示的前缀

其表示用:地址/网络前缀长度
1、例:210A:D3:0:/48是一个路由前缀
任何少于64位的前缀,要么是路由前缀,要么是包含部分,Ipv6的地址空间的一个范围
2、例:210A:D3:0:2F3B::/64是一个子网前缀,所以64位前缀用来表示节点所在的单个子网
所有子网都有对应的64位前缀,
2.3 Ipv6的地址类型
1、单播地址(unicast)
one to one
2、多播地址(multcast)
one to many
3、泛播地址(anycast)
one to one of many

2.3 单播Ipv6地址(unicast)

ipv6单播类型
全球单播(global unicast)
链路本地单播(link local unicast)
站点本地单播(site local unicat)
特殊目的单播(special purpose unicat)

2.3.1 global unicat

描述

公共拓扑:提供接入服务的ISP(网络服务提供商) 集合
站点拓扑:机构站点的内部子网合集,最多可以达到2的16次方,65536个
接口标识符:唯一的标识一个机构站点的内部子网络
子网上的一个接口(即一个公PC)

2.3.2 link local unicast(自动配置)

用于同一个链路上邻节点之间,无路由
用于同一机构中节点之间的通路
描述

前缀是FE80::/64

2.3.3 site local

作用是作用于该站点
私有内部网,不会与全球地址冲突
该地址对外部节点是不可达的
描述

所以站点本地地址为前缀:FEC0::/48位

2.3.4 special purpose

1、未指定地址(unspecial)当一个有效地址还未确定时一般用未指定地址作为源地址
0:0:0:0:0:0:0:0=::
类似ipv4的未指定地址0.0.0.0
2、回环地址
用于标识一个回环接口,以使一个节点可以给自己发数据包
0:0:0:0:0:0:0:1=::1
ipv4的回环地址是127.0.0.1
3、兼容ipv4的地址(compatible)
用于ipv6和Ipv4节点,在使用公共ipv4的iPv4网络中,这种节点用ipv6协议进行通信,使用隧道机制
描述

描述

4、ipv4映射地址(mapped)
用于使一个仅支持ipv4节点的,表现为一个ipv6节点
描述

2.4 多播Ipv6地址

Ipv6多播地址替代了所有形式的ipv4多播地址
多播是一对多关系,多播范围是一种新功能
描述

多播地址分配
FF01::1 节点本地范围的所有多播地址
FF02::1链路本地范围的所以多播地址
FF01::2 节点本地的范围的所有路由器的多播地址
FF02::2 链路本地范围的所有路由器的多播地址
FF05::2站点本地范围的所有路由器的多播地址

2.5 泛播Ipv6地址(anycast)

泛播地址被分配给多个接口
发往泛播地址的数据包被路由转发给分配给泛播地址的接口中最近的一个
描述

描述

总结:ipv6地址结构
描述

2.6

(全球单播地址结构)
描述

ipv6子网化不同于ipv4子网化,在ipv4中,主机的ip长度是可变的,但是在ipv6单播地址中,主机ID即接口ID部分总是64位长度

2.6.1 SLAID子网ID的子网化

这是在全球地址中或站点本地地址中包含一个被站点内所有机构使用子网ID字段,而地址的前48位是固定的,
步骤1:确定用于子网化的位数
例:某学校管理中心决定一个二级路由结构用三位表示地理级别(A校区、B校区、C校区)
用三位表示部门级,剩余10位子网化空间,即每个部门有1024个子网,
描述

步骤2:列出子网化的网络前缀
1)使用16进制表示的子网ID及其增量来列举新的子网化后的网络前缀
2)使用十进制表示子网ID及其增量来列举新的子网化网络前缀
1、使用十六进制来创建子网化网络前缀
1)根据S(为子网化选择的位数)和m(子网化网络前缀长度)和F(被子网化SLAID十六进制值)计算下式子
f=m-48(f是已经固定的子网ID中的位数)
n=2(s次)(n是可以得到的网络前缀的数目)
i=2(16-f-s)(i是用十六进制表示的每个后续子网ID的增量值)
l=48+f+S(l是新的子网化网络前缀长度)
2、创建一个包含两列的表格,表格中有n个表项
描述

第一列是网络前缀号,从1开始,第二列是新的子网化网络前缀
3、在第一表项中,基于f的子网化网络前缀是【48位前缀】
:F::/1 是十六进制表示的子网ID
4、在下一表项中,将站点本地地址或全球地址中的子网ID部分的值增加i
5、重复步骤4,直到表格完成
例:完成站点本地网络前缀
①FEC0:0:0:C000::/51的三位子网化
初始值F=oxC000
S=3(为子网化选择的位数)
f=m-48=3=51(已经固定的子网ID中的位数)
前缀的个数 2(s次)=8
增量i=2(16-3-3)=2(10)=1024=OX400,
新的子网网络前缀 l=48+f+s=54
创建一个2(s)=8行表格,在网络前缀号为1的表项中,子网化网络前缀为FEC0:0:0:C000::/54
表格中的其他项是将网络的网络前缀子网ID部分依次增加i
②用十进制创建子网化网络前缀列表,方法与上述十六进制相同,仅是增加
ⅰ在第一表项中,用十进制表示子网ID的值是D,D是用十进制表示的F,子网化网络前缀是【48位网络前缀】:F::/1
ⅱ在下一表项中用十进制表示的子网ID的值比上一表项增加i,即用十进制表示的子网ID值是D+i

2.7 基于EVI(64位扩展的唯一标识符)–64位地址的Ipv6接口标识符

前面的图
在Ipv6中,接口ID(Ipv4中的hostID)是固定的64位长度,目的不是一个子网,可支持2(64次)个主机,但是目的是便于以太网使用的48位MAC地址进行地址映射和今后局域网所使用的64位MAC地址进行地址映射
(1)以太网的IEEE802地址(局域网或者城域网)标准委员会
描述

其中
①U
U=0:IEEE管理该地址(全球地址,唯一不冲突)
U=1:本地管理该地址(本地)
②g
g=0 :单播地址
g=1:多播地址
(2)IEEE EUI-64地址
前24位与IEEE802地址一样
U
U=1:全球唯一(ipv6地址与IEEE相反)
U=0:本地唯一
在地址映射的时候要对U位求反
(3)怎么将IEEE802地址映射到EUI-64位地址?
描述

例:IEEE802地址转换成EUI-64地址
主机A的以太网MAC地址
00-AA-00-3F-2A-1C(48位)
00-AA-00-FF-FE-3F-2A-1C(64位)
对U位取反
02-AA-00-FF-FE-3F-2A-1C
2AA:FF:FE3F:2A1C(对应的接口标识符)
FE80::2AA:FF:FE3F:2A1C(对应网卡的Ipv6链路本地地址)

2.8 Ipv6多播地址映射为以太网地址

在以太网链路上发送Ipv6多播数据包对应的目标MAC地址是48位
ox 33-33-mm-mm-mm-mm
其中mm-mm-mm-mm是ipv6多播地址的后32位的直接映射
例:一台具有以太网MAC地址00-AA-00-3F-2A-1C链路本地地址是FE80::2AA:FF:FE3F:2A1C
的主机,会将以下多播MAC地址添加到它的以太网卡的,关注目标的MAC地址表中
地址33-33-00–00-00-01对应于链路本地范围的所有节点的多播地址
FE02::1
地址33-33-00-00-00-01对应于链路本地范围的所有节点的多播地址
FE02::1
地址33-33-FF-3F-2A-1C对应于请求节点地址
FE02::1:FF3F:2A1C
请求节点地址是由前缀FF02::1:FF00:0(24位)/104和单播地址Ipv6地址的后24位构成的

3 ipv6的头文件(报头)

3.1 Ipv6和Ipv4头文件的比较

△字段名两协议相同
○IPV6未有字段
☆字段名和位置在IPV6中变了
□IPV6新字段
(1)ipv4头文件的格式
描述

(2)ipv6头文件的格式
描述

3.2 IPV6头文件

(1)Hop-by-Hop header(逐跳选项报头)00
逐跳选项报头是一个扩展报头
,由中间路由处理目的是用于为通向目标的路径上的每次跳转指定发送参数
(2)Routing Header (路由报头)43
是一个扩展报头,IPV6 原节点可使用路由报头,来规定一个路由源,是由中间路由表来处理
(3)Destination ops Header(目标选项报头)60
扩展报头,用于为中间目标(目标选项,选项出现在路由报头之前)或最终目标(目标选项报头出现在路由报头之后或者没有路由报头)
(4)Fragment Header(片段报头)44
是扩展报头,用于Ipv6的拆分与重组服务,即当节点所传送包超过链路或路由MTU(最大传输单元),由原节点对有效载荷进行拆分,最大数据包=片段偏移量=2(13)=8192字=8192*8位片段数据
(5)IPSec Authentication Header(身份验证报头) 51
是扩展报头,用于为Ipv6数据包和Ipv6报头中的那些经过Ipv6网络传输后值不会改变的字节提供安全上的数据验证,数据的完整性和反复重传
(6)Ipsec Encapsulating security paylocal Header(封装安全有效载荷报头) 50
ESP也是扩展报头,提供数据的机密性,数据验证,数据的完整性以及对已封装的有效载荷的保护
(7)Upper layer Header (上层报头)
上层报头使用作为传输功能(TCP,UDP)
上层扩展报头必须是最后一个扩展报头
(8)User Datagram protocal 用户数据报协议(UDP)

4 Ipv6 过滤机制技术

如下
双栈操作(Dual-stack operation)
穿越隧道(Overlay Tunnels)
隧道技术(Tunnels Techniques)
Ipv4兼容技术(Ipv4-campatible Tunnel)
6T04 隧道 6T04转换(6T04 Tunnel ,6T04 Relay)
隧道代理,隧道服务(Tunnel Broker,Tunnel server)
ISATAP(Intral -spt Automatic Tunnel Adressing protocol)站间自动隧道寻址协议,Ipv6系统转换到Ipv4系统
其他转换机制(other transition mechanisms)

4.1(1)双栈节点(dual-stack node)

双栈是tcp/ip协议级的一种实现方案,即包含ipv4的IP层,又包含ipv6的ip层
该结构用于ipv4.ipv6节点(即可以IPV4节点通信,又可以ipv6通信)
描述

描述

(2)双栈操作(dual-stack operation)
在双栈操作中. ipv4节点和ipv6节点都能请求DNS为所有类型的寻址(ipv4.ipv6)提供服务
描述