IPv6学习笔记

IPv4简介

在学习IPv6之前先了解下IPv4,IPv4(Internet Protocol version 4)国际协议版本4,是国际协议开发过程中的第四个修订版本,也是此协议第一个被广泛部署的版本。

IPv4使用32位(4字节)地址,因此地址空间中只有2^32(4,294,967,296)个地址。不过一些地址是为特殊用途所保留的,如专用网络,多播地址,随着地址不断被分配给最终用户,IPv4地址枯竭问题也随之产生。

IPv4地址可被写作任何表示一个32位整数值的形式,但为了方便人类阅读和分析,它通常被写作点分十进制的形式,即4个字节被分开用十进制写出,中间用点分割,如192.0.3.245

IPv6简介

IPv6的计划是创建未来互联网扩展的基础,其目标是取代IPv4。虽然IPv6在1994年就已被IETF指定作为IPv4的下一代标准,由于早期的路由器,防火墙,企业的企业资源计划系统及相关应用程序皆需改写,所以在世界范围内使用IPv6部署的公众网与IPv4相比还是非常的少,技术上仍以双架构并存居多,预计在2025年以前IPv4仍会被支持,以便给新协议的修正留下足够的时间。

IPv6采用128位的地址,而IPv4使用的是32位,因此新增地址空间支持2^128个地址。IPv6一般以16位为一组,每组以冒号:分割,可以分成8组,每组以4位十六进制方式表示,如:
2001:0db8:85a3:08d3:1319:8a2e:0370:7344
是一个合法的IPv6地址。同时IPv6在某些条件下可以省略:

  • 每项数字前导的0可以省略,省略后前导数字仍是0则继续,如: 2001:0DB8:02de:0000:0000:0000:0000:0e13 2001:DB8:2de:0000:0000:0000:0000:e13 2001:DB8:2de:000:000:000:000:e13 2001:DB8:2de:00:00:00:00:e13 2001:DB8:2de:0:0:0:0:e13
  • 可以用双冒号::表示一组0或多组连续的0,但只能出现一次,如 2001:DB8:2de:0:0:0:0:e13 2001:DB8:2de::e13

IPv4转IPv6

::ffff:1.2.3.4格式叫做IPv4映射地址
IPv4地址可以很容易的转化为IPv6格式。举例来说,如果IPv4的一个地址为135.75.43.52(十六进制为0x874B2B34),它可以转化为0000:0000:0000:0000:0000:FFFF:874B:2B34或者::FFFF:874B:2B34,还可以用混合符号,可以为::ffff:135.75.43.52

过渡技术

在IPv6完全取代IPv4前,需要一些转换机制,使得只支持IPv6的主机可以联系IPv4服务,并且允许孤立的IPv6主机及网络可以借由IPv4设施练习IPv6互联网。

双堆栈

双堆栈是将IPv6视为一种IPv4的延伸,以共享代码的方式去实现网络堆栈,可以同时支持IPv4和IPv6,如此是相对较为容易的。目前大部分IPv6的实现使用双堆栈。

隧道

隧道技术提供了一种以现有IPv4路由体系来传递IPv6的数据的方法:将IPv6的分组作为无结构意义的数据,封装在IPv4数据报中,被IPv4网络传输。隧道技术巧妙的利用了现有的IPv4网络,它的意义在于提供了一种使用IPv6的节点之间能够过渡通信的方法,但它并不能解决IPv6节点与IPv4节点之间的相互通信问题。

网关转换

转换网关除了要进行IPv4和IPv6地址转换,还要包括协议并翻译。转换网关作为通信的中间设备,可在IPv4和IPv6网络之间转换IP报头的地址,同时根据协议不同对分组做相应的语义翻译,从而使纯IPv4和纯IPv6之间能够透明通信。

原文地址:https://www.cnblogs.com/shining5/p/9662407.html