我正在使用IPv4和IPv6存储在Postgres数据库中。
由于IPv4需要32位(4字节),IPv6需要128位(16字节),那么为什么在Postgres中CIDR和INET数据类型的存储分别为12字节和24字节,用于IPv4和IPv6(8.1)?
在9.1版本中,IPv4和IPv6分别为7字节和19字节。
我不明白为什么需要额外的字节来存储IPv6超过16字节,IPv4超过4字节?详情请参考:http://www.postgresql.org/docs/8.1/static/datatype-net-types.html和http://www.postgresql.org/docs/9.1/interactive/datatype-net-types.html。
由于IPv4需要32位(4字节),IPv6需要128位(16字节),那么为什么在Postgres中CIDR和INET数据类型的存储分别为12字节和24字节,用于IPv4和IPv6(8.1)?
在9.1版本中,IPv4和IPv6分别为7字节和19字节。
我不明白为什么需要额外的字节来存储IPv6超过16字节,IPv4超过4字节?详情请参考:http://www.postgresql.org/docs/8.1/static/datatype-net-types.html和http://www.postgresql.org/docs/9.1/interactive/datatype-net-types.html。