IP地址转换器

Convert an IP address between dotted decimal, integer, hexadecimal, binary and IPv6 formats, or turn a number back into an IP address.

192.168.1.20

IPv4
标准表示法192.168.1.20
整数(十进制)3232235796
十六进制0xC0A80114
二进制11000000.10101000.00000001.00010100
八进制(点分)0300.0250.01.024
十六进制(点分)C0.A8.01.14
IPv4-mapped IPv6::ffff:192.168.1.20
IPv4-mapped IPv6 (hex)::ffff:192.168.1.20
6to4 前缀2002:c0a8:0114::/48
类别C
反向 DNS 名称20.1.168.192.in-addr.arpa
地址类型私有

为什么要转换 IP 地址?

计算机把 IPv4 地址存储为一个 32 位的数字;我们熟悉的点分格式,如 192.168.0.1,只是书写其四个字节的一种便于人类阅读的方式。不同的工具和数据库使用不同的表示形式:

  • 整数(十进制):在数据库和地理位置文件中存储紧凑,范围查询速度快。192.168.0.1 就是 3232235521。
  • 十六进制:用于抓包、内核表和某些日志格式:0xC0A80001。
  • 二进制:是理解子网掩码和 CIDR 的关键。掩码中的每个 1 位都标记网络部分。
  • IPv4 映射的 IPv6:双栈软件表示 IPv4 客户端的方式,例如 ::ffff:192.168.0.1。

转换是如何进行的

把每个八位字节乘以它的位权再相加:a × 256³ + b × 256² + c × 256 + d。对于 8.8.8.8,即 8 × 16,777,216 + 8 × 65,536 + 8 × 256 + 8 = 134,744,072。要换回来,就反复除以 256 并保留余数。

IPv6 的压缩与展开

IPv6 地址可以写成缩短形式:每组中的前导零会被省略,一段全为零的连续组会被替换为 ::。转换器会同时显示压缩形式(2001:db8::1)和完整的展开形式(2001:0db8:0000:0000:0000:0000:0000:0001)。进一步了解 IPv6。

安全提示:浏览器和许多库都接受不常见的 IP 格式,例如 http://2130706433/(即 127.0.0.1)或八进制的八位字节。攻击者利用这些格式绕过简单的过滤器,所以在验证地址之前,务必先将其规范化。

常见问题

可以输入二进制吗?

可以。IPv4 输入 32 位,IPv6 输入 128 位,带不带点都可以。

IPv4 地址对应的最大数字是多少?

4294967295,即 255.255.255.255(2³² − 1)。

更新于

已复制到剪贴板