IPV6核心技术.docx

上传人:b****5 文档编号:7176297 上传时间:2023-01-21 格式:DOCX 页数:16 大小:183.72KB
下载 相关 举报
IPV6核心技术.docx_第1页
第1页 / 共16页
IPV6核心技术.docx_第2页
第2页 / 共16页
IPV6核心技术.docx_第3页
第3页 / 共16页
IPV6核心技术.docx_第4页
第4页 / 共16页
IPV6核心技术.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

IPV6核心技术.docx

《IPV6核心技术.docx》由会员分享,可在线阅读,更多相关《IPV6核心技术.docx(16页珍藏版)》请在冰豆网上搜索。

IPV6核心技术.docx

IPV6核心技术

IPV6核心技术

1.ipv6地址结构:

IPv6的姐处皓悔如下图一

全局蹈由前缀子网ID接口ID

(n位)(e位)(128-n.E笆)

图4IPv6城址结也

例妁叶C4291中定义了n48,m16„也就是子网和候口【0与各占64位

因此前缀最小长度为48,子网ID最大为64

2.ipv6ipv4地址对比

IPv6

IPV4

全球电播地址2000:

/3

>4公网『初网施Ji

犍珞本地地址FE80R1Q用于邻居本现

H1当于1g2“41动振取失效Jg分配的地址

唯本地地址FC00;;/Zipv6E持和持

NAT^Ij米湎W女金性和租验性也求

私网地址

站点本地地址FEC9V«用束部黑机网,现在

已经废能用唯一本地地址来代替

机网地址

必1”地址0:

0:

0:

00:

0X1:

1或若二。

127.0.0,1

过底M址:

内嵌IPv4地址的ipvG地址,64:

ff9b二lO.UMdl。

3.IPV6接口ID生成算法

IP丫6接口ID生成舁法

从前面的介吟中可以看出.IPv6里皤地位是臼事统&也)♦接口町立)组成.接口ID的生成算法主差有U下几种二

L岫RFC42W定义,陵口ID可UMEUI-64mmL

详细登法可以查看陞@li同学的PPT第14页.

2.为了可以其餐菜种程质的叠名信,耨口ID可映使用T0机分配的.wild。

的&操作系统默认就是圆用这种生成蚂法.Liriu寅下也是聚认开启这个或去.

3.嚏用状而化的自幼配置指未分配।例如DHCPv6分配.

4手工配舌「

4.IPV6地址配置

IPv6城址配置

前面对IPvGB曲址.值、市口等等做了介绍,店下采就是要介绍一ttt口如何配置F电博&LIPvI4ilP”4典市善的方面.就是可以官动配置地址,甚至这个配置过悭不需要DHC%6(SIPv4中是DHCPV4)这棒的地址配・期议,♦典型篦例子就是.只要开信:

HPvB协议桎的操作系械雷个建照第息*E■了跑8本地地明这个是粕IPM最重要的区别之一•

iPv弼姓址配置有」下几种:

K只要开后了产“6t办议建,接口巨动公况遥蹈工旌地址。

工、无状强自动配・tlt址[RFC2462],后面会有笑脸演示.

兀有状态自动田置地址.例如DHC%6,

4手动用宣。

5.

Linux内核双栈架构

曲用后

Linux内核中,IPv6

Deviceinierfac^

协议栈与IPv4协议栈并行关系。

IPv6和IPv4完全是两套不一样的代码实现。

IPv6完整的协议栈逻辑模块包括:

1、网络层IPv6,核心逻辑:

IPv6路由子系统

2、传输层TCP/UDP实现:

TCPv6、UDPv6

3、控制报文协议ICMPv6,这里值得一提的是ICMPv6在IPv6协议中的地位十分重要。

ICMPv6不仅提供了与ICMPv4相同的服务诊断功能,例如报告数据包的错误和提供简单的echo服务,ICMPv6是IPv6中邻居发现协议的重要组成部分,用于管理链路上的点到点的通信。

4、邻居子系统的实现:

邻居发现协议NDP(对应于IPv4里面的ARP协议)

5、其他高级实现(IPv6NAT、IPv6隧道、iPv6IPSec等)

由于我们平时的开发工作在应用层,以上1-4是将会接触得最多。

6.IPV6地址获取:

无状态地址获取:

I__%1**!

^**联丁」宣1PL中_____

[犯“工&方■;力京;Td-J—讷:

g)

二值认Um3>y+Muli.MCMK4.!

0.B1-4:

无状态自动配置过程:

IPv6主机无状态自动配置过程;

1根据接口标识产生髓踣本地地址:

.

2,发出邻居请求।进行重复地址检测,

