论文部分内容阅读
摘要:在高校计算机网络教学中,基于IPv6的实验是一个尤为重要的课程。IPv6替代IPv4已成必然,其中双协议栈和隧道技术是两种成熟的过渡技术。主要探讨如何通过实验,让学生了解并理解两种过渡技术的工作机制。
关键词:IPv4;IPv6;双协议栈;隧道;网络课程
作者简介:彭春燕(1980-),女,山东菏泽人,青海师范大学计算机学院,讲师。(青海 西宁 810008)
中图分类号:G642.42 文献标识码:A 文章编号:1007-0079(2011)14-0138-02
现有的互联网采用IPv4协议[1]作为核心协议,IPv4定义的有限地址空间将影响互联网的进一步发展。为解决地址空间限制、安全、服务质量等问题,IETF(互联网工作任务组)在20世纪90年代中期制定IPv6[2]协议标准作为下一代互联网核心协议。IPv6除对地址空间进行扩展以外,其还对IPv6地址的结构重新作了定义,采用与IPv4中使用的CIDR类似的方法分配地址,提供自动配置以及对移动性、安全性等更好地支持。因此,IPv6替代IPv4已成必然。但由于多方面的原因,IPv6不可能在短时间内取代IPv4,两者将长期共存,在此期间,必须保证IPv4和IPv6具有互操作性。
在高校的计算机网络实验课中,很多相关的实验指导书中众多实验都是基于单纯的IPv6协议的,以前与IPv4有关的实验都转换为IPv6来实现相同的功能,验证IPv6的可行性,但很少有实验内容专门来验证IPv4向IPv6过渡技术的可行性。本文主要探讨了在计算机网络实验课中如何布置实验平台来验证两种过渡技术的可靠性。
一、IPv4向IPv6过渡的基本策略
1.双协议栈
所谓双协议栈,就是主机上同时运行IPv4和IPv6两套协议,同时支持两套协议工作方式。目前,双栈是运行最广泛的迁移机制,不过双栈只允许相同IP版本之间的通信,即IPv4和IPv4之间的通信或者IPv6和IPv6之间的通信。对于不同版本的通信就要用到协议转换,利用转换网关在IPv4和IPv6网络之间转换IP报头的地址,同时根据协议不同对分组做相应的语义翻译,从而使纯IPv4和纯IPv6站点之间能够透明通信。双协议栈模型如图1所示。
应用程序
图1 双协议栈模型
2.隧道技术
隧道是通过在一种协议中承载另一种协议,实现跨越不同域的互通,隧道技术只要求在隧道的入口和出口处进行修改,对其他部分没有要求,如图2所示就是在IPv4中封装IPv6所形成的隧道。
隧道的类型取决于由何种设备封装及由何种设备来解包。路由器—路由器隧道,用于连接被IPv4网隔离的两个IPv6网的连接;主机—路由器隧道用于独立的双IP主机通过双IP路由器与IPv6网进行通信;路由器—主机隧道用于将独立IPv6或IPv4节点与IPv6网络隔离;主机—主机隧道用于将相互独立的IPv6/IPv4节点通过IPv4网相互通信,此时两个双IP节点作为隧道的端节点通过IPv4网进行通信。
二、两种策略在计算机网络实验课程教学中的实现
1.双协议栈实验的实现
(1)在linux系统上运行IPv6协议栈。Linux Red Hat7.2对IPv6有很好的支持,在系统启动后运行命令modprobe ipv6 就可以将IPv6协议栈加载,此时可以通过lsmod|grep-w ’ipv6’来验证IPv6是否被成功的加载。
(2)在Windows 2000上运行IPv6协议栈。Windows 2000起初并不带有IPv6的协议栈,需要下载补丁SP2 for IPv6。在cmd命令提示符下做如下的具体设置。
1)ipv6 rtu 2002::/16 2,该命令指明所有的带有2002开头的地址将从2口发出。
2)ipv6 adu 2/2000:ca90:1d92::ca70:1d92,该命令设置IPv6地址。
3)ipv6 ::/0 2/::202.255.45.5 pub lifetime 7200,该命令用来设置路由,其中::202.255.45.5是一个6to4服务器。
(3)在Windows XP上运行IPv6协议栈。微软公司在其操作系统Windows XP中已加入了对IPv6的支持,如果要使用IPv6,则在cmd命令行提示下输入:ipv6 install,待安装完成后就可使用IPv6了,此时的系统就相当于双协议栈既支持IPv4也支持IPv6。
2.隧道技术实验的实现
在IPv4网络中,许多路由器不支持IPv6,若采用隧道技术就可使得两个IPv6主机通过IPv4路由器互连。可以简单让学生先按照如图3所示的拓扑图搭建实验平台。
图3中,路由器不支持IPv6,所以它也不能转发IPv6的数据包,PC1和PC2要传输IPv6的数据就必须通过IPv4的隧道进行通信。
首先配置好PC1和PC2的IPv6地址,并且按照实际IPv4网络情况,配置好网络接口的IPv4地址。
其次,需要分别为PC1和PC2配置隧道,两隧道的端地址为PC1和PC2的IPv4地址,而两个隧道的sit1端和sit2端的IPv6的地址为:3ffe:3208:1000::1/64和3ffe:3208:1000::2/64。在PC1上执行的配置命令如下:
iptunnel add sit1 remote 202.112.29.32 local any ttl 255
ifconfig sit1 up
ifconfig sit1 add 3ffe:3208:1000::1/64
route –A inet6 add 3ffe:3208:1000::2/64 sit1
最后,依照 PC1的配置,在PC2上也执行相对应的配置命令后,学生机就可使用ping6命令相互ping对方,如能ping出则显示互通成功。
三、结束语
从IPv4向IPv6的转换是一个相当长的过渡时期,在此过渡期间需要IPv4与IPv6共存,并要解决好互相兼容的问题,通过这一过渡,最终实现IPv6全球Internet。通过本文提出的实验,学生可以更深刻的理解这一问题,并亲自动手使其能相互兼容,并且通过实验对两种策略的概念及具体实施有了更为清晰和深刻的理解。
参考文献:
[1]RFC 791, Internet protocol[S].
[2]RFC 2460, Internet protocol, version 6(IPv6)[S].
[3]钱德沛.计算机网络实验教程[M].北京:高等教育出版社,2005.
[4]谢希仁.计算机网络[M].大连:大连理工大学出版社,2000.
[5]邓増涛,黄超.linux与X Windows 系统基础[M].北京:电子工业出版社,2002.
[6]李文正.下一代计算机网络技术[M].北京:中国水利水电出版社,2008.
[7]兰晓红.《计算机网络》教学模式改革探讨[J].重庆师范学院学报(自然科学版),2002,19(4): 84-88.
(责任编辑:苏宇嵬)
关键词:IPv4;IPv6;双协议栈;隧道;网络课程
作者简介:彭春燕(1980-),女,山东菏泽人,青海师范大学计算机学院,讲师。(青海 西宁 810008)
中图分类号:G642.42 文献标识码:A 文章编号:1007-0079(2011)14-0138-02
现有的互联网采用IPv4协议[1]作为核心协议,IPv4定义的有限地址空间将影响互联网的进一步发展。为解决地址空间限制、安全、服务质量等问题,IETF(互联网工作任务组)在20世纪90年代中期制定IPv6[2]协议标准作为下一代互联网核心协议。IPv6除对地址空间进行扩展以外,其还对IPv6地址的结构重新作了定义,采用与IPv4中使用的CIDR类似的方法分配地址,提供自动配置以及对移动性、安全性等更好地支持。因此,IPv6替代IPv4已成必然。但由于多方面的原因,IPv6不可能在短时间内取代IPv4,两者将长期共存,在此期间,必须保证IPv4和IPv6具有互操作性。
在高校的计算机网络实验课中,很多相关的实验指导书中众多实验都是基于单纯的IPv6协议的,以前与IPv4有关的实验都转换为IPv6来实现相同的功能,验证IPv6的可行性,但很少有实验内容专门来验证IPv4向IPv6过渡技术的可行性。本文主要探讨了在计算机网络实验课中如何布置实验平台来验证两种过渡技术的可靠性。
一、IPv4向IPv6过渡的基本策略
1.双协议栈
所谓双协议栈,就是主机上同时运行IPv4和IPv6两套协议,同时支持两套协议工作方式。目前,双栈是运行最广泛的迁移机制,不过双栈只允许相同IP版本之间的通信,即IPv4和IPv4之间的通信或者IPv6和IPv6之间的通信。对于不同版本的通信就要用到协议转换,利用转换网关在IPv4和IPv6网络之间转换IP报头的地址,同时根据协议不同对分组做相应的语义翻译,从而使纯IPv4和纯IPv6站点之间能够透明通信。双协议栈模型如图1所示。
应用程序
图1 双协议栈模型
2.隧道技术
隧道是通过在一种协议中承载另一种协议,实现跨越不同域的互通,隧道技术只要求在隧道的入口和出口处进行修改,对其他部分没有要求,如图2所示就是在IPv4中封装IPv6所形成的隧道。
隧道的类型取决于由何种设备封装及由何种设备来解包。路由器—路由器隧道,用于连接被IPv4网隔离的两个IPv6网的连接;主机—路由器隧道用于独立的双IP主机通过双IP路由器与IPv6网进行通信;路由器—主机隧道用于将独立IPv6或IPv4节点与IPv6网络隔离;主机—主机隧道用于将相互独立的IPv6/IPv4节点通过IPv4网相互通信,此时两个双IP节点作为隧道的端节点通过IPv4网进行通信。
二、两种策略在计算机网络实验课程教学中的实现
1.双协议栈实验的实现
(1)在linux系统上运行IPv6协议栈。Linux Red Hat7.2对IPv6有很好的支持,在系统启动后运行命令modprobe ipv6 就可以将IPv6协议栈加载,此时可以通过lsmod|grep-w ’ipv6’来验证IPv6是否被成功的加载。
(2)在Windows 2000上运行IPv6协议栈。Windows 2000起初并不带有IPv6的协议栈,需要下载补丁SP2 for IPv6。在cmd命令提示符下做如下的具体设置。
1)ipv6 rtu 2002::/16 2,该命令指明所有的带有2002开头的地址将从2口发出。
2)ipv6 adu 2/2000:ca90:1d92::ca70:1d92,该命令设置IPv6地址。
3)ipv6 ::/0 2/::202.255.45.5 pub lifetime 7200,该命令用来设置路由,其中::202.255.45.5是一个6to4服务器。
(3)在Windows XP上运行IPv6协议栈。微软公司在其操作系统Windows XP中已加入了对IPv6的支持,如果要使用IPv6,则在cmd命令行提示下输入:ipv6 install,待安装完成后就可使用IPv6了,此时的系统就相当于双协议栈既支持IPv4也支持IPv6。
2.隧道技术实验的实现
在IPv4网络中,许多路由器不支持IPv6,若采用隧道技术就可使得两个IPv6主机通过IPv4路由器互连。可以简单让学生先按照如图3所示的拓扑图搭建实验平台。
图3中,路由器不支持IPv6,所以它也不能转发IPv6的数据包,PC1和PC2要传输IPv6的数据就必须通过IPv4的隧道进行通信。
首先配置好PC1和PC2的IPv6地址,并且按照实际IPv4网络情况,配置好网络接口的IPv4地址。
其次,需要分别为PC1和PC2配置隧道,两隧道的端地址为PC1和PC2的IPv4地址,而两个隧道的sit1端和sit2端的IPv6的地址为:3ffe:3208:1000::1/64和3ffe:3208:1000::2/64。在PC1上执行的配置命令如下:
iptunnel add sit1 remote 202.112.29.32 local any ttl 255
ifconfig sit1 up
ifconfig sit1 add 3ffe:3208:1000::1/64
route –A inet6 add 3ffe:3208:1000::2/64 sit1
最后,依照 PC1的配置,在PC2上也执行相对应的配置命令后,学生机就可使用ping6命令相互ping对方,如能ping出则显示互通成功。
三、结束语
从IPv4向IPv6的转换是一个相当长的过渡时期,在此过渡期间需要IPv4与IPv6共存,并要解决好互相兼容的问题,通过这一过渡,最终实现IPv6全球Internet。通过本文提出的实验,学生可以更深刻的理解这一问题,并亲自动手使其能相互兼容,并且通过实验对两种策略的概念及具体实施有了更为清晰和深刻的理解。
参考文献:
[1]RFC 791, Internet protocol[S].
[2]RFC 2460, Internet protocol, version 6(IPv6)[S].
[3]钱德沛.计算机网络实验教程[M].北京:高等教育出版社,2005.
[4]谢希仁.计算机网络[M].大连:大连理工大学出版社,2000.
[5]邓増涛,黄超.linux与X Windows 系统基础[M].北京:电子工业出版社,2002.
[6]李文正.下一代计算机网络技术[M].北京:中国水利水电出版社,2008.
[7]兰晓红.《计算机网络》教学模式改革探讨[J].重庆师范学院学报(自然科学版),2002,19(4): 84-88.
(责任编辑:苏宇嵬)