IPv6地址空间和IPv4地址空间是否完全不相交?
是的,它们是两个单独的,不兼容的协议,具有完全不同的寻址。
那本书已经过时了。它所指的地址在很久以前已被弃用。它指的是已弃用的旧版IPv4兼容IPv4寻址。请参阅RFC 5156,特殊用途的IPv6地址:
2.3。兼容IPv4的地址
:: / 96是IPv4兼容地址[ RFC4291 ]。这些地址已弃用,不应出现在公共Internet上。
对于IPv6,有IPv4映射的地址,但实际上并没有用作数据包的地址:
2.2。\ IPv4映射的地址
:: FFFF:0:0/96是IPv4映射的地址[ RFC4291 ]。此块中的地址不应出现在公共Internet上。
另请参阅参考的RFC 4291,IP版本6寻址体系结构:
2.5.5。具有嵌入式IPv4地址的IPv6地址
定义了两种类型的IPv6地址,它们在地址的低32位中承载IPv4地址。它们是“ IPv4兼容的IPv6地址”和“ IPv4映射的IPv6地址”。
2.5.5.1。兼容IPv4的IPv6地址
定义了“兼容IPv4的IPv6地址”以帮助进行IPv6过渡。“ IPv4兼容的IPv6地址”的格式如下:
| 80 bits | 16 | 32 bits |
+--------------------------------------+--------------------------+
|0000..............................0000|0000| IPv4 address |
+--------------------------------------+----+---------------------+
注意:“兼容IPv4的IPv6地址”中使用的IPv4地址必须是全局唯一的IPv4单播地址。
现在不赞成使用“兼容IPv4的IPv6地址”,因为当前的IPv6转换机制不再使用这些地址。不需要新的或更新的实现来支持此地址类型。
2.5.5.2。IPv4映射的IPv6地址
定义了保留嵌入式IPv4地址的第二种IPv6地址。此地址类型用于将IPv4节点的地址表示为IPv6地址。“ IPv4映射的IPv6地址”的格式如下:
| 80 bits | 16 | 32 bits |
+--------------------------------------+--------------------------+
|0000..............................0000|FFFF| IPv4 address |
+--------------------------------------+----+---------------------+
有关“ IPv4映射的IPv6地址”的用法,请参见[ RFC4038 ]。
这是否意味着IPv4地址空间已嵌入到IPv6地址空间的最低子范围中?
仅在某些情况下,但通常不建议这样做。
这样的嵌入固定吗?是否可以将IPv4地址空间嵌入到IPv6地址空间的任何连续子范围中?
为此仅设计了两个IPv6地址范围,它们不用于发送数据包。这在全局IPv6寻址中不使用。
这是否意味着对于任何IPv4地址,都有一些IPv6地址与该IPv4地址引用相同的地址?
并不是的。从概念上讲,是的,对于IPv6的IPv4映射寻址,但这实际上并不用于发送数据包。
例如,是::192.31.20.46
和192.31.20.46
有效相同的地址?
- 如果我将消息发送到:: 192.31.20.46,192.31.20.46会收到我的消息吗?
- 如果我向192.31.20.46发送消息,:: 192.31.20.46会收到我的消息吗?
:: 127.0.0.1仍将是回送IP地址吗?如果是,它实际上是否与127.0.0.1相同的地址?
否,::192.31.20.46
是无效的IPv6地址,因为不赞成使用IPv4的IPv4兼容地址。
IPv4和IPv6是两个单独的不兼容协议,可以共存,但不能直接通信。
IPv6的回送地址为::1
。
还是在我与IPv6地址通信时不会与IPv4地址通信的意义上,IPv6地址空间和IPv4地址空间是否完全不相交(即没有重叠)?
IPv4和IPv6具有完全分开的寻址。IPv4使用与IPv6 128位寻址不兼容的32位寻址。协议头在其他方面也非常不同。IPv6是在IPv4中吸取教训后创建的。请记住,IPv4是一个学术/政府实验,从未打算像今天这样使用,而IPv6则是试图纠正IPv4的缺陷,但由于此原因它与IPv4不兼容。