【问题标题】:Is it okay to store the IPv4 address as a number (without dots)?可以将 IPv4 地址存储为数字(不带点)吗?
【发布时间】:2021-03-16 05:46:39
【问题描述】:

我使用 public-ip npm 包在客户端获取 IP 地址,然后将其存储用于身份验证,现在,我将其存储为数字而不是字符串,例如: “123.123.12.123”存储为“12312312123”。 如果 IPv4 地址格式不变,则不会有问题,但我注意到,例如,如果我使用 4G 网络访问我的网站,它会给我其他 IP 格式:xxx.xx.xx.xx 或 xxx.xxx。 xx.xx。 有没有办法知道IP转换成数字后的原始格式?

【问题讨论】:

    标签: ip ipv4


    【解决方案1】:

    您可以将 IPv4 和 IPv6 地址存储为数字,但不能以您描述的方式存储。从技术上讲,IP 地址是一个数字,它被转换为我们人类可读的形式。

    您可以使用诸如 inet_pton 和 inet_ntop 之类的函数(分别可打印到数字和可打印数字)来获取您正在寻找的实际 32 位或 128 位数字。

    【讨论】:

    • 谢谢,我还发现了一个名为 ip-to-int 的 npm 包,它可以两种方式进行转换。
    猜你喜欢
    • 1970-01-01
    • 2011-03-28
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    • 1970-01-01
    • 2013-05-25
    • 2013-06-22
    • 2016-09-18
    相关资源
    最近更新 更多