sql - 客户端 ip 地址的最大长度

标签 sql database database-design

<分区>

Possible Duplicate:
Maximum length of the textual representation of an IPv6 address?

您建议存储客户端 IP 地址的数据库列的最大大小是多少?我现在将其设置为 16,但我可以获得比 IPv6 等更长的 IP 地址吗?

最佳答案

一般 39 个字符的 IPv6 结构有一个警告。对于 IPv4 映射的 IPv6 地址,字符串可以更长(超过 39 个字符)。一个例子来说明这一点:

IPv6(39 个字符):

ABCD:ABCD:ABCD:ABCD:ABCD:ABCD:ABCD:ABCD

IPv4 映射的 IPv6(45 个字符):

ABCD:ABCD:ABCD:ABCD:ABCD:ABCD:192.168.158.190

注意:最后 32 位(对应于 IPv4 地址)最多需要 15 个字符(因为 IPv4 使用 4 组 1 字节,格式为 0-255 范围内由点分隔的 4 个十进制数字( . 字符),因此最大值为 DDD.DDD.DDD.DDD)。

因此,正确的最大 IPv6 字符串长度是 45。

这实际上是我参加的 IPv6 培训中的一个测验问题。 (我们都回答了 39!)

关于sql - 客户端 ip 地址的最大长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1076714/

相关文章:

SQL Server 取消透视多个列

sql - 查询两个表的总和乘积

sql - 减少 DB2 列长度的方法

mysql - 数据库 - 本地逻辑数据库模型和全局数据库模型有什么区别?

mysql - 数据库设计 : relate to car's model or trim?

mysql - 在表中更改我的 PK

sql - sql-选择与其他行中的值进行比较的行

mysql - 搜索日期时查询显示无结果

mysql - 数据库信息本地化

php - Mysql在哪里查询优化