不常见的IP表示法

时间:2012-02-18 10:12:41

标签: ip ipv6 ipv4 notation

我知道可以将IPv4中的IP写为整数,例如2130706433代替127.0.0.1

这种可能性的原因是什么?

IPv6是否有类似的表示法?

我尝试ping -6 1尝试ping ::1,但这不起作用(主机不存在)。

2 个答案:

答案 0 :(得分:4)

IPv4地址可以用多种方式表示。例如,默认的环回IP可以是以下之一:

  • 127.0.0.1
  • 0177.0.0.1
  • 0x7f.0.0.1
  • 127.0.1
  • 127.1
  • 2130706433
  • 017700000001
  • 0x7f000001

第一种表示法(完整的8位十进制数字)广泛使用,其余的很少使用,但inet_addr POSIX标准函数允许。只有第一个熟悉的符号保留在较新的inet_ntop/inet_pton POSIX标准函数中,它们处理IPv4和IPv6地址。

使用IPv6,带有可选的十进制虚线预告片(用于嵌入式IPv4)的16位十六进制点分表示法以及标准定义的可选零压缩。

例如:

  • 2001:将0db8:85±3:0000:0000:8a2e:9370:7334
  • 2001:将0db8:85±3 :: 8a2e:9370:7334

然后,仍然存在多个单个地址的表示。为了避免产生混淆,RFC 5952建议使用允许使用唯一符号的规范形式。

答案 1 :(得分:1)

IPv4地址只是一个32位的数字。您可以用任何方式表示它,您可以表示这样的数字(十进制,十六进制,八进制)。点缀符号a.b.c.d更加实用。

您可以使用IPv6地址执行相同的操作,除了那些是128位数字 - 甚至更难以十进制形式查看。

通常的工具只会处理通常的注释。十进制不是其中之一。