该内容只是以默写总结一些知识点而已,顺便分享出来和方便翻阅。无他。有错误的地方麻烦批评指正。十分感谢。
以下知识内容学习于《谢希仁计算机网络第七版》
以前一直用的是IPV4地址,由于如今地址不够,所以有了IPV6地址。但是不可能一下子全部整改成IPV6吧?所以在过渡阶段要考虑如何实现IPV4向IPV6过渡。有俩种策略,即双协议栈和隧道技术。
双协议栈顾名思义就是一个设备同时有两个协议栈,一个IPV4,一个IPV6,这样就既可以与IPV4通信,也可以与IPV6通信。那要如何判断通信时采用哪种协议栈呢?依靠域名系统DNS来查询,如果DNS返回的是IPV4地址,那么源主机就使用IPV4地址。IPV6同理。
如图,在IPV4网络的边缘有两台具备双协议栈的设备,路由器B把IPV6数据报首部转换成IPV4数据报首部然后进行转发。到达路由器E时再把首部转换回来,但是流标号X会损失,无法恢复。所以双协议栈就是改变IP地址的首部后进行转发,在首部进行转换的过程中,IPV6的首部的部分信息会丢失,而且这种转换的损失不可避免。
隧道技术,学过VPN(不知道的可以查看往期文章)的会了解到隧道,没错,这个技术就是把IPV6的数据包封装成IPV4的数据部分。到达路由器E后进行解封装然后根据IPV6数据报的目的地址发送给主机F,因为B和E也是双协议栈设备。这种方式保证了IPV6报文的完整性。
要注意的是,
两者的源目的地址是不一样的。我们可以看到双协议栈技术是不改变源目的地址的,而隧道技术在IPV4网络中传输的源目的地址是边缘的B和E设备。
隧道技术要使双协议栈的路由器知道数据部分是封装IPV6报文,需要把IPV4首部的协议字段值设为41。