Поскольку для IPV6 требуется 128 бит (16 байт ), то почему в postgres тип данных CIDR хранится как 24 байта (8.1 )и 19 байт (9.1 )?

я работаю с ipv4 и ipv6 для хранения в postgres db.

поскольку для ipv4 требуется 32 бита (4 байта ), а для ipv6 требуется 128 (16 байт )бит. Тогда почему в postgres CIDR и INET тип данных имеет хранилище как 12 байт и 24 байта соответственно для IPV4 и IPV6 (8.1 ).

с 9.1 он имеет 7 байт и 19 байт соответственно для IPV4 и IPV6.

я не понимаю, зачем ему нужен лишний байт более 16 байт для хранения IPV6 и 4 байта для IPV4 ??

http://www.postgresql.org/docs/8.1/static/datatype-net-types.html

http://www.postgresql.org/docs/9.1/interactive/datatype-net-types.html

6
задан Asha Koshti 18 July 2012 в 13:35
поделиться