【发布时间】:2011-06-21 01:54:23
【问题描述】:
为了好玩,我想更好地了解 IPv6 地址中的构建块或元素。
根据我的理解,以下是基础知识:
- IPv6 地址长度为 128 位(写成 8 个块,每个块有 16 位)
- 每个块都被编码为 0 到 0xffff 之间的十六进制数字。前导零可以省略。
- 可以附加一个 IPv4 点四进制地址,它将占用 IPv6 地址的低 32 位。 1:2:3:4:5:6:200.201.202.203。 (IPv4 的规则符合预期。)
- IPv4 表示只能出现在末尾。
- 可以使用双冒号语法来表示一个或多个带有零的块。 1:2::7:8 相当于 1:2:0:0:0:0:7:8。
- 每个 IPv6 地址只能有一个双冒号,否则语法错误。
- 双冒号可能出现在 ip6 的开头、中间或结尾,但不能出现在 IPv4 点分四组地址中。
以上几点都正确吗?
请不要告诉我阅读 RFC。关于这个问题有好几个,实际上都没有一个简单的例子来描述各种编码机制。我相信很多人会喜欢一个带有示例的简单列表。
在线测试工具 最接近的在线帮助工具是 http://www.dominicsayers.com/source/beta/is_email/test/ 但是这些信息令人困惑,它实际上并没有用简单的英语说明什么是对和错以及为什么。它实际上也是为当然可能包含 IPv6 地址的电子邮件而构建的,因此它并不完全理想。
【问题讨论】:
-
很遗憾,指向 is_email/test 程序的 dominicsayers 链接已损坏。
-
在 IPv4 地址中,您可以省略中间的零四边形。例如,10.0.0.248 可以写成 10.248。我不确定你是否可以在 IPv6 地址的尾部这样做,比如 1:2:3:4:5:6:10.248。
-
双冒号只能使用一次。如果任何其他块是 :0000: 您可以将每个块缩短为 :0:.
标签: ipv6