工如地址冲突『则停止自动配置,需要手工同置.

4.如不;中突,豌路本地地址生效,节点具管本地整路通信能力,

工主机会发送R6报文〔或接收到设皆定期裳送的RA报文).

£根据RA报文中的前缀信息和接口标识得到IPv6地址.

解释二:

1、由链路上的主机向链路发起路由请求”报文,这个报文是以组播协议发送,寻找链路上最

合适的路由器。

2、路由器收到请求会返回路由通告”报文,报文里面带着本链路的地址前缀信息主机将接

收到的前缀和自身的接口ID,组成完整的新地址。

3、主机尝试使用新地址发起地址重复检测,检测链路上是否有其他主机也是这个地址,如果有,就停止使用该地址;如果没有,就启用这个新地址。

可以看到无状态自动配置过程十分简易(对比DHCPv4和DHCPv6来说),实际上,无状

态自动配置可以单独组网使用,也可以配合有状态自动配置一般会配合使用,加强网络节点

管理。

涉及自动配置和地址检测等更多细节,可以查阅RFC1971、RFC4861。

IpV6中的M位和O位:

M位,0位是RA报文里携带的,值为1代表有状态,值为0代表无状态

RA报文中的有状态自动配置地址的标志位(M标志位)全称:

managed-address-flag。

RA报文中的有状态自动配置其他信息的标志位(。

标志位)。

全称:

other-flag

M=0,O=0,表示直接从RA拿地址;

发布RA消息的M和O标志位,DHCPv6客户端通过RA消息学习到IPv6网关的路由

比如DHCPV6中继就会作为网关设备,向客户端发送RA报文,RA报文中携带

M位和O位来指定该网络中的客户端使用DHCPV6的方式获取地址和其他

网络配置参数

IPV6邻居发现协议(ND):

IPv6邻居发现协议主要提供了五个功能:

地址解析、邻居可达性检测、重复地

址检测、路由器发现/前缀发现及地址自动配置、重定向功能。

交换机都会有一个ND表项,类似于ARP表项,是通过发送NS报文来维护这个

表项的

邻居发现协议包含,NS,NA,RS,RA,重定向

1)RStype=133路由请求,请求获得设备的网关和其余的参数能够

说明请求网关就行

2)RStype=134路由应答,用于配置设备的网关和地址以及其它参数

3)Type=135(NS)TYPe=NA(136)用于邻居请求和邻居应答,主要是做链路

层地址解析,相当是ARP请求和应答

4)Type=137重定向报文发现有更优先的转发路径做报文的重定向

RA报文:

RA报文会携带前缀,DNS,MTU等信息,一个RA报文允许携带10个前缀信息

IPv6地址的分配方法有以下几种:

手动配置。

手动配置IPv6地址/前缀及其他网络配置参数(DNS、NIS、SNTP

服务器地址等参数)。

无状态自动地址分配。

由接口ID生成链路本地地址,再根据路由通告报文RA

(RouterAdvertisement)包含的前缀信息自动配置本机地址。

有状态自动地址分配,即DHCPv6方式。

DHCPv6又分为如下两种:

DHCPv6有状态自动分配。

DHCPv6服务器自动分配IPv6地址/PD前缀及其

他网络配置参数(DNS、NIS、SNTP服务器地址等参数)。

DHCPv6无状态自动分配。

主机IPv6地址仍然通过路由通告方式自动生成,

DHCPv6服务器只分配除IPv6地址以外的配置参数,包括DNS、NIS、SNTP

服务器等参数。

自动配置之无状态自动配置(SLAAC)

IPv6无状态地址配置方式(参看协议RFC2462)是目前广泛采用的IPv6地址

自动配置方式。

配置了该协议的主机只需相邻设备开启IPv6路由通告功能,即

可以根据通告报文包含的前缀信息自动配置本机地址。

无状态地址配置方案中设备并不记录所连接的IPv6主机的具体地址信息,可管

理性差。

而且当前无状态地址配置方式不能使IPv6主机获取DNS服务器的

IPv6地址等配置信息,在可用性上有一定缺陷。

对于互联网服务提供商来说,

也没有相关的规范指明如何向设备自动分配IPv6前缀,所以在部署IPv6网络

时,只能采用手动配置的方法为设备配置IPv6地址。

自动配置之DHCPV6自动配置(有状态自动配置)

与其他IPv6地址分配方式(手工配置、通过路由器通告消息中的网络前缀无状

态自动配置等)相比,DHCPv6具有以下优点:

更好地控制IPv6地址的分配。

