老旧的等价新的IPv4映射IPv6表示?

时间:2016-03-30 19:17:52

标签: ipv6

IPv4作为IPv6地址的旧定义是(使用127.0.0.1):

0000:0000:0000:0000:0000:0000:7f00:0001

而当前定义的第6个组件为FFFF:

0000:0000:0000:0000:0000:ffff:7f00:0001

这些应该被认为是等同的,还是应该对它们进行一些微妙的区分?目前,我正在研究价值持续存在的背景以及对假设的影响。

1 个答案:

答案 0 :(得分:4)

您的第一个示例是IPv4兼容的IPv6地址,不推荐使用这些地址。

您的第二个示例是IPv4映射的IPv6地址。允许并鼓励您使用混合表示法(例如::ffff:127.0.0.1)或IPv6表示法(例如::ffff:7f00:0001)。

RFC 5952, A Recommendation for IPv6 Address Text Representation是讨论IPv6表示的标准。它指出:

  

<强> 5。特殊地址的文字表示

     

地址,例如IPv4映射的IPv6地址,ISATAP [RFC5214]和   IPv4可翻译地址[ADDR-FORMAT]具有IPv4地址   嵌入在地址的低32位中。这些地址   有一个特殊的表示,可以混合十六进制和点   十进制表示法。十进制表示法只能用于   最后32位的地址。对于这些地址,混合符号是   如果满足以下条件,建议:地址可以   区别在于将IPv4地址嵌入低32位   仅通过使用众所周知的前缀从地址字段中获取。   此类前缀在[RFC4291]和[RFC2765]中定义   这篇文章。如果通过某种外部方法知道给定的   prefix用于嵌入IPv4,它可以表示为混合   符号。提供指定前缀的选项的工具   (或不是)表示为混合符号可能有用。

     

这里有一个权衡,建议实现一个   搜索中的完全匹配(无点小数)和a   建议帮助地址的可读性(小数点   只要有可能)不会产生相同的解决方案。以上   建议旨在尽可能地确定代表性   可能留下未来众所周知的机会   前缀以人性化的方式表示为工具   调整到新分配的前缀。

     

应该应用Section 4中提到的文本表示方法   对于前导十六进制部分(即:: ffff:192.0.2.1而不是   0:0:0:0:0:FFFF:192.0.2.1)