1 IPv6基础

1.1?? IPv6基础概述

随着Internet的迅速增长以及IPv4地址空间的逐步耗尽,IPv4的局限性日渐凸显 。对IPngInternet Protocol Next Generatio,新一代互联网络和谈)的钻研和实际已经成为热点,IETFInternet Engineering Task Force,Internet工程工作工作幼组)的IPng工作组确定了IPng的和谈规范,并称之为"IP版本6"IPv6) 。

1.2?? IPv6的利益

l  更大的地址空间

IPv6的地址长杜咨IPv432位扩大到128位,约有2^128个地址,IPv6选取分级地址模式,支持从Internet主题主干网到企业内部子网等多级子网地址分配方式 。

l  简化的包头体式

IPv6包头的设计准则是力争将包头开销降到最低,因而将一些非关键性字段和可选字段从包头中移出,放到扩大的包头中 。固然IPv6地址长度是IPv4的四倍,但报头仅为根基IPv4首部的两倍 。IPv6包头中没有校验和字段,IPv6设备在转发中不必要去向理吩飕,因而转发报文效能更高 。

l  高效的档次寻址及路由结构

IPv6选取聚合机造,界说矫捷的档次寻址及路由结构,统一档次上的多个网络在上层设备中暗示为一个统一的网络前缀,能够显著削减设备必须守护的路由表项,降低设备的选路和存储开销 。

l  单一的治理:即插即用

通过实现一系列的自动发现和自动配置职能,简化网络节点的治理和守护 。例如邻居发现(Neighbor Discovery)、最大传输单元发现(MTU Discovery)、路由器公告(Router Advertisement)、路由器要求(Router Solicitation)和节点自动配置(Auto-configuration)等技术就为即插即用提供了有关的服务 。

IPv6支持全状态和无状态两种地址配置方式,在IPv4中,动态主机配置和谈DHCP实现了主机IP地址及其有关配置的自动设置,IPv6继承IPv4的这种自动配置服务,并将其称为全状态自动配置(Stateful Autoconfiguration),具体介绍请拜见“DHCPv6” 。除了全状态自动配置,IPv6还选取了无状态自动配置(Stateless Autoconfiguration)服务 。在无状态自动配置过程中,主机自动获得链路本地地址、本地设备的地址前缀以及其它网络参数配相信息 。

l  安全性

IPsecIPv4中是一个可选扩大和谈,但是在IPv6中是作为一个组成部门存在,用于保障IPv6的安全性 。目前,IPv6实现了AHAuthentication Header,认证头)和ESPEncapsulated Security Payload,封装安全载荷)两种机造 。前者实现数据的齐全性及对IP包起源的认证,保障分组确事反自源地址所象征的节点;后者提供数据加密职能,实现端到端的加密 。

l  更好的QoS支持

IPv6包头的新字段界说了数据流若何鉴别和处置 。IPv6包头中的流标识(Flow Label)字段用于鉴别数据流身份,允许用户利用该字段对通讯质量提出要求 。设备能够凭据该字段标识出同属于某一特定数据流的所有包,并按需对这些包提供特定的处置 。

l  用于邻居节点交互的新和谈

IPv6的邻居发现和谈(Neighbor Discovery Protocol)使用一系列IPv6节造信息报文(ICMPv6)来实现相邻节点(统一链路上的节点)的交互治理 。邻居发现和谈以及高效的组播和单播邻居发现报文代替了以往基于广播的地址解析和谈ARPICMPv4路由器发现等报文 。

l  可扩大性

IPv6个性拥有很强的可扩大性,能够在IPv6包头后的扩大包头中增长新个性 。IPv4包头最多只能支持40字节的可选项,而IPv6扩大包头的大幼仅受到整个IPv6包最大字节数的限度 。

1.3?? 工作道理

1.3.1? IPv6基础

1.    IPv6地址体式

IPv6地址的根基体式为X:X:X:X:X:X:X:X,128位的IPv6地址用冒号(:)分隔为8组,每组的16位用4个十六进造字符(0~9,A~F)来暗示 。其中每个“X”代表一组的4个十六进造数值 。下面是一些合法的IPv6地址:

2001:ABCD:1234:5678:AAAA:BBBB:1200:2100

800:0:0:0:0:0:0:1

1080:0:0:0:8:800:200C:417A

为了简化IPv6地址的书写,对于IPv6地址中的数字“0”能够有如下的简写方式:

l  地址中的每个整数都必须暗示出来,但肇始的0能够不用暗示 。例如2001:00CD:0034:0078:000A:000B:1200:2100能够写为2001:CD:34:78:A:B:1200:2100

l  某些IPv6地址中可能蕴含一长串的0 。当出现这种情况时,允许用::来暗示这一长串的0 。即地址800:0:0:0:0:0:0:1能够被暗示为:800:: 1 。这两个冒号暗示该地址能够扩大到一个齐全的128位地址 。在这种步骤中,只有当16位组全数为0时才会被两个冒号取代,且两个冒号在地址中只能出现一次 。

IPv4IPv6的混合环境中,IPv6地址中的最低32位可用于暗示IPv4地址,该地址能够依照一种混合方式表白,即X:X:X:X:X:X:d.d.d.d,其中X暗示一个16位的十六进造整数,而d暗示一个8位的十进造整数 。例如,地址0:0:0:0:0:0:192.168.20.1就是一个合法的IPv6地址 。使用简写的表白方式后,该地址也能够暗示为:::192.168.20.1 。典型利用是IPv4映射IPv6地址,如把IPv4地址“1.1.1.1”映射为IPv6地址“::FFFF:1.1.1.1” 。

2.    IPv6地址结构

IPv6地址由两个部门组成:

l  网络前缀:n比特,相当于IPv4地址中的网络ID 。

l  接口标识符:128-n比特,相当于IPv4地址中的主机ID 。

因而能够依照CIDRClassless Inter-Domain Routing,无类域间路由选择)地址的方式,用一个额表数值表述网络前缀的长度,此数值与IPv6地址间以斜杠(/)分辨,例如:12AB::CD30:0:0:0:0/60,地址中用于选路的前缀长度为60位 。

3.    IPv6地址类型

RFC4291界说了三种IPv6地址类型:

l  单播(Unicast):单个接口的标识符 。送往一个单播地址的包将被传送至该地址标识的接口上 。

l  组播(Multicast):一组接口(通常属于分歧节点)的标识符 。送往一个组播地址的包将被传送至参与该组播地址的所有接口上 。

l  泛播(Anycast):又称“任播”,一组接口的标识符 。送往一个泛播地址的包将被传送至该地址标识的接口之一(凭据选路和谈选择“最近”的一个) 。

*     注明

IPv6中已经没有界说广播地址 。

 

