按 ⌘K 切换工具
NETWORK
IPv4地址转换工具
IPv4地址各种格式互转。
ipv4-converter
- Dotted decimal
- 192.168.0.1
- Decimal (integer)
- 3232235521
- Hexadecimal
- 0xC0A80001
- Binary
- 11000000.10101000.00000000.00000001
Read as dotted. Binary of 8 digits or fewer is ambiguous with decimal — prefix it with 0b to force binary.
§01 关于此工具
概述
IPv4 地址不过是一个 32 位无符号整数:192.168.0.1、3232235521 和 0xc0a80001 是同一个值的不同记法。这个工具解析你手上的任意一种形式,把四种表示一次全部给出——用来解读日志和数据库里的整数形式地址,或者用来读防火墙与掩码相关的位运算,都很直接。像 http://3232235521/ 这样的 URL 偶尔会被用在钓鱼里,用来掩盖真实目标;转回点分十进制,它究竟指向哪里就一目了然了。
使用方法
- 在 IPv4 (dotted / decimal / hex / binary) 里输入或粘贴地址。接受的形式有:点分十进制、十进制整数(0–4294967295)、带
0x前缀的十六进制,以及二进制(0/1且超过 8 位)。 - 读结果表格:Dotted decimal、Decimal (integer)、Hexadecimal 和 Binary(按八位组分段)会随输入更新。
示例
192.168.0.1→3232235521、0xc0a80001、11000000.10101000.00000000.000000010xC0A80001→192.168.0.1167772161→10.0.0.1
说明
点分十进制的每个八位组必须在 0–255 之间,超过 4294967295(2³²−1)的整数会被拒绝,并报 “Unrecognized IPv4 format” 错误。较短的二进制串(8 位及以下)会被解读成十进制,所以二进制输入请至少补到 9 位。四种写法是同时给出的,所以你不必先判断手上那串东西属于哪种记法。
FAQ
我输入的地址会被发到哪里吗?
不会。解析和转换都在浏览器里用普通的整数运算完成,不向服务器发送任何内容。
为什么会有人把 IPv4 地址写成一个整数?
因为 IPv4 地址本来就是一个 32 位数字,有些系统就按这个形式存储或记日志。数据库为了便于索引,经常把地址存成无符号整数;而像 http://3232235521/ 这样的 URL 偶尔被用在钓鱼里,用来掩盖真实目标。把它转回点分十进制,真实地址就露出来了。
工具怎么区分二进制输入和十进制输入?
只由 0 和 1 组成的输入,在长度超过 8 位时被当成二进制;否则按十进制整数解析。十六进制输入必须带 0x 前缀,点分十进制则靠它四段八位组的形状来识别。