基于GNS3的IPv4与IPv6互通实验教学设计
2013-11-26周国军刘爱民
周国军 刘爱民
1 玉林师范学院数学与信息科学学院 广西玉林 5370002 玉林师范学院教育技术中心 广西玉林 537000
1 引言
随着互联网技术的发展和互联网规模的不断扩大,IPv4已经面临地址空间不足、网络安全性不高、QoS无法保证等问题。为了从根本上解决这些问题,IETF提出了IPv6,经过十几年的研究和实验,目前IPv6已经进入商用部署阶段[1]。由于Internet上的大量设备使用IPv4,IPv6不可能在短时期内取代IPv4,为了实现IPv4向IPv6平稳过渡,保证IPv4和IPv6网络之间的互相通信是必须解决的问题[2]。目前解决IPv4向IPv6过渡问题的基本技术有双协议栈技术、隧道技术和协议翻译技术[3]。NAT-PT(Network Address Translation-Protocol Translation)是一种典型的协议翻译技术,NAT-PT设备完成IPv4/IPv6地址的转换,并对协议进行翻译,从而实现IPv4网络与IPv6网络的互相通信。
计算机网络是一门实践性很强的课程,结合理论教学开展实验是该课程教学中不可缺少的环节。由于网络设备价格昂贵,很多高校没有足够的硬件设备用于网络实验教学。在硬件设备缺乏的情况下,采用网络模拟软件搭建网络实验平台,不但可以解决实验室设备投入和需求之间矛盾,而且能提高实验教学的效率和质量[4]。GNS3是一款常见的图形化网络模拟软件,可以在Windows、Linux等系统下运行,能够模拟路由器、防火墙、交换机等网络设备。由于GNS3使用真实的Cisco IOS操作系统,使用该软件可以模拟复杂的网络环境,让学生体验与真实硬件平台相同的学习环境[5]。本文以NAT-PT技术为例,介绍如何在Windows系统下基于GNS3搭建实验环境,通过实验模拟IPv4与IPv6网络互相通信。
2 NAT-PT技术简介
NAT-PT是一种IPv4网络和IPv6网络之间直接通信的过渡方式[6],IPv4/IPv6地址转换和协议翻译由NAT-PT设备完成。其技术要点包括两个方面:一方面是NAT-PT设备向IPv6网络发布一个长度为96比特的IPv6前缀,该前缀与IPv4地址相拼接就是IPv4地址转换后的IPv6地址,IPv6主机使用转换后的IPv6地址访问IPv4网络;另一方面,NATPT设备为IPv6网络分配IPv4地址池,并维护IPv4和IPv6地址的映射关系,IPv4主机使用IPv4地址池中的地址访问IPv6网络,从而实现IPv4节点和IPv6节点之间的透明通信。
3 实验环境搭建
本文的实验在Windows系统下进行,下面介绍搭建实验环境的基本步骤。
1)下载、安装GNS3。在GNS3的官方网站(http://www.gns3.net)下载最新版本的安装程序,采用默认的安装方式,把 WinPcap、Wireshark、Dynamips、Pemu、VPCS、GNS3 等组件安装到计算机中。
2)配置IOS。GNS3没有提供Cisco IOS映像文件,需要从其他途径获取。启动GNS3后,选择“Edit”菜单下的“IOS images and hypervisors”,在打开的对话框中单击“Image files”右边的按钮,选择已准备好的IOS映像文件,单击“打开”按钮返回对话框,再单击“save”按钮保存配置。本文的实验使用的IOS映像文件为c3745-advipservicesk9-mz.124-3c.bin。
3)为路由器选择一个合适的IDLE PC值。一个合适的IDLE PC值可以有效地降低IOS消耗的CPU资源。以路由器R1为例,操作过程:从GNS3图形窗口的Node Types区拖动1台Router c3700(命名为R1)到工作区,单击工具栏上的“Start/Resume”按钮启动路由器;右键单击R1图标,选择“Idle PC”菜单项,GNS3将自动计算IDLE PC值并列出多个选项,选择带“*”标注的选项,单击“OK”按钮保存IDLE PC值。
4)为主机配置NIO_udp接口。本文的实验采用VPCS软件模拟主机,VPCS软件中的虚拟PC机使用UDP端口号与GNS3的主机进行通信。其中,第1台虚拟PC机(VPCS[1])默认的UDP本地端口号、远程端口号分别为20000、30000,第2台虚拟PC机(VPCS[2])默认的UDP本地端口号、远程端口号分别为20001、30001,依此类推。以PC1为例,为PC1配置NIO_udp接口的过程:拖动1台Host(命名为PC1)到工作区,右键单击PC1图标,选择“Configure”菜单项,在打开的对话框中单击“PC1”结点,再单击“NIO UDP”选项卡,在Local port栏输入30000,在Remote port栏输入20000,分别单击“Add”“OK”按钮为PC1上添加一个NIO_udp接口。
4 实验拓扑结构及IP地址规划
根据NAT-PT技术的基本要点设计实验拓扑结构。使用的设备包括:1台型号为c3700的路由器(命名为R1)用于模拟NAT-PT设备,2台以太网交换机(命名为S1、S2)用于模拟IPv4、IPv6网络,2台主机(命名为PC1、PC2)用于模拟IPv4、IPv6主机。其中,R1的f0/0接口与S1相连,R1的f0/1接口与S2相连。2台主机使用NIO_udp接口分别与S1、S2相连。实验拓扑图如图1所示。给路由器和主机分配的IP地址如表1所示。
表1 路由器接口与主机IP地址分配表
5 实验步骤及测试
5.1 实验操作步骤
1)按照图1在GNS3图形窗口中建立实验拓扑图。
2)对路由器R1进行配置,包括三个方面的配置内容:
①给接口f0/0、f0/1分配IP地址,并启用接口的NATPT功能:
5.2 实验测试与分析
1)执行命令R1# show ipv6 nat translation,结果表明路由器R1的NAT-PT表中还没有IPv4与IPv6的转换条目。因此,此时IPv4主机无法访问IPv6主机,但是IPv6主机可以访问IPv4主机,把IPv4主机的32位IPv4地址与96位IPv6前缀相拼接,就得到了转换后的IPv6地址。例如,PC1的地址为192.168.11.2,IPv6前缀为2013:1111::/96,则转换后的IPv6地址为2013:1111::c0a8:b02。可见,采用动态NAT-PT,通信只能由IPv6主机发起。
2)PC2 上 ping PC1,即:VPCS[2]>ping 2013:1111::c0a8:b02。然后执行命令R1# show ipv6 nat translation,结果如图2所示。结果表明,ping命令创建了一条转换条目,该条目列出了PC2的IPv6地址转换后的IPv4地址(即为192.168.12.1),该地址是路由器R1按照IPv4地址池的地址范围给PC2动态分配的。
3)PC1使用PC2转换后的IPv4地址去访问PC2,在PC1上ping PC2,即:VPCS[1]> ping 192.168.12.1。结果如图3所示,表明PC1与PC2能够互相通信。
4)执行命令R1# show ipv6 nat translation,查看R1的NAT-PT表,结果如图4所示。结果表明,路由器R1已经为PC1、PC2建立IPv4/IPv6的映射关系。路由器按照NATPT表转发IP分组,从而实现IPv4与IPv6网络的互相通信。
6 结语
随着IPv6网络的逐步部署,掌握IPv4向IPv6过渡技术是很重要的。本文使用GNS3模拟软件搭建网络实验环境,解决了因缺乏网络设备而无法开展IPv6实验教学的问题。设计一个IPv4与IPv6网络互相通信的实验教学案例,通过对NAT-PT设备(路由器)进行配置和对实验进行测试,使学生理解NAT-PT技术的基本要点和IPv4/IPv6互相通信的基本原理。在玉林师范学院信计、信管专业的计算机网络实验教学中,大多数学生能够在2课时内完成该实验,取得很好的实验教学效果。
[1]仝亚鹏,李振强,魏冰.IPv6过渡技术分析[J].电信科学,2011(1):52-59.
[2]王晓峰,吴建平,崔勇.互联网IPv6过渡技术综述[J].小型微型计算机系统,2006,27(3):385-394.
[3]毕军,王优,冷晓翔.IPv6过渡研究综述[J].电信科学,2008(10):12-21.
[4]续志学.关于高等院校建立虚拟教学实验室网络平台的探讨[J].中国教育技术装备,2011(18):124-126.
[5]彭春燕,刘兵.GNS3在计算机网络课程教学中的应用[J].学理论,2010(20):292-293.
[6]梁广民,王隆杰.思科网络实验室CCNP(路由技术)实验指南[M].北京:电子工业出版社,2012:324-325.