DHCPv6方式不仅可以记录为IPv6主机分配的地址,还可以为特定的IPv6主机分配特定的地址,以便于网络管理。

DHCPv6支持为网络设备分配IPv6前缀,便于全网络的自动配置和网络层次性管理。

除了为IPv6主机分配IPv6地址/前缀外,还可以分配DNS服务器IPv6地址等网络配置参数。

DHCPv6服务器为客户端分配地址/前缀的过程分为两类:

DHCPv6四步交互分配过程(应用于网络中多个服务器)

DHCPv6两步交互快速分配过程(应用于网络中单个服务器)

管理员可以根据实际的网络环境来配置使用哪种方式

DHCPv6四步交互地址分配过程如下:

DHCPv6客户端发送Solicit报文,请求DHCPv6服务器为其分配IPv6地址和网络配置参数。

如果Solicit报文中没有携带RapidCommit选项,或Solicit报文中携带Rapid

Commit选项,但服务器不支持快速分配过程,则DHCPv6服务器回复Advertise报文,通知客户端可以为其分配的地址和网络配置参数。

如果DHCPv6客户端接收到多个服务器回复的Advertise报文,则根据Advertise报文中的服务器优先级等参数,选择优先级最高的一台服务器,并向所有的服务器发送Request组播报文,该报文中携带已选择的DHCPv6服务器的DUID。

DHCPv6服务器回复Reply报文,确认将地址和网络配置参数分配给客户端使用。

DHCPv6两步交互地址分配过程如下:

DHCPv6客户端在发送的Solicit报文中携带RapidCommit选项,标识客户端希望服务器能够快速为其分配地址和网络配置参数。

DHCPv6服务器接收到Solicit报文后,将进行如下处理:

如果DHCPv6服务器支持快速分配地址,则直接返回Reply报文,为客户端分配IPv6地址

和其他网络配置参数,Replay报文中也携带RapidCommit选项。

如果DHCPv6服务器不支持快速分配过程,则采用四步交互方式为客户端分配IPv6地址/

前缀和其他网络配置参数。

DHCPV&Client

DHCPv6Server

(1)Solicit(conlainsaRapidCammitoption)

(2)Reply

自动配置之DHCPV6自动配置(无状态自动配置)

IPv6节点可以通过DHCPv6无状态方式获取配置参数(包括DNS、SIP、

SNTP等服务器配置信息,不包括IPv6地址)

DHCPv6无状态工作过程如下:

DHCPv6客户端以组播方式向DHCPv6服务器发送Information-Request报文,该报文中携带OptionRequest选项,指定DHCPv6客户端需要从DHCPv6服务器获取的配置参数。

DHCPv6服务器收到Information-Request报文后,为DHCPv6客户端分配网络配置参数,并单播发送Reply报文,将网络配置参数返回给DHCPv6客户端。

DHCPv6客户端根据收到Reply报文提供的参数完成DHCPv6客户端无状态配置。

DHGPv6Client

DHCPvGServer

a

Informatjon-request:

includesanOptionRequestopbon

Reply:

includestherequestedootions

ipv6没有广播报文,所以使用组播,使用到的两个组播地址:

FF02:

:

1:

2(AllDHCPRelayAgentsandServers):

所有DHCPv6服务器和中继代理的组播地址,这个地址是链路范围的,用于客户端和相邻的服务器及中继代理之间通信。

所有DHCPv6服务器和中继代理都是该组的成员。

FF05:

:

1:

3(AllDHCPServers):

所有DHCPv6服务器组播地址,这个地址是站点范围的,用于中继代理和服务器之间的通信,站点内的所有DHCPv6服务器都是此组的成员。

DHCP唯一标识符(DUID)

DHCP设备唯一标识符DUID(DHCPv6UniqueIdentifier),每个服务器或客户端有且只有

一个唯一标识符,服务器使用DUID来识别不同的客户端,客户端则使用DUID来识别服务器。

客户端和服务器DUID的内容分别通过DHCPv6报文中的ClientIdentifier和ServerIdentifier选项来携带。

两种选项的格式一样,通过option-code字段的取值来区分是ClientIdentifier还是ServerIdentifier选项。

身份联盟(IA)

身份联盟IA(IdentityAssociation)是使得服务器和客户端能够识别、分组和管理一系列相

关IPv6地址的结构。

每个IA包括一个IAID和相关联的配置信息。

客户端必须为它的每一个要通过服务器获取IPv6地址的接口关联至少一个IA。

客户端用给

接口关联的IA来从服务器获取配置信息。

每个IA必须明确关联到一个接口。

IA的身份由IAID唯一确定,同一个客户端的IAID不能出现重复。

IAID不应因为设备的重

