IPV6试验网络组建实验指导书.doc
IPV6试验网络组建V1.0实验指导书上海建桥学院信息技术系上海建桥学院信息图文中心编者 王帅、阮鹏、蒋中云、江圣扬2008年4月15日目录1.引言12.实验主要内容:13.实验过程23.1.实验一 Windows xp IPv6的环境配置23.2.实验二 双协议栈技术33.3.实验三 Ipv6协议分析43.4.隧道技术实验113.4.1.实验四 IPv6-over-IPv4手动隧道113.4.2.实验五 IPv6 to IPv4自动隧道193.4.3.有关于隧道技术的后续资料253.5.实验六 IPV6静态路由263.6.实验七 IPV6动态路由303.7.实验八 IPv6访问控制列表343.8.实验九 IPv6在WEB上的应用374.主要参考书籍:381. 引言随着Internet 用户的迅速增加,网络地址不足的危机日益严重。按目前入网主机的增长速度,预计到2005 年左右IP 地址将被耗尽。Internet 面临的另一个问题是路由表规模的急剧膨胀。到21 世纪90 年代末将达到极限,如不采取措施可能在IP 地址枯竭之前就会导致网络瘫痪。正是在这一背景下提出了新一代的Internet 协议IPv61 。2. 实验主要内容:Windows xp IPv6的环境配置隧道技术 IPv6静态路由 IPv6动态路由OSPFV3 IPV6基本协议分析 IPv6访问控制列表IPv4/6S双协议栈 3. 实验过程3.1. 实验一 Windows xp IPv6的环境配置【实验名称】Windows xp IPv6 环境配置。【实验目的】通过IPv6环境配置实验,了解在windows xp 系统上如何配置IPv6 IP地址;查看端口信息;【实验设备】PC系统 WINDWOS XP SP1以上版本。【实验步骤】1) 安装XP IPV6的补丁可在CMD控制台下使用 c:>ipv6 install命令来完成安装,步骤如图 1所示。图 12)查看端口信息命令为 ipv6 if 一般情况下通过此命令可以看到如下情况:显示结果如图3,图4所示 图 3 图 4其中 INTERFACE 4是本地的实际端口,其他三个都是虚拟端口,值得注意的是INTERFACE 2,它是AUTO-TUNNEL的端口,在做介入配置中我们要用到。3)设置固定的IPV6地址c:>netshnetsh>interface ipv6netsh interface ipv6>add address “本地连接” 2001:251:e101:0:2 配置方法如图 5所示。netsh interface ipv6>add dns "本地连接" 2001:251:e101:0:2 /* 设定IPv6 DNS地址 */配置方法如图 6所示 图 5 图63.2. 实验二 双协议栈技术1. 双协议栈要求网络节点同时支持IPv4和IPv6协议栈,但在具体实现上又有不同的方式和应用场景,当前主要的双栈技术有基本双栈技术和有限双栈技术以及正在发展的DSTM(Dual Stack Transition Model,双栈翻译机制)技术。采用IPv6/IPv4双协议栈是主要的过度机制,支持双协议栈的主机其IP层将既支持IPv4又支持IPv6。对网络中端来说,双协议栈是保证能对IPv4和IPv6同时进行访问的关键。实现IPv6节点与IPv4节点互通的最直接的方式是使IPv6节点同时支持IPv4协议栈。"IPv6/IPv4节点"是具有双协议栈的节点,这个节点既可以收发IPv4数据包,也可以收发IPv6数据报。在实践当中,最典型的是IETF提出的叫"双协议栈"的方案。需要提前说明的是,双协议栈技术并不具备创建隧道的能力;但是,后面提到的创建隧道的能力则必须要求有双协议栈技术的支持。2. 双协议栈方案的工作方式如下:(1) 如果应用程序使用的目的地址是IPv4地址,则使用IPv4协议。(2) 如果应用程序使用的目的地址是IPv6中的IPv4兼容地址,则同样使用IPv4协议,所不同的是,此时IPv6就封装(encapsulated)在IPv4当中。 (3) 如果应用程序使用的目的地址是一个非IPv4兼容的IPv6地址,那么此时将使用IPv6协议,而且很可能此时要采用隧道等机制来进行路由、传送。(4) 如果应用程序使用域名来作为目标地址,那么此时先要从DNS服务器那里得到相应的IPv4/IPv6地址,然后根据地址的情况进行相应的处理。对目前的环境来说,要实现纯粹IPv6的路由是很困难的,因此,人们一般采用IPv6 over IPv4 的点对点隧道技术。将IPv6分组打包,放入IPv4分组的数据区,加上IPv4的报头,在IPv4互联网世界中进行路由,到达目的地后再把数据区中的IPv6分组取出来作相应的处理,该继续路由的路由,该收发的收发。这样,就可以实现"双协议栈"的过渡方案。 最后,对于实现IPv6协议栈,尽管在细节上,IPv6和IPv4有很大的不同,但是从原理和它们在网络体系结构中的位置来看,是相当的一致的。这些一致使得开发人员只需要很小的付出就可以实现从IPv4到IPv6协议栈的转换。4. IPv6过渡技术IPv6/IPv4双栈技术: 双栈技术是IPv4向IPv6过渡的基础,所有其它的过渡技术都以此为基础。双栈节点与IPv4节点通讯时使用IPv4协议栈,与IPv6节点通讯时使用IPv6协议栈。网络中的节点同时支持IPv4和IPv6协议栈,源节点根据目的节点的不同选用不同的协议栈,而网络设备根据报文的协议类型选择不同的协议栈进行处理和转发。双栈可以在一个单一的设备上实现,也可以是一个双栈骨干网。对于双栈骨干网,其中的所有设备必须同时支持IPv4/IPv6协议栈,连接双栈网络的接口必须同时配置IPv4地址和IPv6地址。双栈节点示意图:5. 双栈节点具有三种工作模式:只运行IPv6协议,表现为IPv6节点;只运行IPv4协议,表现为IPv4节点;双栈模式,同时打开IPv6和IPv4协议。6. 怎样配置双协议栈交换机上关键命令:S3760(config)#interface f 0/1S3760(config-if)#ipv6 enableS3760(config-if)#no switchportS3760(config-if )#ip address 172.16.3.1S3760(config-if )#ipv6 address 1:1/64S3760(config-if)#no ipv6 nd suppress-ra3.3. 实验三 Ipv6协议分析【实验名称】Ipv6协议分析【实验目的】抓取ipv6数据包,并分析其协议【背景描述】 IPv6数据包由一个IPv6基本报头、多个扩展报头和一个上层协议数据单元组成,每个IPv6数据包的基本报头长度固定为40字节。IPv6数据包可以包含一个或多个扩展报头,也可以没有扩展报头,这些扩展报头可以具有不同的长度。上层协议数据单元一般由上层协议报头和它的有效载荷构成,有效载荷可以是一个ICMPv6报文、一个TCP报文或一个UDP报文。【实验拓扑】【实验设备】双协议栈交换机RG-S3760-48 1台 ipv6 PC 1台 【实验步骤】基于ipv6地址,使用sniffer软件抓取ipv6数据包对其协议进行分析。以下为本次实验的实验步骤。步骤一:安装sniffer软件1、双击图1-1中的图标运行sniffer安装程序 图1-12、单击“Next”进入安装步骤(如图1-2); 3、单击“Next”进入版权声明页面(如图1-3); 图1-2 图1-34、单击“Yes” 进入输入用户名页面(如图1-4);5、单击“Next”进入选定安装路径页面(如图1-5); 图1-4 图1-56、在选择sniffer pro的安装目录时,默认是安装在c:program filesnaisnifferNT目录中,我们可以通过旁边的Browse按钮修改路径,单击“Next”进入选定安装路径页面(如图1-6、1-7); 图1-6 图1-77、然后进入设置页面,首先是注册信息设置(如图1-8、1-9、1-10)。 在注册用户时,注册信息随便填写即可,不过EMAIL一定要符合规范,需要带“”。 图1-8 图1-9图1-10 8、注册诸多数据后我们就来到设置网络连接状况了,一般对于企业用户只要不是通过“代理服务器”上网的都可以选择第一项direct connection to the internet。(如图1-11、1-12、1-13) 图1-11 图1-12图1-139、由于我们在使用sniffer pro时需要将网卡的监听模式切换为混杂,所以不重新启动计算机是无法实现切换功能的,因此在安装的最后,软件会提示重新启动计算机,我们按照提示操作即可。(如图1-14)图1-14步骤二:运行sniffer软件1、在“开始”>“所有程序”>“sniffer”里选择运行sniffer软件。(如图1-15、1-16) 图1-15 图1-162、设置sniffer抓包范围及数据包保存路径(如图1-17) 图1-17步骤三:抓取IPv6数据包1、 在定义数据包类型时候选择“IPV6数据包”2、选择抓取后的IPV6数据包保存的路径(如图1-18、1-19)3、按start就可以开始抓取ipv6数据包了。(如图1-20) 图1-18 图1-19图1-20 【协议分析】基于IPv6地址,使用Sniffer软件抓取了部分数据包,以下进行简单的分析。 IPv6数据包由一个IPv6基本报头、多个扩展报头和一个上层协议数据单元组成,每个IPv6数据包的基本报头长度固定为40字节。IPv6数据包可以包含一个或多个扩展报头,也可以没有扩展报头,这些扩展报头可以具有不同的长度。上层协议数据单元一般由上层协议报头和它的有效载荷构成,有效载荷可以是一个ICMPv6报文、一个TCP报文或一个UDP报文。 首先分析一个IPv6基本报头。 首先是IP协议版本(Version),它的值是6,长度是4。 然后是通信流类别(Traffic Octet),它与IPv4中的服务类型相似,长度是8。接下来两段是Traffic Octet的内容。 流标签(Flow Lable),它用来标识这个数据包属于源节点和目标节点之间的一个特定数据包序列,它需要中间路由器进行特殊处理。该字段长度为20,目前这个字段未定义。 有效载荷长度(Payload Length),有效载荷是指紧跟IPv6报头的数据包的其他部分,该字段长16位,那么该字段只能表示最大长度为65535字节的有效载荷。如果有效载荷超过了这个值,该字段会置0,而有效载荷的长度用逐跳选项扩展报头中的超大有效载荷选项来表示。 下一个报头(Next Header)定义了紧跟在IPv6报头后面的第一个扩展报头(如果存在)的类型,或者上层协议数据单元中的协议类型,长度为8,这里它的值是58,表示没有扩展报头,而且上一层协议是ICMPv6。 跳限制(Hop Limit),类似IPv4中的TTL字段,它定义了IP数据包所能经过的最大跳数,每经过一个路由器,该数值减去1,当该字段的值为0时,数据包将被丢弃。该字段长度为8。 最后是各128位的源地址和目标地址。 下面分析一对ICMPv6的echo request和echo reply报文。 Echo Request报文和Echo Reply报文属于ICMPv6信息报文。它们的第一个字段是类型,然后是代码字段。标志符字段和序列号字段由发送方主机设置,用于将即将收到的两种报文进行匹配。 在IPv6中取消了ARP协议,IPv6中的无状态地址配置、地址解析、重复地址检测、路由器发现、重定向以及邻居不可达性检测均属于IPv6 邻居发现协议(Neighbor Discovery)协议的功能范畴。ND协议主要利用如下五个消息实现这些功能: Router Solicitation Router Advertisement Neighbor Solicitation Neighbor Advertisement Redirect 所有这些消息都承载在ICMPv6消息中,分别对应不同的ICMP Type。与ARP技术不同,ND协议的传输协议ICMPv6工作在第三层,这可以使用三层的组播技术将来限制报文的传输范围,无需将地址检测报文广播发送,仅需发送到待检测地址所在的组播组即可。 以下分析其中的两种报文。 首先是Neighbor Solicitation报文。 这是一个Neighbor Solicitation报文,目标地址是一个特殊的组播地址(Solicited-Node地址),它是一个本地链路范围的地址,主要用于重复地址检测和获取邻居节点的链路层地址。Hop Limit字段值为255,主要是为了防止一跳以外的节点全国伪造ND报文,因为对于- 跳以外的节点,不管初始Hop Limit值为多少,接收节点所收到的ND报文的Hop Limit字段都不可能是255。 Neighbor Solicitation的ICMPv6类型是135,它的Target Address域此时所填的是主机准备使用的IPv6地址,这个地址被称作是试验地址(tentative address)。如果对方接收者发现这个地址也是自己的tentative地址,那它将放弃使用这个地址,也不会发送任何回应消息。如果对方接收者发现这个地址是一个自己已经使用的地址,那么它将向地址所在的Solicited-Node组播组发送一人Neighbor Advertisement消息,其中的Target Address 域会包含这个地址,这样Solicitation的发起者就知道它的tentative address是重复的,从而弃用该地址。 下面看一个Neighbor Advertisement报文。 这个报文是路由器发出的Neighbor Advertisement报文,其中源地址是路由器本身的地址,目标地址仍然是Solicited-Node地址。 Neighbor Advertisement报文的ICMPv6类型是136。其中的R/S/O 三个标志位,告诉了我们这个消息是由一个路由器所发,这个消息并不是为了回应某个Neighbor Solicitation报文,它是用来更新主机的第二层地址。 在后面的Target Address域中给出了自己的IPv6地址,并且在后面的选项字段中给出了链路层地址。3.4. 隧道技术实验3.4.1. 实验四 IPv6-over-IPv4手动隧道【实验名称】IPv6-over-IPv4手动隧道【实验目的】在IPv4和IPv6之间建立隧道【实验知识】手动隧道技术简介:这种隧道的建立是手工配置的,需要隧道两个端点所在网络的管理员协作完成。隧道的端点地址由配置来决定,不需要为站点分配特殊的IPv6地址,适用于经常通信的IPv6站点之间。每一个隧道的封装节点必须保存隧道终点的地址,当一个IPv6包在隧道上传输时终点地址会作为IPv4包的目的地址进行封装。通常封装节点要根据路由信息决定一个包是否要通过隧道转发。采用手工配置隧道进行通信的站点之间必须有可用的IPv4连接,并且至少要具有一个全球唯一的IPv4地址。站点中每个主机都至少需要支持IPv6,路由器需要支持双栈。在隧道要经过NAT设施的情况下这种机制不可用。手工配置隧道的主要缺点是网络管理员的负担很重,因为他要为每一条隧道做详细的配置。【拓扑结构】 F0/1:172.16.2.2F0/1:172.16.2.1F0/124172.16.3.2F0/1:3:1/64F0/24:1:1/64PC1(Winxp)IPv6:1:2/64PC2(Winxp)IPv6:3:2/64F0/2:IPv6: 2:2/64F0/2:IPv6: 2:1/64S3760-1S3760-2S3760-3图1F0/124172.16.3.1【实验设备】RG-S3760 交换机3台,windows xp pc机2台,直通双绞线4条【实验过程】1. 配置交换机1) 配置交换机s3760-1端口f 0/1S3760-1(config)# interface fast 0/1S3760-1(config-if)# no switchportS3760-1(config-if)# ip address 172.16.2.1 255.255.255.0S3760-1(config-if)# no shutdownS3760-1(config-if)# exit(如图1-1)2) 配置交换机s3760-1端口f 0/24S3760-1(config-if)# interface fast 0/24S3760-1(config-if)# no switchportS3760-1(config-if)# ipv6 address 1:1/64S3760-1(config-if)# ipv6 enableS3760-1(config-if)# no ipv6 nd suppress-raS3760-1(config-if)# no shutdownS3760-1(config-if)# exitS3760-1(config)# end(如图1-2) 图1-1 图1-23) 查看交换机s3760-1的配置S3760-1# show ip interface(如图1-3)S3760-1# show ipv6 interface(如图1-4) 图1-3 图1-44) 配置交换机s3760-2端口f 0/1S3760-2(config)# interface fast 0/1S3760-2(config-if)# no switchportS3760-2(config-if)# ip address 172.16.2.2 255.255.255.0S3760-2(config-if)# no shutdownS3760-2(config-if)# exit(如图1-5)5) 配置交换机s3760-2端口f 0/24S3760-2(config-if)# interface fast 0/24S3760-2(config-if)# no switchportS3760-2(config-if)# ip address172.16.3.1 255.255.255.0S3760-2(config-if)# no shutdownS3760-2(config-if)# exitS3760-2(config)# end(如图1-6) 图1-5 图1-66) 查看交换机s3760-2的配置S3760-2# show ip interface(如图1-7)S3760-2# show ipv6 interface(如图1-8、1-9) 图1-7 图1-8图1-97) 配置交换机s3760-3端口f 0/1S3760-3(config-if)# interface fast 0/1S3760-3(config-if)# no switchportS3760-3(config-if)# ipv6 address 3:1/64S3760-3(config-if)# ipv6 enableS3760-3(config-if)# no ipv6 nd suppress-raS3760-3(config-if)# no shutdownS3760-3(config-if)# exit(如图1-10)8) 配置交换机s3760-3端口f 0/24S3760-3(config-if)# interface fast 0/24S3760-3(config-if)# no switchportS3760-3(config-if)# ip address172.16.3.1 255.255.255.0S3760-3(config-if)# no shutdownS3760-3(config-if)# exitS3760-3(config)# end(如图1-11) 图1-10 图1-119) 查看交换机s3760-3的配置S3760-3# show ip interface(如图1-12)S3760-3# show ip interface(如图1-13、1-14)图1-12 图1-13 图1-142配置PC端口1) 配置PC 1C:>netshnetsh>int netsh interface>ipv6netsh interface ipv6>add address “ 测试” 1: :2(如图2-1)2) 配置PC 2C:>netshnetsh>int netsh interface>ipv6netsh interface ipv6>add address “ 测试” 3: :2(如图2-2) 图2-1 图2-23配置隧道1) 配置S3760-1上的隧道S3760-1(config)# interface tunnel 0S3760-1(config-if)# tunnel source 172.16.2.1S3760-1(config-if)# tunnel destination 172.16.3.2S3760-1(config-if)# ipv6 address 2:1/64S3760-1(config-if)# exit(如图3-1)2) 查看S3760-1上的隧道S3760-1# show interfaces tunnel 0(如图3-2) 图3-1 图3-23) 配置S3760-3上的隧道S3760-3(config)# interface tunnel 0S3760-3(config-if)# tunnel source 172.16.3.2S3760-3(config-if)# tunnel destination 172.16.2.1S3760-3(config-if)# ipv6 address 2:2/64S3760-3(config-if)# exit(如图3-3)4) 查看S3760-3上的隧道S3760-3# show interfaces tunnel 0(如图3-4) 图3-3 图3-44配置交换机上的路由1) 配置S3760-1上的路由S3760-1(config)# ip route 0.0.0.0 0.0.0.0 172.16.2.2S3760-1(config)# ipv6 route : :/0 2: :2S3760-1(config)# end(如图4-1)2) 查看S3760-1上的路由S3760-1#show ip route(如图4-2) 图4-1 图4-23) 配置S3760-2上的路由S3760-2(config)# ip route 0.0.0.0 0.0.0.0 172.16.3.2S3760-2(config)# end(如图4-3)4) 查看S3760-2上的路由S3760-2# show ip route(如图4-4) 图4-3 图4-45) 配置S3760-3上的路由S3760-3(config)# ip route 0.0.0.0 0.0.0.0 172.16.3.2S3760-3(config)# ipv6 route :/0 2:1S3760-3(config)# end(如图4-5)6) 查看S3760-3上的路由S3760-3# show ip route(如图4-6) 图4-5 图4-65查看主机连通性PC1 ping PC2 C:>ping 1:2 (如图5-1)PC2 ping PC1 C:>ping 1:2 (如图5-2) 图5-1 图5-23.4.2. 实验五 IPv6 to IPv4自动隧道【实验名称】IPv6 Automatic 6to4 Tunnel 自动隧道【实验目的】在IPv4和IPv6之间建立隧道【实验知识】自动隧道技术简介:这种隧道的建立和拆除是动态的,它的端点根据分组的目的地址确定,适用于单独的主机之间或不经常通信的站点之间。自动配置的隧道需要站点采用IPv4兼容的IPv6地址,这些站点之间必须有可用的IPv4连接,每个采用这种机制的主机都需要有一个全球唯一的IPv4地址。采用这种机制不能解决IPv4地址空间耗尽的问题(采用手工配置隧道的站点就不需要IPv4地址)。另外还有一种危险就是如果把Internet上全部IPv4路由表包括到IPv6网络中,那么会加剧路由表膨胀的问题。这种隧道的两个端点都必须支持双协议栈(手工配置就不需要)。在隧道要经过NAT设施的情况下这种机制不可用。F0/24:1:1/64F0/2461.16.3.1 【拓扑结构】 F0/1:61.16.2.1F0/2461.16.3.2F0/1:3:1/64PC1(Winxp)IPv6:1:2/64PC2(Winxp)IPv6:3:2/64S3760-1S3760-2S3760-3图1【实验设备】RG-S3760 交换机3台,windows xp pc机2台,直通双绞线4条【实验过程】1. 配置交换机1) 配置交换机s3760-1端口f 0/1S3760-1(config)# interface fast 0/1S3760-1(config-if)# no switchportS3760-1(config-if)# ip address 61.16.2.1 255.255.255.0S3760-1(config-if)# no shutdownS3760-1(config-if)# exit(如图1-1)2) 配置交换机s3760-1端口f 0/24S3760-1(config-if)# interface fast 0/24S3760-1(config-if)# no switchportS3760-1(config-if)# ipv6 address 1:1/64S3760-1(config-if)# ipv6 enableS3760-1(config-if)# no ipv6 nd suppress-raS3760-1(config-if)# no shutdownS3760-1(config-if)# exitS3760-1(config)# end(如图1-2) 图1-1 图1-23) 查看交换机s3760-1的配置S3760-1# show ip interface(如图1-3)S3760-1# show ipv6 interface(如图1-4) 图1-3 图1-44) 配置交换机s3760-2端口f 0/1S3760-2(config)# interface fast 0/1S3760-2(config-if)# no switchportS3760-2(config-if)# ip address 61.16.2.2 255.255.255.0S3760-2(config-if)# no shutdownS3760-2(config-if)# exit(如图1-5)5) 配置交换机s3760-2端口f 0/24S3760-2(config-if)# interface fast 0/24S3760-2(config-if)# no switchportS3760-2(config-if)# ip address61.16.3.1 255.255.255.0S3760-2(config-if)# no shutdownS3760-2(config-if)# exitS3760-2(config)# end(如图1-6)6) 查看交换机s3760-2的配置S3760-2# show ip interface(如图1-7) 图1-5 图1-6图1-77) 配置交换机s3760-3端口f 0/1S3760-3(config-if)# interface fast 0/1S3760-3(config-if)# no switchportS3760-3(config-if)# ipv6 address 3:1/64S3760-3(config-if)# ipv6 enableS3760-3(config-if)# no ipv6 nd suppress-raS3760-3(config-if)# no shutdownS3760-3(config-if)# exit(如图1-8)8) 配置交换机s3760-3端口f 0/24S3760-3(config-if)# interface fast 0/24S3760-3(config-if)# no switchportS3760-3(config-if)# ip address 61.16.3.2 255.255.255.0S3760-3(config-if)# no shutdownS3760-3(config-if)# exitS3760-3(config)# end(如图1-9) 图1-8 图1-99) 查看交换机s3760-3的配置S3760-3# show ip interface(如图1-10)S3760-3# show ip6 interface(如图1-11、1-12) 图1-10 图1-11图1-122配置隧道1) 配置S3760-1上的隧道S3760-1(config)# interface tunnel 0S3760-1(config-if)# tunnel mode ipv6ip 6to4S3760-1(config-if)# tunnel source f 0/1S3760-1(config-if)# ip