我知道可以将 IPv4 中的 IP 写为整数,例如2130706433
代替127.0.0.1
.
造成这种可能性的原因是什么?
IPv6 有类似的表示法吗?
I tried ping -6 1
作为尝试 ping::1
,但这不起作用(主机不存在)。
IPv4 地址可以用多种方式表示。例如,默认环回 IP 可以是以下之一:
- 127.0.0.1
- 0177.0.0.1
- 0x7f.0.0.1
- 127.0.1
- 127.1
- 2130706433
- 017700000001
- 0x7f000001
第一种表示法(全 8 位点分十进制)广泛使用,其余的很少使用,但得到了允许inet_地址POSIX 标准函数。新版本中仅保留了第一个熟悉的符号inet_ntop/inet_pton处理 IPv4 和 IPv6 地址的 POSIX 标准函数。
对于 IPv6,标准定义了 16 位十六进制点分表示法以及可选的十进制点分尾符(用于嵌入式 IPv4)以及可选的零压缩。
eg:
- 2001:0db8:85a3:0000:0000:8a2e:9370:7334
- 2001:0db8:85a3::8a2e:9370:7334
那么单个地址仍然有多种表示形式。以避免由此产生的混乱RFC 5952推荐一种允许独特符号的规范形式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)