我想问一些关于网络问题的问题,即关于正确打印 IPv6 地址的问题。我假设用户希望我提供一些有意义的例子来说明我的期望和我所拥有的。
由于我不熟悉 IPv6 协议,我不知道地址的哪些部分是必不可少的,哪些部分可以安全隐藏。
主要目标是保持匿名,这样人们就不会知道我住在哪里,我在哪里工作,我可以访问哪些网络。
有什么建议吗?
我想问一些关于网络问题的问题,即关于正确打印 IPv6 地址的问题。我假设用户希望我提供一些有意义的例子来说明我的期望和我所拥有的。
由于我不熟悉 IPv6 协议,我不知道地址的哪些部分是必不可少的,哪些部分可以安全隐藏。
主要目标是保持匿名,这样人们就不会知道我住在哪里,我在哪里工作,我可以访问哪些网络。
有什么建议吗?
首先,重要的是要从地址的开头保留足够的位,以便仍然清楚它是哪一类地址。然而,需要多少位才能知道这取决于它是哪一类地址。
这里有一些例子:
2001:0:xxxx:xxxx:: 一个 Teredo 地址 - 32 位(两组数字)足以知道它是一个 Teredo 地址。2002:xxxx:xxxx:: 一个 6to4 地址 - 16 位(一组数字)足以知道它是一个 6to4 地址。2a01:xxxx:xxxx::一个 3 位的全局可路由地址足以知道它是全局可路由的,但是为了避免混淆,发布完整的第一组通常更好。如果您显示两组(32 位),知道国家和提供者就足够了,只有 16 位可用,仍然可以清楚地址属于哪个大陆。fdxx:xxxx:xxxx::ULA 地址。8位就足以知道它是一个ULA地址。地址中没有任何内容直接指向您,因此仅发布完整地址不足以识别您的身份。然而,接下来的 48 位应该是全球唯一的,因此可以与通过其他渠道发布的 ULA 地址相关联。因此,您可能想要审查以下 40 位。fe80::链接本地地址。10 位就足以知道它是一个链路本地地址,但是接下来的 54 位一般都是 0,所以在这种情况下前 64 位是众所周知的。这涵盖了前 48 位的常见情况。地址的下 16 位通常指示您的 LAN 上的哪个段被引用。由于了解两个地址是否在同一段上很重要,因此不应审查这 16 位,因为它们通常包含对您的问题很重要的信息。
最后 64 位可能包含您的 MAC 地址,如下例所示:fe80::220:40ff:fe30:20d7. 这里ff:fe最后 64 位中间的表示它是从 MAC 地址生成的。0220:40将指示硬件的供应商,30:20d7并将识别系列中的特定设备。
不要审查所有 MAC 地址,因为了解两个地址是否基于相同的 MAC 地址是相关的。我认为fe80::220:40ff:fexx:xxd7这是一个合理的妥协。它将指示供应商,但不会唯一标识设备,并且如果您有几个来自同一系列的连续 MAC 地址,仍然可以通过查看最后一位来区分它们。
如果2001:db8:5c1d:c698:220:40ff:fe30:20d7是一个完整的地址,我想审查它,我会把它写成2001:xxx:xxxx:c698:220:40ff:fexx:xxd7. 您可以从这个地址中真正看出它是一个全局可路由地址,并且它是使用某些摩托罗拉硬件的 MAC 地址生成的。
审查地址时,切勿写属于他人的地址。如果您需要写出完整的地址并且不能在其中写任何x地方以表明它已被审查,则有几种选择。对于 ULA 地址,您可以将初始值之后的 40 位替换fd为随机值。如果我在本地使用,如果我想审查它fd59:f1b8:8740::,我只写是可以接受的。fd8f:ed38:64da::对于一个全局可路由的地址,任何以开头的2001:db8:都是公平的例子,就像我上面的例子一样。
您可以发布您唯一的本地单播地址,因为它们与 IPv4 私有地址几乎相同。它有前缀fc00::/7( fd00::/8)。
但是我不建议您发布您的 IPv6 公共地址,尤其是在网络专家论坛中。您可以尝试通过引用其组件(网络标识符或 EUI - 扩展的唯一标识符)来抽象您的问题,或者只是想出一个“假”的,您可以稍后参考您的实际问题。
看看这个讨论。基本上是同一个问题。
回复评论:
IPv6 中的私有(内部)网络寻址等价物。 [它] 称为唯一本地地址 (ULA)。在 IPv4 世界中,私有地址包括 10.0.0.0-10.255.255.255、172.16.0.0-172.31.255.255 和 192.168.0.0-192.168.255.255。在 IPv6 世界中,ULA 空间是 fc00::/7,或者基本上是 IPv6 地址中以 FD 开头的任何东西,所以 fdxx:xxxx:xxxx...