启等因素发生丢失或改变。

IA中的配置信息由一个或多个IPv6地址以及T1和T2生存期组成。

IA中的每个地址都有

首选生存期和有效生存期。

一个接口至少关联一个IA,一个IA可以包含一个或多个地址信息。

6.DHCPv6报文类型

极文神

DHCPV4盛文

说阴

1

SOLICIT

DHCP

DHCPub喜a晌帙用Solim彼文平魄靠DHCPV5卷鼾箫的

DISCOVER

2

ADVERTtSE

DHCP

OFFER

口HCPv6明要急苞速在dvprtise幅e*时SctMi熊七遭打颐L直育国己掂豚睫聊)

3

REQUEST

DHCP

REQUEST

DHCPg户揩*Requc式侬案向DHCWG位部安求他的地址和其它配裳喈

4

CONFIRM

-

口HCPi/6春声箫向值塞亚的DH匚出6骐碎戈之板虫吃号自己目系技湿的iPvStffi出是若甘恚马三

所遑案格暗.

5

REMEW

DHCP

REQUEST

DHCPirtWP踽向用H这般他批町才追万国的DHCPvGM金1发建Mmjg文泵延性地址的生碎的更新注唔

6

REBIND

DHCP

REQUEST

蛙果Ren"报文*有蹲到危笞,DHCPv$常户斫同住客司达的PHCPvfi超身HI交送院b油日甩宜车延植地址的生存幅弁更新釐近信起T

4.

7

REPLY

DHCP

ACK/NAK

DHCW6假膏器在以下场合叁送Re的根文:

L服昌惠烹运旃吊7帆松配国信息的艮/口如

;由副来图应从苞声端也的So加必RequestRenew.Ketind

2.DHCPwfi做国普立送樵裙起置『皂MIR甘。

怵自屋架园应密迩的1flformation-R^q扉品文.

,用来iaiSDHCP而庭户带友嚎的工onflrm

Release.

RELEASE

DHCP

RELEASE

□KP西其户除向为惠汨也址S2HCPV6快若SS,送RMea4初Tr表明宜3不再强用T盛昌仆疗期的地如

g

DECLINE

DHCPDECLINE

DHCPv6客户蟒向DHCPvE幅好器置途赊Hi旭甯交.西朗。

HCPvE麻粥31分配的TEE名小地址在DHCPv6«P捕芾在唯需上已任穗使用了.

10

RECOMFIGURE

DH3托函号需向DMCPv6*户涨肾堂ResMigu侔於立।用于提示GKPvM户弗L在0HCPv6派努箫上停在新的向密说整信自

 

11

INFORMATIONREQUEST

DHCP

INFORM

DHCPvb善户旗向DHCPvE处券部崇送Inform翻曲

Reque$tfiT>fl我明内加Wtia外的同SEBAfl.

12

RELAHFORW

.

牛跑代理通3RE聊-Forw曰B相交来向DHCPu6亮圣事烤发口H匚出住户缁清求报立.

13

RELAV-REPL

-

DHCPW廉寺51向H堂代注步道融1”-双口1阅文.K中丽了股螃DHC的报文,

DHCPv6PD前缀工作机制

DHCPv6前缀代理DHCPv6PD(PrefixDelegation)是一种前缀分配机制,

通过DHCPv6前缀代理机制,下游网络设备不需要再手工指定用户侧链路的IPv6地址前

缀,它只需要向上游网络设备提出前缀分配申请,上游网络设备便可以分配合适的地址前缀

给下游设备,下游设备把获得的前缀(一般前缀长度小于64)进一步自动细分成64前缀长度

的子网网段,把细分的地址前缀再通过路由通告(RA)至与IPv6主机直连的用户链路上,实

现IPv6主机的地址自动配置,完成整个系统层次的地址布局。

DHCPv6PD前缀工作原理

DHCP前缀代表简称DHCPv6-PD,是对DHCPv6的扩展。

DHCPv6为客户端分配地址、DNS等信息。

DHCPv6-PD可以为DHCP客户

端分配一个网络号,然后这个DHCPv6客户端可以把这个网络号再分成若干个网段分配给它的接口,以及连接在这些接口中的主机或者其他节点。

比如,将企业客户的出口路由器配置成DHCPv6-PD客户端,将ISP的路由器配置成DHCPv6-PD的服务器。

客户的出口路由器将从ISP路由器获得一个网段地址,然后再进一步划分成几个网段后,分配给内部主机使用。

