《IPv6详解》.docx
- 文档编号:26267600
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:34
- 大小:495.24KB
《IPv6详解》.docx
《《IPv6详解》.docx》由会员分享,可在线阅读,更多相关《《IPv6详解》.docx(34页珍藏版)》请在冰豆网上搜索。
《IPv6详解》
IPv6
IPv6是InternetProtocolVersion6的缩写,其中InternetProtocol译为“互联网协议”。
IPv6是IETF(互联网工程任务组,InternetEngineeringTaskForce)设计的用于替代现行版本IP协议(IPv4)的下一代IP协议。
目前IP协议的版本号是4(简称为IPv4),它的下一个版本就是IPv6。
定义:
IPv6是“InternetProtocolVersion6”的缩写,它是IETF设计的用于替代现行版本IP协议-IPv4-的下一代IP协议。
目前的全球因特网所采用的协议族是TCP/IP协议族。
IP是TCP/IP协议族中网络层的协议,是TCP/IP协议族的核心协议。
IPv6正处在不断发展和完善的过程中,它在不久的将来将取代目前被广泛使用的IPv4。
每个人将拥有更多IP地址。
简介:
目前我们使用的第二代互联网IPv4技术,核心技术属于美国。
它的最大问题是网络地址资源有限,从理论上讲,编址1600万个网络、40亿台主机。
但采用A、B、C三类编址方式后,可用的网络地址和主机地址的数目大打折扣,以至目前的IP地址近乎枯竭。
其中北美占有3/4,约30亿个,而人口最多的亚洲只有不到4亿个,中国截止2010年6月IPv4地址数量达到2.5亿,落后于4.2亿网民的需求。
地址不足,严重地制约了我国及其他国家互联网的应用和发展。
一方面是地址资源数量的限制,另一方面是随着电子技术及网络技术的发展,计算机网络将进入人们的日常生活,可能身边的每一样东西都需要连入全球因特网。
在这样的环境下,IPv6应运而生。
单从数字上来说,IPv6所拥有的地址容量是IPv4的约8×10^28倍,达到2^128(算上全零的)个。
这不但解决了网络地址资源数量的问题,同时也为除电脑外的设备连入互联网在数量限制上扫清了障碍。
但是与IPv4一样,IPv6一样会造成大量的IP地址浪费。
准确的说,使用IPv6的网络并没有2^128个能充分利用的地址。
首先,要实现IP地址的自动配置,局域网所使用的子网的前缀必须等于64,但是很少有一个局域网能容纳2^64个网络终端;其次,由于IPv6的地址分配必须遵循聚类的原则,地址的浪费在所难免。
但是,如果说IPv4实现的只是人机对话,而IPv6则扩展到任意事物之间的对话,它不仅可以为人类服务,还将服务于众多硬件设备,如家用电器、传感器、远程照相机、汽车等,它将是无时不在,无处不在的深入社会每个角落的真正的宽带网。
而且它所带来的经济效益将非常巨大。
当然,IPv6并非十全十美、一劳永逸,不可能解决所有问题。
IPv6只能在发展中不断完善,也不可能在一夜之间发生,过渡需要时间和成本,但从长远看,IPv6有利于互联网的持续和长久发展。
目前,国际互联网组织已经决定成立两个专门工作组,制定相应的国际标准。
特点:
(1)IPV6地址长度为128比特,地址空间增大了2的96次方倍;
中国IPV6主干节点示意图
(2)灵活的IP报文头部格式。
使用一系列固定格式的扩展头部取代了IPV4中可变长度的选项字段。
IPV6中选项部分的出现方式也有所变化,使路由器可以简单路过选项而不做任何处理,加快了报文处理速度;
(3)IPV6简化了报文头部格式,字段只有8个,加快报文转发,提高了吞吐量;
(4)提高安全性。
身份认证和隐私权是IPV6的关键特性;
(5)支持更多的服务类型;
(6)允许协议继续演变,增加新的功能,使之适应未来技术的发展;
应用:
IPv6的普及一个重要的应用是将是网络实名制下的互联网身份证/VIeID,目前基于IPv4的网络之所以难以实现网络实名制,一个重要原因就是因为IP资源的共用,因为IP资源不够,所以不同的人在不同的时间段共用一个IP,IP和上网用户无法实现一一对应。
在IPv4下,现在根据IP查人也比较麻烦,电信局要保留一段时间的上网日志才行,通常因为数据量很大,运营商只保留三个月左右的上网日志,比如查前年某个IP发帖子的用户就不能实现。
IPv6的出现可以从技术上一劳永逸地解决实名制这个问题,因为那时IP资源将不再紧张,运营商有足够多的IP资源,那时候,运营商在受理入网申请的时候,可以直接给该用户分配一个固定IP地址,这样实际就实现了实名制,也就是一个真实用户和一个IP地址的一一对应。
当一个上网用户的IP固定了之后,你任何时间做的任何事情都和一个唯一IP绑定,你在网络上做的任何事情在任何时间段内都有据可查,并且无法否认。
因此你可能昨晚刚浏览过非法网站后,第二天早上就会有人上门给你开罚款单。
优势:
与IPV4相比,IPV6具有以下几个优势:
一,IPv6具有更大的地址空间。
IPv4中规定IP地址长度为32,即有2^32-1(符号^表示升幂,下同)个地址;而IPv6中IP地址的长度为128,即有2^128-1个地址。
二,IPv6使用更小的路由表。
IPv6的地址分配一开始就遵循聚类(Aggregation)的原则,这使得路由器能在路由表中用一条记录(Entry)表示一片子网,大大减小了路由器中路由表的长度,提高了路由器转发数据包的速度。
三,IPv6增加了增强的组播(Multicast)支持以及对流的支持(FlowControl),这使得网络上的多媒体
IPv6的长分布式结构图
应用有了长足发展的机会,为服务质量(QoS,QualityofService)控制提供了良好的网络平台。
四,IPv6加入了对自动配置(AutoConfiguration)的支持。
这是对DHCP协议的改进和扩展,使得网络(尤其是局域网)的管理更加方便和快捷。
五,IPv6具有更高的安全性。
在使用IPv6网络中用户可以对网络层的数据进行加密并对IP报文进行校验,极大的增强了网络的安全性。
操作方法:
IPv6包由IPv6包头(40字节固定长度)、扩展包头和上层协议数据单元三部分组成。
IPv6包扩展包头中的分段包头(下文详述)中指明了IPv6包的分段情况。
其中不可分段部分包括:
IPv6包头、Hop-by-Hop选项包头、目的地选项包头(适用于中转路由器)和路由包头;可分段部分包括:
认证包头、ESP协议包头、目的地选项包头(适用于最终目的地)和上层协议数据单元。
但是需要注意的是,在IPv6中,只有源节点才能对负载进行分段,并且IPv6超大包不能使用该项服务。
下文还将简述IPv6寻址、路由以及自动配置的相关内容。
IPv6数据包:
包头
IPv6包头长度固定为40字节,去掉了IPv4中一切可选项,只包括8个必要的字段,因此尽管IPv6地址长度为IPv4的四倍,IPv6包头长度仅为IPv4包头长度的两倍。
其中的各个字段分别为:
Version(版本号):
4位,IP协议版本号,值=6。
TrafficClass(通信类别):
8位,指示IPv6数据流通信类别或优先级。
功能类似于IPv4的服务类型(TOS)字段。
FlowLabel(流标记):
20位,IPv6新增字段,标记需要IPv6路由器特殊处理的数据流。
该字段用于某些对连接的服务质量有特殊要求的通信,诸如音频或视频等实时数据传输。
在IPv6中,同一信源和信宿之间可以有多种不同的数据流,彼此之间以非“0”流标记区分。
如果不要求路由器做特殊处理,则该字段值置为“0”。
PayloadLength(负载长度):
16位负载长度。
负载长度包括扩展头和上层PDU,16位最多可表示65535字节负载长度。
超过这一字节数的负载,该字段值置为“0”,使用扩展头逐个跳段(Hop-by-Hop)选项中的巨量负载(JumboPayload)选项。
NextHeader(下一包头):
8位,识别紧跟IPv6头后的包头类型,如扩展头(有的话)或某个传输层协议头(诸如TCP,UDP或着ICMPv6)。
HopLimit(跳段数限制):
8位,类似于IPv4的TTL(生命期)字段,用包在路由器之间的转发次数来限定包的生命期。
包每经过一次转发,该字段减1,减到0时就把这个包丢弃。
SourceAddress(源地址):
128位,发送方主机地址。
DestinationAddress(目的地址):
128位,在大多数情况下,目的地址即信宿地址。
但如果存在路由扩展头的话,目的地址可能是发送方路由表中下一个路由器接口。
IPv6数据包:
扩展包头
IPv6包头设计中对原IPv4包头所做的一项重要改进就是将所有可选字段移出IPv6包头,置于扩展头中。
由于除Hop-by-Hop选项扩展头外,其他扩展头不受中转路由器检查或处理,这样就能提高路由器处理包含选项的IPv6分组的性能。
通常,一个典型的IPv6包,没有扩展头。
仅当需要路由器或目的节点做某些特殊处理时,才由发送方添加一个或多个扩展头。
与IPv4不同,IPv6扩展头长度任意,不受40字节限制,以便于日后扩充新增选项,这一特征加上选项的处理方式使得IPv6选项能得以真正的利用。
但是为了提高处理选项头和传输层协议的性能,扩展头总是8字节长度的整数倍。
目前,RFC2460中定义了以下6个IPv6扩展头:
Hop-by-Hop(逐个跳段)选项包头、目的地选项包头、路由包头、分段包头、认证包头和ESP协议包头:
IPv6包头结构
(一)Hop-by-Hop选项包头包含分组传送过程中,每个路由器都必须检查和处理的特殊参数选项。
其中的选项描述一个分组的某些特性或用于提供填充。
这些选项有:
Pad1选项(选项类型为0),填充单字节。
PadN选项(选项类型为1),填充2个以上字节。
JumboPayload选项(选项类型为194),用于传送超大分组。
使用JumboPayload选项,分组有效载荷长度最大可达4,294,967,295字节。
负载长度超过65,535字节的IPv6包称为“超大包”。
路由器警告选项(选项类型为5),提醒路由器分组内容需要做特殊处理。
路由器警告选项用于组播收听者发现和RSVP(资源预定)协议。
(二)目的地选项包头指名需要被中间目的地或最终目的地检查的信息。
有两种用法:
如果存在路由扩展头,则每一个中转路由器都要处理这些选项。
如果没有路由扩展头,则只有最终目的节点需要处理这些选项。
(三)路由包头
类似于IPv4的松散源路由。
IPv6的源节点可以利用路由扩展包头指定一个松散源路由,即分组从信源到信宿需要经过的中转路由器列表。
(四)分段包头
提供分段和重装服务。
当分组大于链路最大传输单元(MTU)时,源节点负责对分组进行分段,并在分段扩展包头中提供重装信息。
(五)认证包头
提供数据源认证、数据完整性检查和反重播保护。
认证包头不提供数据加密服务,需要加密服务的数据包,可以结合使用ESP协议。
(六)ESP协议包头
提供加密服务。
IPv6数据包:
上层协议数据单元
上层数据单元即PDU,全称为ProtocolDataUnit。
PDU由传输头及其负载(如ICMPv6消息、或UDP消息等)组成。
而IPv6包有效负载则包括IPv6扩展头和PDU,通常所能允许的最大字节数为65535字节,大于该字节数的负载可通过使用扩展头中的JumboPayload(见上文)选项进行发送。
IPv6技术对管理网络应用程序的影响
IPv6中有足够的地址为地球上每一平方英寸的地方分配一个独一无二的IP地址。
虽然这实际上能够使你能想到的任何设备都分配一个IP地址,但是,这对于管理地址分配的管理员来说却是一个恶梦。
幸运的是IPv6包含一种“节点自动配置”功能。
这实际上是在所有的IPv6网络中替代DHCP(动态主机配置协议)和ARP(地址解析协议)的下一代技术,能够让你不进行任何设置就可以把新设备连接到网络。
如果你更换了ISP(因此被分配一个不同的全球路由前缀),这个功能可以使你的网络重新分配IP地址的过程更简单,因为你所要做的一切只是改变你的路由器的设置,你的网络将重新获得一个使用新的前缀的新地址。
这将减少网络管理的巨大负担。
随着IPv6功能的增加,又出现一些潜在的管理问题。
IPv6本身提供了安全支持功能,这种功能称作“IPsec”。
根据VPN建立的方式,加密也许包括也许不包括某些头信息。
VPN可以减少客户机和服务器之间通信管理的工作量。
管理端点(IKE,互连网密钥交换)之间的安全策略也是很复杂的,如果你要亲自做这项工作的话。
这是基于IPsec和VPN提供的主要功能之一。
当然,IPsec可以很强大,但是,在某些远程接入的情况下是很脆弱的,例如使用一个移动设备访问一个企业网络。
IT部门要提供这种服务将进一步增加管理的负担。
实际应用
IPv6编址
从IPv4到IPv6最显著的变化就是网络地址的长度。
RFC2373和RFC2374定义的IPv6地址,就像下面章节所描述的,有128位长;IPv6地址的表达形式一般采用32个十六进制数。
IPv6中可能的地址有3.4×10^38个。
也可以想象为16个因为32位地址每位可以取16个不同的值。
在很多场合,IPv6地址由两个逻辑部分组成:
一个64位的网络前缀和一个64位的主机地址,主机地址通常根据物理地址自动生成,叫做EUI-64(或者64-位扩展唯一标识)。
IPv6地址表示
IPv6地址为128位长,但通常写作8组,每组为四个十六进制数的形式。
例如:
2001:
0db8:
85a3:
08d3:
1319:
8a2e:
0370:
7344是一个合法的IPv6地址。
IPv6网络地址和IPv4网络地址的转化关系
如果四个数字都是零,可以被省略。
例如:
2001:
0db8:
85a3:
0000:
1319:
8a2e:
0370:
7344等价于
2001:
0db8:
85a3:
:
1319:
8a2e:
0370:
7344遵从这些规则,如果因为省略而出现了两个以上的冒号的话,可以压缩为一个,但这种零压缩在地址中只能出现一次。
因此:
2001:
0DB8:
0000:
0000:
0000:
0000:
1428:
57ab
2001:
0DB8:
0000:
0000:
0000:
:
1428:
57ab
2001:
0DB8:
0:
0:
0:
0:
1428:
57ab
2001:
0DB8:
0:
:
0:
1428:
57ab
2001:
0DB8:
:
1428:
57ab都使合法的地址,并且他们是等价的。
但
2001:
:
25de:
:
cade是非法的。
(因为这样会使得搞不清楚每个压缩中有几个全零的分组)
同时前导的零可以省略,因此:
2001:
0DB8:
02de:
:
0e13等价于2001:
DB8:
2de:
:
e13
一个IPv6地址可以将一个IPv4地址内嵌进去,并且写成IPv6形式和平常习惯的IPv4形式的混合体。
IPv6有两种内嵌IPv4的方式:
IPv4映像地址和IPv4兼容地址。
IPv4映像地址有如下格式:
:
:
ffff:
192.168.89.9
这个地址仍然是一个IPv6地址,只是0000:
0000:
0000:
0000:
0000:
ffff:
c0a8:
5909的另外一种写法罢了。
IPv4映像地址布局如下:
|80bits|16|32bits|
+----------------------------+--------+------------------------|
0000....................0000|FFFF|IPv4address|
+----------------------------+--------+-----------------------|
IPv4兼容地址写法如下:
:
:
192.168.89.9
如同IPv4映像地址,这个地址仍然是一个IPv6地址,只是0000:
0000:
0000:
0000:
0000:
0000:
c0a8:
5909的另外一种写法罢了。
IPv4兼容地址布局如下:
|80bits|16|32bits|
+----------------------------+--------+------------------------|
0000....................0000|0000|IPv4address|
+----------------------------+--------+-----------------------|
IPv4兼容地址已经被舍弃了,所以今后的设备和程序中可能不会支持这种地址格式。
IPv6安装
1.Windows2000操作系统
(1)确认windows操作系统的补丁包已经升级到SP4。
(2)下载补丁包“tcpipv6-sp4.exe”,并双击运行该自解压文件。
(3)依次打开“控制面板”、“网络和拨号连接”,右击“本地连接”,再依次单击“属性”、“安装”、“协议”,选择“MSRIPv6Protocol”协议,即可成功安装IPv6协议栈。
2.WindowsXP/Windows2003操作系统
(1)IPv6协议栈的安装
在开始-->运行处执行ipv6install
(2)IPv6地址设置
在开始-->运行处执行netsh进入系统网络参数设置环境,然后执行
interfaceipv6
画面显示:
netshinterfaceipv6>
然后再执行
addaddress“本地连接”2001:
da8:
207:
:
9402
(3)IPv6默认网关设置
在上述系统网络参数设置环境中执行
addroute:
:
/0“本地连接”2001:
da8:
207:
:
9401publish=yes
(4)网络测试命令
ping6、tracert6
3.WindowsVista操作系统
(1)开始——程序——附件——右键点击“命令提示符”——以管理员身份运行
(2)netshinterfaceipv6isatapsetstateenabled回车
(3)netshinterfaceipv6isatapsetrouter隧道IP回车
4.Linux操作系统
(1)安装ipv6协议
modprobeipv6
(2)IPv6地址设置
ifconfigeth0inet6add2001:
da8:
207:
:
9402
(3)IPv6默认网关设置
route-Ainet6add:
:
/0gw2001:
da8:
207:
:
9401
(4)网络测试命令
ping6、traceroute6
5.Solaris操作系统
(1)创建IPv6接口
touch/etc/hostname6.hme0
(2)添加IPv6地址
在/etc/inet/ipnodes文件中,加入如下一行:
2001:
da8:
207:
:
9402ipv6.********.bnu-ipv6
(3)设置dns查找顺序
在/etc/nsswitch.conf文件中,修改hosts和ipnodes项如下:
hosts:
filesdns
ipnodes:
filesdns
(4)添加默认路由
routeadd-inet6default2001:
da8:
207:
:
9401-interface
(5)测试命令
ping-Ainet6IPv6目标地址
traceroute-Ainet6IPv6目标地址
6.win7操作系统安装
win7为自带不用安装
7.MacOS操作系统
MacOS从10.5leopard开始自带
IPv6的ISATAP隧道和6to4隧道测试
1.ISATAP隧道点IP地址是isatap.********
用户设置isatap隧道的终结点router为isatap.**********
WindowsXP/2003设置如下:
C:
\DocumentsandSettings\Administrator>netsh
netsh>int
netshinterface>ipv6
netshinterface>ipv6>install
netshinterfaceipv6>isatap
netshinterfaceipv6isatap>setrouterisatap.**********(或是高端路由器的IP)
Vista设置如下:
鼠标右键点击“开始->程序->附件->命令提示符”,选择“以管理员身份运行”。
在新开启的【命令提示符】窗口中执行以下两条命令:
netshinterfaceipv6isatapsetrouterisatap.**********
netshinterfaceipv6isatapsetstateenabled
(部分Vista系统的电脑会在本地LAN中发出IPv6RA,导致相邻用户不走隧道,此时最好在本地网卡上禁用IPv6选项)
Linux设置如下:
iptunneladdsit1modesitremote202.120.58.150locala.b.c.d
IPv6客户端安装
ifconfigsit1up
ifconfigsit1add2001:
da8:
8000:
d010:
0:
5efe:
a.b.c.d/64
iprouteadd:
:
/0via2001:
da8:
8000:
d010:
:
1metric1
注意:
上面的a.b.c.d请使用你的真实IPv4地址代替
配置好之后ipconfig后应该看到一个2001:
da8:
8000:
d010为前缀的v6地址,hostid为5efe:
a.b.c.d,其中a.b.c.d为你的真实的IPV4地址。
推荐使用ISATAP隧道方式接入,不要和下面的另一种6to4隧道同时使用。
2.网络中心6to4隧道点IP地址是202.112.26.246
如果您无法使用ISATAP方式接入,可以考虑使用这种方式。
用户设置6to4隧道的终结点relay为202.112.26.246
WindowsXP/2003设置如下:
C:
\DocumentsandSettings\Administrator>netsh
netsh>int
netshinterface>ipv6
netshinterface>ipv6>install
netshinterfaceipv6>6to4
netshinterfaceipv66to4>setrelay202.112.26.246enable
然后ipconfig后应该看到一个2002:
xx:
xx为前缀的v6地址,hostid亦为xx:
xx,
其中xx.xx为你的真实的IPV4地址转化成得ipv6地址。
自动获得的默认网关是2002:
ca70:
1af6:
:
ca70:
1af6
IPv6寻址
在Internet协议版本6(IPv6)中,地址的长度是128位。
地址空间如此大的一个原因是将可用地址细分为反映Internet的拓扑的路由域的层次结构。
另一个原因是映射将设备连接到网络的网络适配器(或接口)的地址。
IPv6提供了内在的功能,可以在其最低层(在网络接口层)解析地址,并且还具有自动配置功能。
文本表示形式
以下是用来将IPv6地址表示为文本字符串的三种常规形式:
冒号十六进制形式
这是首选形式n:
n:
n:
n:
n:
n:
n:
n。
每个n都表示
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IPv6详解 IPv6 详解
![提示](https://static.bdocx.com/images/bang_tan.gif)