4.    单播地址(Unicast Addresses

单播地址分为未指定地址、环回地址、链路本地地址、站点本地地址和全球单播地址 。目前,站点本地地址已被拔除 。

l  未指定地址

未指定地址是0:0:0:0:0:0:0:0,通常简写为::,常见的两个用处是:

*        若主机启动时没有单播地址,则以未指定地址作为源地址,发送路由器要求,从网关获取前缀信息,从而自动天生单播地址 。

*        给主机配置IPv6地址时,检测地址是否和同网段其它主机的地址矛盾,则以未指定地址作为源地址发送邻居要求(相当于免费ARP) 。

l  环回地址

环回地址是0:0:0:0:0:0:0:1,通常简写为::1,相当于IPv4地址127.0.0.1,通常在节点给自身发报文时使用 。

l  链路本地地址

链路本地地址的体式如下:

图1-1     链路本地地址

image011

 

链路本地地址用于在单个网络链路上为主机编号 。前缀的前10位标识的地址即链路本地地址 。设备不会转发源地址或者主张地址带有链路本地地址的报文 。该地址的中央54位为0,后64位暗示接口标识符,地址空间的这部门允许单个网络衔接多达(264次方减1)个主机 。

IPv6的链路本地地址能够通过设备自动天生或手工指定来获得 。

l  站点本地地址

站点本地地址的体式如下:

图1-2     站点本地地址

image013

 

站点本地地址可用于站点内传送数据,设备不会将源地址或者主张地址带有站点本地地址的报文转发到Internet上 。站点能够理解为一个公司的局域网,这种地址类似于IPv4的私有地址,如192.168.0.0/16 。RFC3879已经拔除了站点本地地址 。对于新的实现,不再支持该前缀,统一视为全球单播地址;对于已经实现和部署的,能够持续用这个前缀 。

l  全球单播地址

除了未指定地址、环回地址和链路本地地址以表的单播地址,都是全球单播地址 。全球单播地址体式如下:

图1-3     全球单播地址

image015

 

全球单播地址中有一类地址是嵌入IPv4地址的IPv6地址,用于IPv4节点和IPv6节点互通,分为IPv4兼容IPv6地址和IPv4映射IPv6地址两种 。

*        IPv4兼容IPv6地址体式(IPv4-compatible IPv6 address

图1-4     IPv4兼容IPv6地址体式

image017

 

*        IPv4映射IPv6地址体式(IPv4-mapped IPv6 address

图1-5     IPv4映射IPv6地址体式

image019

 

IPv4兼容IPv6地址重要是用在自动隧路上,这类节点既支持IPv4也支持IPv6,IPv4兼容IPv6地址通过IPv4设备以隧路方式传送IPv6报文,目前IPv4兼容IPv6地址已被拔除 。而IPv4映射IPv6地址则被IPv6节点用于接见只支持IPv4的节点,例如当一个IPv4/IPv6主机的IPv6利用法式要求解析一个主机名字(该主机只支持IPv4)时,那么名字服务器内部将动态天生IPv4映射的IPv6地址返回给IPv6利用法式 。

5.    组播地址(Multicast Addresses

一个IPv6的组播地址通常标识一系列分歧节点的接口 。当一个报文发送到一个组播地址上时,该报文将被分发到标识有该组播地址的每个节点的接口上 。

组播地址是以FF00::/8为前缀 。IPv6组播的地址体式如下:

图1-6     组播地址

image021

 

l  标志字段:

4个比特位组成 。目前只指定了第4位,若是该标志位为“0”,暗示该地址是由Internet编号机构指定永远的驰名组播地址,若是该位为“1”,暗示该地址为特定场所使用的一时组播地址 。其他3个标志位保留,都置为“0 。

l  领域字段:

4个比特位组成,用来暗示组播地址的领域类型 。下表列出常见的组播地址领域类型以及对应的值,未列出的值暗示被保留或未指定 。

表1-1     常见的组播地址领域类型

二进造值

十六进造值

领域类型

0001

1

本地接口领域

0010

2

本地链路领域

0011

3

本地子网领域

0100

4

本地治理领域

0101

5

本地站点领域

1000

8

组织机构领域

1110

E

全球领域

 

l  组播组标识符字段:

112位,用于标识组播组 。凭据组播地址是一时的还是驰名的以及地址的领域,统一个组播标识符能够暗示分歧的组 。

特殊用处的组播地址:

l  FF01::1暗示节点本地领域所有节点的组播地址;

l  FF02::1暗示链路本地领域所有节点的组播地址;

l  FF01::2暗示节点本地领域所有设备的组播地址;

l  FF02::2暗示链路本地领域所有设备的组播地址;

l  被要求节点的组播地址地址 。该地址重要用于获取统一链路上邻居节点的链路层地址及实现沉复地址检测 。每一个单播或泛播IPv6地址都有一个对应的被要求节点地址 。其体式为:FF02:0:0:0:0:1:FFXX:XXXX其中,FF02:0:0:0:0:1:FF104位固定体式;XX:XXXX为单播或任播IPv6地址的后24位 。被要求节点组播地址通常用于邻居要求报文中,被要求节点组播地址的体式如下:

图1-7     被要求节点组播地址的体式

image023

 

6.    泛播地址(Anycast Addresses

泛播地址与组播地址类似,同样是多个节点共享一个泛播地址,分歧的是,只有一个节点等待接管泛播地址的数据包,而组播地址成员的所有节点均等待着接管发给该节点的所有包 。泛播地址被分配在正常的IPv6单播地址空间,因而泛播地址在大局上与单播地址无法分辨隔,一个泛播地址的每个成员,必须显式地加以配置,以便鉴别是泛播地址 。

*    把稳

泛播地址只能分配给设备,不能分配给主机,并且泛播地址不能作为报文的源地址 。

 

RFC2373中预约义了一个泛播地址,称之为子网路由器的泛播地址 。下图显示了子网路由器的泛播地址体式,这类地址由子网前缀后面随着一系列的0(作为接口标识符)组成 。

其中子网前缀标识了一个指定的链路(子网),送给子网路由器泛播地址的报文将被分发到在该子网上的一个设备 。子网路由器的泛播地址通常是被用于一个节点上的利用法式必要和远程子网的一个设备通讯而使用 。

图1-8     子网路由器的泛播地址体式

image025

 

*     注明

泛播地址又称Anycast地址,体式如1-8所示,n比特的子网前缀加上128-n比特的全0值 。例如:1000:1::100/120 子网前缀长度120,主机为8位全0也属于泛播地址 。泛播地址不允许作为互换机设备接口地址 。

 

7.    IEEE EUI-64体式的接口标识符

IPv6地址中的64位接口标识符用来标识链路上的唯一接口 。这个地址是从接口的链路层地址(如MAC地址)变动而来的 。天生规定是:在MAC地址的第24位后插入十六进造数FFFE 。为了使接口标识符的作用领域与原MAC地址一致,还要将U/L位(从高位起头的第7位)进行取反操作 。最后得到的这组数就作为EUI-64体式的接口标识符 。

对于Loopback接口、VBDIF接口和Tunnel接口,EUI-64体式地址凭据接口MAC地址天生,中央填充接口索引的后两个字节 。

8.    IPv6包头结构

IPv6包头体式如下图:

图1-9     IPv6包头体式

image027

 

IPv6中,包头以8字节为单元,包头的总长度是40字节 。IPv6包头界说了以下字段:

l  版本(Version

长度为4位,对于IPv6该字段必须为6 。

l  类别(Traffic Class

长度为8位,指明为该包提供了某种服务,相当于IPv4中的“TOS” 。

l  流标签(Flow Label

长度为20位,用于标识属于统一业务流的包,一个节点能够同时作为多个业务流的发送源,流标签和源节点地址唯一标识了一个业务流 。

l  净荷长度(Payload Length

长度为16位,其中蕴含包净荷的字节长度,同时也蕴含了各个IPv6扩大选项的长度(若是存在),换句话说就是蕴含了除IPv6头自身表的IPv6包的长度 。

l  下一个头(Next Header

字段指出了IPv6头后所跟的头字段中的和谈类型 。与IPv4和谈字段类似,下一个头字段能够用来指出高层是TCP还是UDP,它也能够用来指明IPv6扩大头的存在 。

l  跳数(Hop Limit

长度为8位,每当设备对包进行一次转发之后,跳数就会被减1,若是跳数达到0,这个包就将被抛弃 。它与IPv4包头中的生计期字段类似 。

l  源地址(Source Address

长度为128位,指出了IPv6包的发送方地址 。

l  主张地址(Destination Address

长度为128位,指出了IPv6包的接管方地址 。

目前IPv6界说了下列的扩大头

l  逐跳选项头(Hop-by-Hop Options

此扩大头必须紧随在IPv6头之后,它蕴含包所经过的蹊径上的每个节点都必须查抄的选项数据 。

l  路由选项头(Routing

此扩大头指明包在达到主张地途中将经过哪些节点,它蕴含包沿路过过的各节点的地址列表 。IPv6头的最初主张地址是选路头的一系列地址中的第一个地址,而不是包的最终主张地址 。IPv6头部主张地址对应的节点接管到该包之后,对IPv6头和选路头进行处置,并把包发送到选路头列表中的第二个地址,如此持续,直到包达到其最终主张地 。

l  吩飕头(Fragment

此扩大头用于源节点对长度超出源节点和主张节点蹊径MTU的包进行吩飕 。

l  主张地选项头(Destination Options

此扩大头包办了IPv4选项字段,目前唯肯界说的主张地选项是在必要时把选项填充为6 4位(8字节)的整数倍,此扩大头能够用来携带由主张地节点查抄的信息 。

l  上层扩大头(Upper-layer header

指了然上层传输数据的和谈,如TCP和谈(6)和UDP和谈(17) 。

此表还有身份验证头(Authentication)和封装安全性净荷(Encapsulating Security Payload)的扩大头,具体介绍请拜见“VPN配置指南”中的“IPSec” 。

9.    IPv6源路由

IPv6报文通过路由首部来指定报文经过的中央节点,类似于IPv4的宽松源路由选项和宽松纪录路由选项,体式为:

图1-10   IPv6报文路由首部

image029

 

其中渣滓段数用来指明报文从当前节点到最终主张地址,还必要经过的路由首部指明的中央节点的个数,不蕴含路由首部没有列出的中央节点 。

目前界说了两种路由类型:02 。类型2路由首部用于移动通讯 。类型0路由首部,类似于IPv4的宽松源路由选项,体式如下图所示 。

图1-11   类型0路由首部

image031

 

举例注明类型0路由首部的利用 。

图1-12   类型0路由首部的利用

image033

 

主机A发报文给主机B,指明要经过路由器B和路由器C,转发过程中报文IPv6首部和路由首部的有关字段变动如下表所示:

表1-2     有关字段变动表

传输节点

IPv6首部的有关字段

类型0路由首部的有关字段

主机A

源地址=1000::2

主张地址=1001::1(路由器2的地址)

渣滓段数=2

地址1=1002::1(路由器3的地址)

地址2=1003::2(主机2的地址)

路由器A

无变动

路由器B

源地址=1000::2

主张地址=1002::1(路由器3的地址)

渣滓段数=1

地址1=1001::1(路由器2的地址)

地址2=1003::2(主机2的地址)

路由器C

源地址=1000::2

主张地址=1003::2(主机2的地址)

渣滓段数=0

地址1=1001::1(路由器2的地址)

地址2=1002::1(路由器3的地址)

主机B

无变动

 

具体过程如下:

(1)   主机A发出报文,主张地址是路由器B的地址1001::1,在类型0路由首部中填上路由器C的地址1002::1和主机B的地址1003::2,渣滓段数是2 。

(2)   路由器A把报文转发给路由器B 。

(3)   路由器BIPv6首部的主张地址和路由首部的地址1互换,即此刻主张地址是路由器C的地址1002::1,路由首部的地址1是路由器B的地址1001::1,渣滓段数是1 。批改完以来,路由器B把报文转发给路由器C 。

(4)   路由器CIPv6首部的主张地址和路由首部的地址2互换,即此刻主张地址是主机B的地址1003::2,路由首部的地址2是路由器C的地址1002::1,渣滓段数是0 。批改完以来,路由器C把报文转发给主机B 。

类型0路由首部有可能被利用进行回绝服务攻击,如下图所示,主机11Mbps的速度向主机2发报文,有意机关一个渣滓段数为100的路由首部,使报文在路由器2和路由器3之间屡次往返,从路由器2到路由器350次,从路由器3到路由器249次,这时路由首部产生流量放大效应:路由器2到路由器3方向的流量为50Mbps,路由器3到路由器2方向的流量为49Mbps 。由于存在这个安全问题,RFC5095拔除了类型0路由首部 。

图1-13   类型0路由首部被利用进行回绝服务攻击

image035

 

10. ?IPv6 Hop-limit

IPv6数据包从源地址向主张地址经过路由器间传布,设置一个Hop-limit数值,每过一个路由器Hop-limit值就减一 。当Hop-limit值减到零的时辰,路由器就把这个包丢掉,这样能够预防无用的包在网络上无限传布下去,浪费网络带宽 。其职能类似于IPv4TTL 。

1.3.2? ICMPv6和谈

1.    报文体式

图1-14   ICMPv6报文体式

image037

 

各个字段的诠释如下:

l  Type字段批注新闻的类型,0127暗示差错报文类型,128255暗示新闻报文类型 。

l  Code字段暗示此新闻类型细分的类型 。

l  Checksum暗示ICMPv6报文的校验和 。

2.    ICMPv6差错报文

ICMPv6差错报文是由指标节点或者中央路由器发送,用于汇报在转发和传送IPv6数据包过程中出现的谬误 。重要蕴含下面四种类型的差错报文:

l  主张不成达报文Destination UnreachableType=1),数据包无法被转发到指标节点或上层和谈 。

*        Code=0,没有达到指标的路由;

*        Code=1,与指标的通讯被治理战术不容;

*        Code=2,未指定;

*        Code=3,地址不成达;

*        Code=4,端口不成达 。

l  数据包过大报文Packet Too BigType=2,Code=0),报文超过出接口的链路MTU 。

l  功夫超时报文Time ExceededType=3

*        Code=0,在传输中超过了跳数限度;

*        Code=1,吩飕沉组超时 。

l  参数问题报文Parameter ProblemType=4),IPv6报头或扩大报头出现谬误 。

*        Code=0,遇到谬误的报头字段;

*        Code=1,遇到无法识此外下一个报头(Next header)类型;

*        Code=2,遇到无法识此外IPv6选项 。

3.    ICMPv6信息报文

以下列举常见的信息报文:

l  Type=128,回送要求报文Echo Request,发送到指标节点,以使指标节点立即阐扬一个回送应答报文 。

l  Type=129,回送应答报文Echo Reply,对回送要求报文的回应 。

l  Type=133,路由器要求报文RSRouter Solicitation),节点启动后,通过RS新闻向路由器发出要求,要求前缀和其他配相信息 。

l  Type=134,路由器布告报文RARouter Advertisement),对RS新闻的响应;布告前缀信息选项和某些标志位的信息 。

l  Type=135,邻居要求报文NSNeighbor Solicitation),相当于ARP要求,获取邻居的链路层地址;验证邻居是否可达;进行沉复地址检测 。

l  Type=136,邻居布告报文NANeighbor Advertisement),相当于ARP应答 。

l  Type=137,沉定向报文(Redirect),缺省网关通过向源主机发送沉定向新闻,使主机沉新选择更优的下一跳地址进行后续报文的发送 。

1.3.3? IPv6蹊径MTU发现

IPv4的蹊径MTU发现类似,IPv6的蹊径MTU发现允许一台主机动态地发现数据蹊径上的MTU的大幼 。当主机要发送的数据包的大幼若是比数据蹊径MTU大时,将由主机自行吩飕 。

图1-15   IPv6蹊径MTU发现

image039

 

如上图,当主机要发送的报文的长度比蹊径MTU大时,路由器抛弃报文,并且向主机发送一个ICMPv6报文过大新闻,把MTU通知主机,主机凭据新的蹊径MTU对报文进行吩飕 。这种由主机吩飕的行为使得路由器不必要对报文进行吩飕从而节俭了路由器的资源,同时也提高了IPv6网络的效能 。

1.3.4? IPv6邻居发现和谈

邻居发现和谈(Neighbor Discovery Protocol)是IPv6和谈的一个根基的组成部门,它的重要职能有路由器发现、前缀发现、参数发现、地址自动配置、地址解析(相当于ARP)、确定下一跳、邻居不成达检测、地址矛盾检测和沉定向 。

邻居发现使用了5ICMP信息报文:路由器要求报文,路由器布告报文,邻居要求报文,邻居布告报文,沉定向报文 。

这五种ICMP报文城市携带一个或者多个的选项,这些选项在某些情况下是可选,事实上,有些情况下选项现实上就是报文的全数意思地点 。邻居发现重要界说五种选项:“源链路层地址选项”,类型=1;“指标链路层地址选项”,类型=2;“前缀信息选项”,类型=3;“沉定向的首部选项”,类型=4;“MTU选项”类型=5 。

分歧的NDP机造使用分歧ICMPv6新闻 。

1.    地址解析

当一个节点要与另表一个节点通讯时,必须获取对方的链路层地址,此时要向对方节点发送邻居要求报文,报文的主张地址对应于主张节点的IPv6地址的被要求多播地址,发送的NS报文同时也蕴含了自身的链路层地址 。当主张节点收到该邻居要求后,会回复一个邻居布告报文,其主张地址是邻居要求的源地址,内容为被要求的节点的链路层的地址 。当源节点收到NA报文后即可和主张节点进行通讯 。

图1-16   地址解析

image041

 

地址解析的过程如下:

(1)   Device A以组播方式发送NS新闻 。NS新闻的源地址是Device A的接口IPv6地址,主张地址是Device B的被要求节点组播地址,新闻内容中蕴含了Device A的链路层地址,并要求Device B的链路层地址 。

(2)   Device B收到NS新闻后,判断报文的指标地址是否为自己的IPv6地址 。若是是,则Device B能够进建到Device A的链路层地址,并以单播方式返回NA新闻,其中蕴含了自己的链路层地址 。

(3)   Device A从收到的NA新闻中就可获取到Device B的链路层地址 。尔后两台设备能够起头通讯 。

2.    邻居不成达检测

当一个邻居被以为可达到的功夫到期以来,若是有IPv6单播报文必要发送给这个邻居,将执行邻居不成达检测 Neighbor Unreachability Detection) 。通过邻居要求新闻NS和邻居公告新闻NA能够验证邻居节点是否可达 。

(1)   节点发送NS新闻,其中主张地址是邻居节点的IPv6地址 。

(2)   若是收到邻居节点简直认报文,则以为邻居可达;不然,以为邻居不成达 。

邻居不成达检测和向邻居发送IPv6报文能够同时进行,在检测过程中,持续向该邻居转发IPv6报文 。

3.    地址矛盾检测

当节点获取到一个IPv6地址后,必要执行DADDuplicate Address Detection,地址矛盾检测)来确定这个IPv6地址在链路上是否唯一,此个性类似IPv4中的免费ARP 。

地址矛盾检测的过程如下:

(1)   节点发送NS新闻,NS新闻的源IPv6地址是未指定地址,主张地址是待检测的IPv6地址对应的被要求节点组播地址,新闻内容中蕴含了待检测的IPv6地址 。

(2)   其他邻居节点收到该NS报文后,查找本地的IPv6地址中是否存在此IPv6地址,若存在会回应一个NA新闻给源节点,并携带此IPv6地址信息 。

(3)   源节点收到邻居的NA报文,则以为该IPv6地址已被占使用 。反之,若是源节点发出的NS报文没有收到相应的NA报文,则该IPv6地址可用 。

若是设备检测到地址矛盾,该地址将被设置为矛盾状态,设备将不能接管主张地址为该地址的IPv6报文,同时设备会为该矛盾的地址起一个按时器,按时进行地址矛盾检测,若是沉新检测没有矛盾,该地址将能够正常使用 。

4.    路由器布告(RA)报文

路由器布告报文中通常蕴含如下内容:

l  一个或者多个IPv6地址前缀(用于On-link确定,或无状态地址自动配置);

l  IPv6地址前缀的有效期;

l  主机自动配置使用的方式(有状态还是无状态);

l  作为缺省设备的信息(即决定本设备是否要作为缺省设备,若是是那么还颁发自己充任缺省设备的功夫);

l  提供给主机配置的其它信息如跳数限度、MTU和邻居要求沉传距离功夫等 。

路由器布告报文同时也用来应答主机发出的路由器要求报文,路由器要求报文允许主机一旦启动后能够立即获得自动配置的信息而无需期待设备发出的路由器布告报文 。当主机刚启动时若是没有单播地址,那么主机发出的路由器要求报文将使用未指定地址(0:0:0:0:0:0:0:0)作为要求报文的源地址,不然使用已有的单播地址作为源地址,路由器要求报文使用本地链路所有设备组播地址(FF02::2)作为主张地址 。作为应答路由器要求报文的路由器布告报文将使用要求报文的源地址作为主张地址(若是源地址是未指定地址那么将使用本地链路所有节点组播地址FF02::1) 。

在路由器布告报文中下列参数能够在IPv6接口属性中配置:

l  Ra-interval:路由器布告报文的发送距离 。

l  Ra-lifetime:路由器生计期,即设备是否充任本地链路的缺省路由器以及充任该角色的功夫 。

l  Prefix:本地链路的IPv6地址前缀,用于on-link确定,或无状态地址自动配置,蕴含前缀的其它参数配置 。

l  Ns-initerval:邻居要求报文沉传的功夫距离 。

l  Reachable-time:检测到邻居可达到事务后以为邻居是可达到的所维持的功夫 。

l  Ra-hoplimit:路由器布告报文跳数的值,用于设置主机发送单播报文的hop-limit

l  Ra-mtu:路由器布告报文的MTU字段的值

l  Maneged-config-flag:决定了收到该路由器布告的主机是否要使用全状态自动配置来获取地址

l  Other-config-flag:决定了收到该路由器布告的主机是否将使用dhcpv6来获取除IPv6地址以表的其他信息进行自动配置 。

l  RDNSSDNSSL选项:为IPv6终端提供DNS递归查问服务的服务器地址与DNS域名查问列表 。

5.    路由器发现/前缀和参数发现

路由器布告报文在设备上是定期被发往链路本地所有节点的,节点从收到的RA新闻中获取邻居路由器及地点网络的前缀,以及其他配置参数,这就是路由器发现/前缀和参数发现 。

节点凭据路由器发现/前缀发现所获取的信息,自动配置IPv6地址,称为无状态自动配置 。

路由器发现/前缀和参数发现过程中的路由器布告报文发送如下图:

图1-17   路由器发现/前缀和参数发现

image043

 

6.    沉定向

当路由器收到IPv6报文以来,发现存在更优的下一跳,就发送ICMP沉定向报文把更优的下一跳通知主机,下一次主机直接把IPv6报文发给更优的下一跳 。与IPv4ICMP沉定向新闻的职能一样 。

1.3.5? 和谈规范

l  RFC4291IPVersion6AddressingArchitecture.

l  RFC2460Internet Protocol, Version 6 (IPv6) Specification

l  RFC4443Internet Control Message Protocol (ICMPv6)for the Internet Protocol Version 6 (IPv6) Specification

l  RFC4861Neighbor Discovery for IP version 6 (IPv6)

l  RFC4862IPv6 Stateless Address Autoconfiguration

l  RFC5059Deprecation of Type 0 Routing Headers in IPv6

1.4?? 配置IPv6基础

1.4.1? 职能简介

IPv6IPv4的升级版本,解决了目前IPv4的存在的很多不及之处 。

IPv6IPv4之间最显著的区别就是IP地址长度从原来的32位升级为128位 。IPv6以其简化的包头体式、充足的地址空间、档次化的地址结构、矫捷的扩大头和加强的邻居发现机造将在将来的市场竞争中充斥活力 。

1.4.2? 配置工作概览

IPv6基础配置工作如下:

(1)   配置IPv6地址

(2)   (可 。配置接口IPv6 MTU

(3)   (可 。配置IPv6吩飕报文软件沉组职能

(4)   (可 。配置IPv6源路由

(5)   (可 。配置IPv6 Hop-limit

(6)   (可 。配置MGMT口缺省网关

(7)   配置发送ICMPv6报文 。以下配置工作均为可选配置,请凭据现实情况选择配置 。

*        配置ICMPv6报文指定源地址发送

*        配置ICMPv6差错报文的发送速度

1.4.3? 配置IPv6地址

1.    职能简介

开启接口支持IPv6和谈职能,并为接口配置IPv6地址,实现IPv6网络通讯 。

IPv6的链路本地地址能够通过手动配置或自动获得 。

2.    配置限杜纂领导

l  泛播地址不能作为接口IPv6地址进行配置 。例表的,子网前缀大于蹬宗127的泛播地址允许配置 。

l  若是接口已经被绑定到没有配置IPv6地址族的多和谈VRF,那么不允许在接口上打开IPv6职能,也不允许给该接口配置IPv6地址,必须先给多和谈VRF配置IPv6地址族,而后能力在接口上打开IPv6职能或给该接口配置IPv6地址 。

l  有两各种方式能够打开接口上的IPv6职能,一是在接口下配置ipv6 enable号令,拜见配置步骤(4);二是直接在接口下配置了IPv6地址,拜见配置步骤(5) 。若是在接口上配置了IPv6地址那么接口的IPv6职能就会自动打开,即便使用no ipv6 enable也不能关关IPV6职能 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   (可 。┛艚涌IPv6职能 。

ipv6 enable

缺省情况下,接口IPv6职能处于关关状态 。

(5)   配置接口IPv6地址 。以下配置步骤互斥,请选择其中一项进行配置 。

*        手工配置接口IP地址 。

ipv6 address { ipv6-address/prefix-length | ipv6-prefix/prefix-length eui-64 | prefix-name sub-bits/prefix-length [ eui-64 ] }

缺省情况下,未配置IPv6地址 。

当一个IPV6接口被创建并且链路状态为UP时那么系统将为该接口自动天生链路本地地址 。

*        通过通用前缀机造天生接口的IPv6地址 。

ipv6 general-prefix prefix-name ipv6-prefix/prefix-length

缺省情况下,未配置IPv6通用前缀 。

*        开启接口IPv6无状态自动配置地址 。

ipv6 address autoconfig

缺省情况下,接口IPv6无状态自动配置地址处于关关状态 。

1.4.4? 配置接口IPv6 MTU

1.    职能简介

IPv6的蹊径MTU发现允许一台主机动态的发现数据蹊径上的MTU的大幼 。本地发送IPv6报文时,将比力出口的IPv6 MTU和蹊径MTU,若是报文长度大于两者的最幼值,选取最幼值对报文进行吩飕 。

2.    配置限杜纂领导

接口IPv6 MTU的配置领域受接口MTU限度,最大值是接口MTU 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   配置接口IPv6 MTU值 。

ipv6 mtu bytes

缺省情况下,IPv6 MTU值与接标语令mtu配置的值一样 。

1.4.5? 配置IPv6吩飕报文软件沉组职能

1.    职能简介

设备默认会对送CPUIPv6报文进行软件沉组,之后再决定是转发还是直接由本机处置 。若是但愿对上送CPU转发的IPv6报文不做软件沉组,则必要关关此职能 。

2.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   关关IPv6吩飕报文软件沉组职能 。

ipv6 reassemble disable

缺省情况下,IPv6吩飕报文软件沉组职能处于开启状态 。

1.4.6? 配置IPv6源路由

1.    职能简介

IPv6报文通过路由首部来指定报文经过的中央节点,类似于IPv4的宽松源路由选项和宽松纪录路由选项 。

2.    配置限杜纂领导

使用类型0路由首部有安全隐患,设备很容易遭逢回绝服务攻击,所以在缺省情况下不容转发带有路由首部的IPv6报文,但是依然处置最终主张地址是本机的带有类型0路由首部的IPv6报文 。

治理员能够使用全局配置模式号令“ipv6 source-route”打开这项职能 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   配置设备转发带有路由首部的IPv6报文 。

ipv6 source-route

缺省情况下,不容转发带有路由首部的IPv6报文 。

1.4.7? 配置IPv6 Hop-limit

1.    职能简介

配置发送单播报文的跳数,预防报文在网络上无限传布下去 。

2.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   配置发送单播报文的跳数 。

ipv6 hop-limit hop

缺省情况下,发送单播报文的跳数为64 。

1.4.8? 配置MGMT口缺省网关

1.    职能简介

配置MGMT口缺省网关,天生一条默认路由,出口是MGMT口,下一跳是配置的网关 。

2.    配置限杜纂领导

仅支持MGMT口配置 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface mgmt interface-number

(4)   设置MGMT口缺省网关

ipv6 gataway ipv6-address

缺省情况下,MGMT接口未配置IPv6缺省网关 。

1.4.9? 配置ICMPv6报文指定源地址发送

1.    职能简介

在网络中IPv6地址配置较多的情况下,收到ICMPv6报文时,用户很难凭据报文的源IPv6地址判断报文来自哪台设备 。为了简化这一判断过程,能够配置ICMPv6报文指定源地址职能 。

2.    配置限杜纂领导

配置特定地址(如环回口地址)为ICMPv6报文的源地址,能够简化判断 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   配置ICMPv6报文指定源地址发送 。

ipv6 icmp source [ vrf vrf-name ] ipv6-address

缺省情况下,未配置ICMPv6 报文指定源地址发送职能 。

1.4.10? 配置ICMPv6差错报文的发送速度

1.    职能简介

设备若是收到犯法IPv6报文,会抛弃并向源IPv6地址发送相应的ICMPv6差错报文 。若是受到大量IPv6犯法报文攻击,设备会一向在应答ICMPv6差错报文而耗尽资源,将不能正常提供服务,这种攻击被称为回绝服务攻击 。针对这种攻击,能够对ICMPv6差错报文的发送速度进行限度 。

若是待转发的IPv6报文的长度超过出口的IPv6 MTU,路由器会抛弃IPv6报文,并且向源IPv6地址发送ICMPv6报文过大新闻,这种ICMPv6差错报文的重要用处是IPv6蹊径MTU发现 。为了预防其它ICMPv6差错报文太多而将ICMPv6报文过大新闻限速过滤掉,从而导致IPv6蹊径MTU发现职能失效,能够对ICMPv6报文太大新闻和其它ICMPv6差错报文别离限速 。

*     注明

ICMPv6沉定向报文不属于ICMPv6差错报文,设备把ICMPv6沉定向报文和其它ICMPv6差错报文一路限速 。

 

2.    配置限杜纂领导

按时器的精度是10毫秒,建议用户把令牌桶的刷新周期配置成10毫秒的整数倍 。若是令牌桶的刷新周期大于,0幼于10,现实生效的刷新周期是10毫秒,例如配置5毫秒1个,现实成效是10毫秒2个;若是令牌桶的刷新周期不是10毫秒的整数倍,现实生效的刷新周期自动换算成10毫秒的整数倍,例如配置15毫秒3个,现实成效是10毫秒2个 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   配置ICMPv6报文太大新闻的发送速度 。

ipv6 icmp error-interval too-big interval [ bucket-size ]

缺省情况下,100毫秒发送10个 。

(4)   配置其它ICMPv6差错报文的发送速度 。

ipv6 icmp error-interval interval [ bucket-size ]

缺省情况下,100毫秒发送10个 。

1.5?? 配置IPv6邻居发现

1.5.1? 职能简介

邻居发现和谈(Neighbor Discovery Protocol)是IPv6和谈的一个根基的组成部门,它的重要职能有路由器发现、前缀发现、参数发现、地址自动配置、地址解析(相当于ARP)、确定下一跳、邻居不成达检测、地址矛盾检测和沉定向 。

1.5.2? 配置工作概览

以下所有配置工作均为可选配置,请凭据现实情况选择配置 。

l  配置静态邻居

l  配置邻居表项治理

l  配置地址解析

l  配置邻居不成达检测

l  配置地址矛盾检测

l  配置沉定向

l  配置RA报文有关参数

l  配置ND日志打印职能

l  配置ND报文速度统计功夫距离

l  配置本地ND代理

l  配置不往认证VLAN发送邻居要求报文

l  配置ND为分歧的用户分配分歧的前缀

l  配置本地ND代理

1.5.3? 配置静态邻居

1.    职能简介

凭据邻居节点的IPv6地址和与此邻居节点相连的三层接标语来唯一标识一个静态邻居表项 。

2.    配置限杜纂领导

静态的邻居只能配置在开启IPv6和谈的接口上 。若是要配置的邻居已经通过NDP学到并存储在邻居表中,那么该动态天生的邻居将自动转换为静态的邻居 。配置的静态邻居若是有效,将总是处于Reachable状态 。无效的静态邻居,是指配置的静态邻居IPv6地址,与接口上配置的地址不匹配(不在该接口的任一IPV6地址的网段内,或与该接口地址矛盾),此时数据包不会按静态邻居指定的MAC地址转发 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   配置一个静态邻居 。

ipv6 neighbor ipv6-address interface-type interface-number mac-address

缺省情况下,未配置任何静态邻居 。

1.5.4? 配置邻居表项治理

1.    职能简介

l  限度接口的邻居进建数量,可预防恶意的邻居进建攻击,让设备天生大量的邻居表项,占用过多的内存且影响转发机能 。

l  限度未解析的ND表项的个数,可预防恶意扫描攻击导致天生大量未解析的ND表项,占用表项资源 。

l  配置限度ND选项最大数量,可预防伪造ND报文携带无限的ND选项,设备处置占用过多的CPU 。

l  当在接口上开启接口允许通过DAD报文进建ND表项职能,接口收到DAD NS报文时,会创建状态STALEND表项 。

2.    配置工作简介

以下所有配置工作均为可选配置,请凭据现实情况选择配置 。

l  配置可进建邻居表项数量

l  配置未解析邻居表项的最大数量

l  配置可处置ND选项的数量

l  配置允许通过DAD报文进建ND表项

3.    配置限杜纂领导

缺省通常接口下不允许通过DAD报文进建ND表项,Super VLAN口下默认允许通过DAD报文进建ND表项,不受该号令限度 。

4.    配置可进建邻居表项数量

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   配置接口可进建邻居表项数量 。

ipv6 nd cache interface-limit limit

缺省情况下,不限度接口进建的邻居数量 。

配置的值必须不幼于当前接口已经进建到的邻居数,不然配置不生效 。该限度受限于设备支持ND容量 。

5.    配置未解析邻居表项的最大数量

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   配置未解析邻居表项的最大数量 。

ipv6 nd unresolved number

缺省情况下,未解析邻居表项的最大数量为0,暗示不限度,即受限于设备支持的邻居表项容量 。

6.    配置可处置ND选项的数量

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   (可 。┡渲每纱χND选项数量 。

ipv6 nd max-opt option

缺省情况下,配置设备支持处置ND选项的个数为10 。

7.    配置允许通过DAD报文进建ND表项

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   开启接口允许通过DAD报文进建ND表项 。

ipv6 nd dad learning enable

缺省情况下,接口允许通过DAD报文进建ND表项职能处于关关状态 。

1.5.5? 配置地址解析

1.    职能简介

当一个节点要与另表一个节点通讯时,必须获取对方的链路层地址,此时要向对方节点发送邻居要求报文,报文的主张地址是对应于主张节点的IPv6地址的被要求多播地址,发送的邻居要求报文同时也蕴含了自身的链路层地址 。当主张节点收到该邻居要求后,会回复一个邻居布告报文,其主张地址是邻居要求的源地址,内容为被要求的节点的链路层的地址 。当源节点收到邻居布告报文后就能够和主张节点进行通讯了 。

2.    配置限杜纂领导

配置了自动往Super VLAN中特定的VLAN发送NS广播解析要求后,则设备只往Super VLAN中指定的VLAN发送NS广播要求,其他非指定VLAN都不会自动发送NS广播要求 。

若是配置了免认证VLAN,而免认证VLAN不在指定VLAN列表中,则不会再往免认证VLAN自动广播NS 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   (可 。┡渲迷诜⑺土诰右笫辈磺吭焓褂昧绰繁镜氐刂纷魑吹刂 。

no ipv6 ns-linklocal-src

缺省情况下,发送邻居要求时总是以链路本地地址作为源地址 。

(4)   (可 。┡渲米远Super VLAN中特定的VLAN发送NS广播解析要求 。

ipv6 nd resolve vlan { vlan-list | none }

缺省情况下,未配置自动往Super VLAN中特定的VLAN发送NS广播解析要求 。

(5)   (可 。┙虢涌谂渲媚J 。

interface interface-type interface-number

(6)   配置沉传邻居要求报文的功夫距离 。

ipv6 nd ns-interval interval

缺省情况下,用于填入设备发送的路由器布告报文中时,接口上邻居要求的沉传距离为0(暗示未指定);用于节造设备自身发送邻居要求的沉传距离时,接口上邻居要求的沉传距离为1000毫秒 。

(7)   配置陆续发送邻居要求报文的次数 。

ipv6 nd ns-times times

缺省情况下,设备陆续发送邻居要求报文的次数为3次,即若是没有收到邻居布告(NA)报文,设备会再发送2次邻居要求报文 。

1.5.6? 配置邻居不成达检测

1.    职能简介

当一个邻居被以为可达到的功夫到期,或邻居维持Stale状态的功夫到期以来,若是有IPv6单播报文必要发送给这个邻居,将执行邻居不成达检测 。

2.    配置限杜纂领导

邻居被以为可达到的功夫和邻居维持Stale状态的功夫越短,意味着能够更快的检测到邻居失效,但是将浪费更多的网络带宽,亏损设备更多的资源 。因而不建议将该功夫配置的过幼 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   设置邻居被以为可达到的功夫 。

pv6 nd reachable-time time

缺省情况下,在路由器布告报文中值为0(暗示未指定),设备自己在邻居发现行为中邻居被以为可达到的持续功夫为30000毫秒 。

(5)   (可 。┡渲昧诰游Stale状态的功夫 。

ipv6 nd stale-time time

缺省情况下,邻居维持Stale状态的功夫为1幼时 。

1.5.7? 配置地址矛盾检测

1.    职能简介

在接口上配置一个新的IPv6地址前,要启动地址矛盾检测,此时该地址处于“Tentative(试验)”的状态 。若是没有检测到矛盾,那么该地址就能够被正确使用;若是检测到矛盾了,并且该地址所使用的接口标识符是EUI-64的标识符,那么批注在该链路上存在链路层地址沉复,那么此时系统会自动关关该接口(即阻止在该接口上进行IPv6的有关操作),此时必须手工为该接口配置新的地址,并通过关关再开启接口沉新启动地址矛盾检测 。

软件会依照配置的陆续产生数量和功夫距离对有矛盾的地址沉新进行地址矛盾检测,若是沉新检测没有矛盾,该地址将能够正常使用 。

2.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   配置矛盾检测时要陆续发送的邻居要求报文的数量 。

ipv6 nd dad attempts attempts

缺省情况下,矛盾检测时要陆续发送的邻居要求报文的数量为1 。

(5)   配置沉复地址矛盾检测距离 。

ipv6 nd dad retry retry

缺省情况下,沉复地址矛盾检测距离为1秒 。

1.5.8? 配置沉定向

1.    职能简介

当路由器收到IPv6报文以来,若发现存在更优的下一跳,就发送ICMP沉定向报文把更优的下一跳通知主机 。下一次主机遇直接把IPv6报文发给更优的下一跳 。ICMPv6沉定向与IPv4ICMP沉定向新闻的职能一样 。

2.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   开启接口的IPv6沉定向职能 。

ipv6 redirects

缺省情况下,接口的IPv6沉定向职能处于开启状态 。

1.5.9? 配置RA报文有关参数

1.    职能简介

路由器布告报文(RA)是对RS新闻的响应,同时能够布告前缀信息选项和某些标志位的信息 。

2.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   配置允许在该接口上发送路由器布告报文 。

no ipv6 nd suppress-ra

缺省情况下,在IPv6的接口大将不会发送路由器布告报文 。

(5)   (可 。┥柚寐酚善鞑几姹ㄎ闹兴几娴牡刂非白 。

ipv6 nd prefix { ipv6-prefix/prefix-length | default } [ [ valid-lifetime { infinite | preferred-lifetime } ] | [ at valid-date preferred-date ] | [ infinite { infinite | preferred-lifetime } ] ] [ no-advertise ] | [ [ off-link ] [ no-autoconfig ] | [ pool pool-name ] | [ preference { high | medium | low } ] [ proxy ] ]

缺省情况下,路由器布告报文中布告的前缀是在该接口上通过ipv6 address号令配置的前缀 。

(6)   (可 。┡渲媒涌谏戏⑺偷穆酚善鞑几姹ㄎ牡奶 。

pv6 nd ra-hoplimit ra-hoplimit

缺省情况下,路由器布告报文的跳数为64 。

(7)   (可 。┡渲媒涌谏戏⑺偷穆酚善鞑几姹ㄎ牡木嗬 。

ipv6 nd ra-interval { interval | min-max min-interval max-interval }

缺省情况下,距离为200秒,现实发送报文的距离在200秒高低浮动20% 。

(8)   配置接口上发送的路由器布告报文的MTU 。

ipv6 nd ra-mtu ra-mtu

缺省情况下,路由器布告报文的MTU为网络接口的IPv6 MTU值 。

(9)   配置RA报文中的有关参数 。以下所有配置步骤均为可选配置,请凭据现实情况选择配置 。

*        配置RA报文中的Managed address configuration”标志位 。

ipv6 nd managed-config-flag

缺省情况下,未配置RA报文中的“Managed address configuration”标志位 。

该标志位的设置决定了收到该路由器布告的主机是否要使用全状态自动配置来获取地址 。若是配置了该标志位,将使用全状态自动配置来获得地址,不然不使用 。

*        配置RA报文中的“Other stateful configuration”标志位 。

ipv6 nd other-config-flag

缺省情况下,未配置RA报文中的“Other stateful configuration”标志位 。

设置了此标志位后,设备发出的路由器布告报文的这个标志位被置位 。主机收到这个标志位后,将使用dhcpv6来获取除IPv6地址以表的其他信息进行自动配置 。

Managed address configuration被设置时,默认Other stateful configuration也被设置 。

*        配置RA报文中的DNS递归解析服务的服务器地址 。请顺次执行以下号令配置 。

no ipv6 nd ra dns server suppress

缺省情况下,RA报文携带RDNSS选项的职能处于关关状态 。

ipv6 nd ra dns server ipv6-address { valid-lifetime | infinite } sequence number

缺省情况下,未配置RA布告中的DNS递归解析服务的服务器地址 。

*        配置RA报文中的DNS后缀域名 。请顺次执行以下号令配置 。

no ipv6 nd ra dns search-list suppress

缺省情况下,RA报文携带DNSSL选项的职能处于关关状态 。

ipv6 nd ra dns search-list ipv6-domain-name { valid-lifetime | infinite } sequence number

缺省情况下,未配置RA布告中所蕴含的DNS后缀域名 。

*        配置RA报文中的“路由器生计期” 。

ipv6 nd ra-lifetime lifetime

缺省情况下,RA报文中的“路由器生计期”为1800秒 。

*        配置RA报文的URL地址 。

ipv6 nd ra-url [ ra-url ]

缺省情况下,未配置RA报文中的URL地址 。

*        配置RA报文的URL选项类型值 。

ipv6 nd ra-url type

缺省情况下,未配置RA报文的URL选项类型值 。

1.5.10? 配置ND日志打印职能

1.    职能简介

当配置ND日志打印职能后,将针对设备收到和发送的ND报文,打印出相应的系统日志信息 。

2.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   开启ND日志打印职能 。

ipv6 nd log enable

缺省情况下,ND日志打印职能处于关关状态 。

(4)   配置设备ND日志打印速度 。

ipv6 nd log rate rate

缺省情况下,1分钟限速打印20ND LOG 。

1.5.11? 配置ND报文速度统计功夫距离

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   配置ND报文速度统计功夫距离 。

ipv6 nd packet rate-statistics interval interval

缺省情况下,ND报文速度统计职能处于关关状态 。

1.5.12? 配置本地ND代理

1.    职能简介

接口开启本地ND代理,则设备收到要求非本机的NS要求,也能代理自身MAC地址应答NA 。

当接入为二层隔离,或者分歧的子网之距离离(好比Sub VLAN),通过在网关上开启本地ND代理,网关将代理下联用户的NS要求,并应答自身MAC,使得用户之间互访的流量从网关三层转发 。

2.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   开启本地ND代理职能 。

local-proxy-nd enable [ force ]

缺省情况下,接口本地ND代理职能处于关关状态 。

1.5.13? 配置ND为分歧的用户分配分歧的前缀

1.    职能简介

接口配置特定的前缀池,使得设备为该接口下的每个用户分配分歧的IPv6前缀 。

2.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   配置能够分配的前缀池 。

ipv6 local pool pool-name prefix/prefix-length assigned-length

缺省情况下,未配置DHCPv6 Server前缀代理的本地前缀池 。

(4)   进入接口配置模式 。

interface interface-type interface-number

(5)   配置接口绑定的前缀池名称 。

ipv6 nd prefix pool pool-name

缺省情况下,未配置接口绑定前缀池 。

1.5.14? 配置不往认证VLAN发送邻居要求报文

1.    职能简介

在网关认证模式下,Super VLAN下的所有子VLAN默认都是认证VLAN,认证VLAN下的用户必要在认证后能力上网 。用户认证后会在设备上天生静态ND表项,因而设备接见认证用户时,不必要往认证VLAN发送NS要求 。若设备必要接见免认证VLAN下的用户时,只必要往免认证VLAN发送ARP要求 。

在网关认证模式下,设备默认开启了不往认证VLAN发送NS要求的职能 。若是设备必要接见认证VLAN下的非认证用户,必要关关该职能 。

2.    配置限杜纂领导

只支持SVI口配置,且在网络认证模式下才生效 。

3.    配置步骤

(1)   进入特权模式 。

enable

(2)   进入全局配置模式 。

configure terminal

(3)   进入接口配置模式 。

interface interface-type interface-number

(4)   配置不往免认证VLAN发送邻居要求报文 。

ipv6 nd suppress-auth-vlan-ns

缺省情况下,不往认证VLAN发送邻居要求报文 。

1.6?? 监督与守护

能够通过show号令行查看职能配置后的运行情况以验证配置成效 。

能够通过执行clear号令来断根各类信息 。

*    把稳

在设备运行过程中执行clear号令,可能由于沉要信息迷失而导致业务中断 。

 

表1-3     IPv6监督与守护

作用

号令

断根动态进建到的邻居 。

clear ipv6 neighbors [ vrf vrf-name ] [ oob ] [ interface-type interface-number ]

查看IPv6地址的信息

show ipv6 address [ interface-type interface-number ]

查看通用前缀中的前缀信息

show ipv6 general-prefix

查看IPv6 ND报文统计

show ipv6 nd [ interface interface-type interface-number ] statistics

查看IPv6邻居表的统计信息

show ipv6 neighbors [ vrf vrf-name ] statistics [ all ]

查看IPv6报文的统计信息

show ipv6 packet statistics [ total | interface-type interface-number ]

查看邻居的信息

show ipv6 neighbors [ vrf vrf-name ] [ verbose ] [ interface-type interface-number ] [ ipv6-address ] [ static ] [ oob ]

查看每个MAC地址的邻居表项的数量

show ipv6 neighbor statistics per-mac [ interface-type interface-number ] [mac-address]

查看所有IPv6原始套接字

show ipv6 raw-socket [ protocol ]

查看邻居路由器和路由布告信息

show ipv6 routers [ interface-type interface-number ]

查看所有IPv6套接字

show ipv6 sockets

查看所有IPv6 UDP套接字

show ipv6 udp [ local-port port-number ] [ peer-port port-number ]

查看IPv6 UDP套接字的统计信息

show ipv6 udp statistics

查看IPv6接口的信息

show ipv6 interface [ [ interface-type interface-number ] [ ra-info ] | brief [ interface-type interface-numbe ] ]

1.7?? 典型配置举例

1.7.1? 手动配置IPv6地址配置举例

1.    组网需要

Host AHost B能够通过IPv6地址进行通讯 。

2.    组网图

图1-18   IPv6地址配置组网图

image045

 

3.    配置重点

在接口上开启IPv6和谈,并配置IPv6地址 。

4.    配置步骤

(1)   配置Device A

# 配置接口GigabitEthernet 0/1IPv6地址,并允许在该接口上发送RA报文 。

DeviceA> enable

DeviceA# configure terminal

DeviceA(config)# interface gigabitethernet 0/1

DeviceA(config-if-GigabitEthernet 0/1)# ipv6 enable

DeviceA(config-if-GigabitEthernet 0/1)# ipv6 address 1000::1/64

DeviceA(config-if-GigabitEthernet 0/1)# no ipv6 nd suppress-ra

DeviceA(config-if-GigabitEthernet 0/1)# exit

# 配置接口GigabitEthernet 0/2IPv6地址,并允许在该接口上发送RA报文 。

DeviceA(config)# interface gigabitethernet 0/2

DeviceA(config-if-GigabitEthernet 0/2)# ipv6 enable

DeviceA(config-if-GigabitEthernet 0/2)# ipv6 address 2000::1/64

DeviceA(config-if-GigabitEthernet 0/1)# no ipv6 nd suppress-ra

DeviceA(config-if-GigabitEthernet 0/2)# exit

(2)   配置主机

# 配置Host AIPv6地址为1000::2/24 。

# 配置Host BIPv6地址为2000::2/24 。

5.    验证配置了局

# 使用show ipv6 interface能够看到接口增长IPv6地址成功 。

DeviceA# show ipv6 interface

 

interface GigabitEthernet 0/1 is Up, ifindex: 2, vrf_id 0

 address(es):

  Mac Address: 00:50:56:b0:05:99

  INET6: FE80::250:56FF:FEB0:599 , subnet is FE80::/64

  INET6: 1000::1 , subnet is 1000::/64

 Joined group address(es):

  FF01::1

  FF02::1

  FF02::2

  FF02::1:FF00:0

  FF02::1:FF00:1

  FF02::1:FFB0:599

 MTU is 1500 bytes

 ICMP error messages limited to one every 100 milliseconds

 ICMP redirects are enabled

 ND DAD is enabled, number of DAD attempts: 1

 ND reachable time is 30000 milliseconds

 ND stale time is 3600 seconds

 ND advertised reachable time is 0 milliseconds

 ND retransmit interval is 1000 milliseconds

 ND advertised retransmit interval is 0 milliseconds

 ND router advertisements are sent every 600 seconds<480--720>

 ND router advertisements live for 1800 seconds

 

interface GigabitEthernet 0/2 is Down, ifindex: 3, vrf_id 0

 address(es):

  Mac Address: 00:50:56:b0:05:9a

  INET6: FE80::250:56FF:FEB0:59A [ TENTATIVE ], subnet is FE80::/64

  INET6: 2000::1 [ TENTATIVE ], subnet is 2000::/64

 Joined group address(es):

 MTU is 1500 bytes

 ICMP error messages limited to one every 100 milliseconds

 ICMP redirects are enabled

 ND DAD is enabled, number of DAD attempts: 1

 ND reachable time is 30000 milliseconds

 ND stale time is 3600 seconds

 ND advertised reachable time is 0 milliseconds

 ND retransmit interval is 1000 milliseconds

 ND advertised retransmit interval is 0 milliseconds

 ND router advertisements are sent every 600 seconds<480--720>

 ND router advertisements live for 1800 seconds

# Host A上使用Ping测试和Host B的互通性 。

# Host B上使用Ping测试和Host A的互通性 。

6.    配置文件

Device A的配置文件

hostname DeviceA

!

interface gigabitethernet 0/1

ipv6 enable

ipv6 address 1000::1/64

no ipv6 nd suppress-ra

!

interface gigabitethernet 0/2

ipv6 enable

ipv6 address 2000::1/64

no ipv6 nd suppress-ra

!

1.7.2? 无状态自动获取IPv6地址配置举例

1.    组网需要

Device ADevice B相连,Device ADevice B相连的接口GigabitEthernet 0/1已配置了IPv6地址,现必要在Device B上配置无状态自动获取IPv6地址,以实现两台设备能够通过IPv6地址进行通讯 。

2.    组网图

图1-19   IPv6地址配置组网图

image047

 

3.    配置重点

l  Device A上配置IPv6地址 。

l  Device B上配置无状态自动获取IPv6地址 。

4.    配置步骤

(1)   配置Device A

# 配置接口GigabitEthernet 0/1IPv6地址,并允许在该接口上发送RA报文 。

DeviceA> enable

DeviceA# configure terminal

DeviceA(config)# interface gigabitethernet 0/1

DeviceA(config-if-GigabitEthernet 0/1)# ipv6 address 2000::1/64

DeviceA(config-if-GigabitEthernet 0/1)# no ipv6 nd suppress-ra

DeviceA(config-if-GigabitEthernet 0/1)# exit

(2)   配置Device B

DeviceB> enable

DeviceB# configure terminal

DeviceB(config)# interface gigabitethernet 0/1

DeviceB(config-if-GigabitEthernet 0/1)# ipv6 address autoconfig

5.    验证配置了局

# Device B上使用show ipv6 interface号令能够看到接口自动获取到IPv6地址 。

DeviceB# show ipv6 interface

 

interface GigabitEthernet 0/1 is Up, ifindex: 2, vrf_id 0

 address(es):

  Mac Address: 00:50:56:b0:2f:50

  INET6: FE80::250:56FF:FEB0:2F50 , subnet is FE80::/64

  INET6: 2000::250:56FF:FEB0:2F50 [ PRE ], subnet is 2000::/64

   valid lifetime 2591906 sec, preferred lifetime 604706 sec

 Joined group address(es):

  FF01::1

  FF02::1

  FF02::2

  FF02::1:FF00:0

  FF02::1:FFB0:2F50

 MTU is 1500 bytes

 ICMP error messages limited to one every 100 milliseconds

 ICMP redirects are enabled

 ND DAD is enabled, number of DAD attempts: 1

 ND reachable time is 30000 milliseconds

 ND stale time is 3600 seconds

 ND advertised reachable time is 0 milliseconds

 ND retransmit interval is 1000 milliseconds

 ND advertised retransmit interval is 0 milliseconds

 ND router advertisements are sent every 600 seconds<480--720>

 ND router advertisements live for 1800 seconds

 Hosts use stateless autoconfig for addresses.

# Device A上使用Ping测试和Device B的互通性 。

DeviceA# ping ipv6 2000::250:56FF:FEB0:2F50

Sending 5, 100-byte ICMP Echoes to 2000::250:56ff:feb0:2f50, timeout is 2 seconds:

 < press Ctrl+C to break >

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/13/63 ms.

# Device B上使用Ping测试和Device A的互通性 。

DeviceAB# ping ipv6 2000::1

Sending 5, 100-byte ICMP Echoes to 2000::1, timeout is 2 seconds:

 < press Ctrl+C to break >

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms.

6.    配置文件

l  Device A的配置文件

hostname DeviceA

!

interface gigabitEthernet 0/1

ipv6 enable

ipv6 address 2000::1/64

no ipv6 nd suppress-ra

!

l  Device B的配置文件

hostname DeviceB

!

interface gigabitEthernet 0/1

ipv6 address autoconfig

!

【网站地图】