又比如,我们公司的ONU,配置了IPV6wan之后就会获取一个前缀,然后再配置一下lan测地址来源是是wan测代理,这样就可以为onu下接的设备分配ip地址了,这个时候一般需要在dhcpv6server上配置两个地址池,一个是给wan测分配,一个是lan测分配。

DHCPv6PD四步交互地址分配过程如下:

DHCPv6PD客户端发送Solicit报文,请求DHCPv6PD服务器为其分配IPv6地址前缀。

如果Solicit报文中没有携带RapidCommit选项,或Solicit报文中携带Rapid

Commit选项,但服务器不支持快速分配过程,则DHCPv6服务器回复

Advertise报文,通知客户端可以为其分配的IPv6地址前缀。

如果DHCPv6客户端接收到多个服务器回复的Advertise报文,则根据Advertise报文中的服务器优先级等参数,选择优先级最高的一台服务器,并向该服务器发送Request报文,请求服务器确认为其分配地址前缀。

DHCPv6PD服务器回复Reply报文,确认将IPv6地址前缀分配给DHCPv6PD客户端使用。

DHCPv6PD同样也支持携带RapidCommit选项的两步交互方式,报文交互

方式与DHCPV6交互方式一样

DHCPV6PD工作原理图:

配置两个前缀长度的解释:

ipv6localpooldhcpv6-pool2001:

DB8:

1200:

:

/4048//定义一个前缀长度为40

的本地前缀代表地址池,并且定义分配给DHCPv6-PDClient的前缀长度是48

DHCPV6中继报文交互过程

DHCPv6客户端向所有DHCPv6服务器和DHCPv6中继发送目的地址为FF02:

:

1:

2(组播地址)的请求报文。

根据DHCPv6中继转发报文有如下两种情况:

如果DHCPv6中继和DHCPv6客户端位于同一个链路上,即DHCPv6中继为DHCPv6客户端的第一跳中继,中继转发直接来自客户端的报文,此时

DHCPv6中继实质上也是客户端的IPv6网关设备。

DHCPv6中继收到客户端的报文后,将其封装在Relay-Forward报文的中继消息选项(RelayMessageOption)中,并将Relay-Forward报文发送给DHCPv6服务器或下一跳中继。

如果DHCPv6中继和DHCPv6客户端不在同一个链路上,中继收到的报文是来自其他中继的Relay-Forward报文。

中继构造一个新的Relay-Forward报文,并将Relay-Forward报文发送给DHCPv6服务器或下一跳中继。

DHCPv6服务器从Relay-Forward报文中解析出DHCPv6客户端的请求,为

DHCPv6客户端选取IPv6地址和其他配置参数,构造应答消息,将应答消息封装在Relay-Reply报文的中继消息选项中,并将Relay-Reply报文发送给DHCPv6中继。

DHCPv6中继从Relay-Reply报文中解析出DHCPv6服务器的应答,转发给

DHCPv6客户端。

如果DHCPv6客户端接收到多个DHCPv6服务器的应答,则根据报文中的服务器优先级选择一个DHCPv6服务器,后续从该DHCPv6服务器获取IPv6地址和其他网络配置参数。

DHCPv6地址租约更新

DHCPv6服务器为DHCPv6客户端分配的地址是有租约的,租约由生命期(包括地址的首选生命期和有效生命期构成)和续租时间点(IA的T1、T2)构成。

地址有效生命期结束后,DHCPv6客户端不能再使用该地址。

在有效生命期到达之前,如果DHCPv6客户端希望继续使用该地址,则需要更新地址租

DHCPv6客户端为了延长其与IA关联的地址的有效生命期和首选生命期,在T1时刻,发送包含IA选项的Renew报文给服务器,其中IA选项中携带需要续租的IA地址选项。

如果DHCPv6客户端一直没有收到T1时刻续租报文的回应报文,那么在T2时亥ij,DHCPv6客户端通过Rebind报文向DHCPv6服务器继续续租地址。

圉了・8T1时刻地址租约更新过程

DHCPvSClientDHCP76Server

CS@

(1)Renew⑵Reply

T1时刻地址租约更新过程如下:

DHCPv6客户端在T1时刻(推荐值为优先生命期的0.5倍)发送Renew报文进行地址租约更新请求。

DHCPv6服务器回应Reply报文。

如果DHCPv6客户端可以继续使用该地址,则DHCPv6服务器回应续约成功

的Reply报文,通知DHCPv6客户端已经成功更新地址租约。

如果该地址不可以再分配给该DHCPv6客户端,则DHCPv6服务器回应续约失败的Reply报文,通知DHCPv6客户端不能获得新的租约。

图7-9T2时刻地址租约更新过程

DKCPV6ClierlDHCPv6Server

(2}Rebind

T2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1