网络排查
⏱️ 阅读约 3 分钟 · 更新于 2026-09-15
IP地址进制转换:点分十进制、32位整型、十六进制与二进制互转
🛠️ 本教程配套在线工具:若邻助手 · IP进制互转
纯浏览器本地安全运行,无需上传第三方服务器,100% 保护数据隐私与安全。
核心概要:在 MySQL 数据库设计中,将 VARCHAR(15) 的字符串 IP 转换为 4 字节的 INT UNSIGNED 整型存储,能节省 70% 磁盘空间并极大加快索引查询速度。本文介绍如何通过算法在各种格式之间自由互转。
📋 图文实操步骤指南
1
输入任意格式的 IPv4 地址或数值
打开若邻助手【IP 进制互转】工具,在输入框中输入点分十进制 IP(如 114.114.114.114)、整数数值(如 1920103026)或十六进制(如 72727272)。
💡 提示:工具具备智能格式嗅探,自动识别输入源类型并毫秒级逆向推算。
2
查看四种进制格式的多维对应结果
页面同时呈现:标准点分十进制、32 位无符号整数(Decimal Integer)、十六进制表示(Hexadecimal)与 32 位完整二进制流(Binary)。
💡 提示:点分十进制公式:(A << 24) + (B << 16) + (C << 8) + D。
3
一键复制 SQL 转换函数或数值
工具下方附赠 MySQL 的 INET_ATON() 与 INET_NTOA() 语法范例,方便后端开发者直接在数据库控制台或代码中复用。
💡 提示:支持批量模式,方便一次性清洗并导入百万级访问日志表。
为什么高并发大厂坚持在数据库中用 INT 存 IP?
字符串形式的 IP(如 "222.186.134.255")需要占用 15 个字符字节,且建立 B-Tree 索引时字符串比较效率远低于纯数字。如果转换为 32 位无符号整数,仅需固定的 4 个字节空间!
在千万级日志统计、用户登录足迹表或风控黑名单查询中,不仅能减少成百上千兆的磁盘与内存占用,还能让区间范围检索(如 WHERE ip BETWEEN num1 AND num2)从全表扫描变为极速索引范围扫描。
黑客安全攻防中的十六进制与八进制 IP 混淆
在 Web 安全与渗透测试中,攻击者常利用操作系统的 socket 底层解析特性,将常见 IP 转换为 Hex 形式(如 http://0x7f000001 代替 127.0.0.1)或十进制整数形式来绕过前端弱正则过滤,这也正是网络工程师必须精通 IP 进制转换的原因。
❓ 常见问题解答 (FAQ)
MySQL 中存 IP 该用 INT 还是 BIGINT?
必须使用 INT UNSIGNED(无符号整型)。因为 32 位 IP 的最大值 255.255.255.255 为 4294967295,超出了普通有符号 INT 的最大正数 2147483647,若未加 UNSIGNED 会导致溢出变为负数。
IPv6 能用这个算法转成 32 位整数吗?
不能。IPv6 拥有 128 位长度,需要使用 16 字节的 BINARY(16) 或两个 64 位整数进行存储与位运算。
127.0.0.1 转成十进制整型是多少?
计算公式为 127*2^24 + 0 + 0 + 1 = 2130706433。在浏览器地址栏直接访问 http://2130706433 同样能打开本地服务!