网站 / SEO · HTTP / 网络

IPv6↔IPv4

IPv4→IPv4-mapped IPv6/6to4

✓本地处理 · 不上传 ✓免费 · 无需登录 ✓无次数限制 累计 124 次使用
自动识别 IPv4 / IPv6 · 即时转换
识别:等待输入
8 段十六进制分段 128-bit · 8 × 16-bit groups
输入有效 IPv6(或可转换的 IPv4)后显示分段
赤金(奇数段) 暖褐(偶数段) 压缩零段 ::(朱砂)
转换结果 conversions
在上方输入地址即可转换
就绪 · 输入 IPv4 或 IPv6 地址
第一节

关于本工具

About

当网络配置或双栈迁移时,IPv4 与 IPv6 地址的转换常因格式差异出错。这个工具将 IPv4 地址转为 IPv4-mapped IPv6 格式(如 ::ffff:192.0.2.1)或 6to4 地址,适合网络工程师调试、文档编写或兼容性验证。输入一个合法 IPv4,即时输出两种标准映射。转换全程在浏览器内完成,地址不离开本地设备。

使用场景

壹

双栈服务器排障

凌晨两点,某电商平台线上告警,部分用户无法访问。运维排查发现,新上线的 CDN 节点只分配了 IPv4,但核心数据库强制要求 IPv6 回源。此时需快速将数据库的白名单从纯 IPv4 格式转换为 IPv4-mapped IPv6 地址(如 ::ffff:10.0.0.1),否则回源失败。用本工具批量转换,省去手动拼接前缀和计算偏移的步骤,避免因格式错误导致误封 IP。

贰

双栈服务器排障

凌晨两点,某电商平台线上告警,部分用户无法访问。运维排查发现,新上线的 CDN 节点只分配了 IPv4,但核心数据库强制要求 IPv6 回源。此时需快速将数据库的白名单从纯 IPv4 格式转换为 IPv4-mapped IPv6 地址(如 ::ffff:10.0.0.1),否则回源失败。用本工具批量转换,省去手动拼接前缀和计算偏移的步骤,避免因格式错误导致误封 IP。

叁

防火墙规则迁移

某金融公司计划年底将核心交易系统从 IPv4 迁移到 IPv6 双栈。安全团队整理出 300 条旧防火墙规则,每条规则都包含源/目的 IPv4 地址。迁移时需将这些地址转换为 IPv4-mapped IPv6 格式(::ffff:x.x.x.x),以便兼容旧配置。手动转换 300 条规则需 2 小时且极易出错——漏写一个冒号或前缀,规则就会失效,导致业务中断。用本工具批量粘贴转换,5 分钟完成校验,输出可直接粘贴进防火墙配置。

肆

6to4 隧道地址分配

某跨国企业在新加坡办公室部署了 6to4 隧道,需为每台设备分配对应的 6to4 地址(2002:xxxx:xxxx::/48)。网络管理员拿到 10 个公网 IPv4 地址,需计算每个 IPv4 对应的 6to4 前缀。手动计算需将 IPv4 地址拆成 4 段,每段转十六进制再拼接,10 个地址算下来至少 30 分钟,且十六进制转换容易算错。用本工具输入 IPv4 地址,直接输出 2002 开头的完整 6to4 地址,复制即可写入设备配置。

伍

日志分析地址标准化

某安全分析师在审计 IDS 日志时,发现同一攻击来源在日志中出现了两种格式:纯 IPv4(192.0.2.1)和 IPv4-mapped IPv6(::ffff:192.0.2.1)。安全分析平台要求所有 IP 地址统一为 IPv6 格式才能做关联分析。手动从 1 万条日志中找出所有纯 IPv4 并逐一转换,需 4 小时且容易遗漏。用本工具批量转换,将日志中所有 IPv4 地址提取后一次性转成 ::ffff 格式,再回填日志,10 分钟完成标准化。

陆

双栈环境 IP 段规划

某云服务商为新客户分配了一段 IPv4 子网(203.0.113.0/24),同时要求客户提供对应的 IPv6 地址段用于双栈部署。客户需要知道这段 IPv4 子网对应的 IPv4-mapped IPv6 地址范围(::ffff:203.0.113.0/120),以配置路由和 ACL。手动计算子网掩码的 IPv6 等价形式容易混淆——/24 在 IPv6 中对应 /120,但很多人会误写成 /96。用本工具输入 IPv4 CIDR,直接输出对应的 IPv6 CIDR 表示,避免子网范围算错导致地址冲突。

第二节

使用指南

Getting Started

使用步骤

  1. 1在输入框粘贴或键入 IPv4 地址(如 192.168.1.1),右侧实时显示对应的 IPv4-mapped IPv6 格式(::ffff:192.168.1.1)
  2. 2切换「6to4」标签,输入框自动转为 6to4 前缀模式,输入 IPv4 后立即生成 2002:xxxx:xxxx::/48 地址
  3. 3点击任一结果旁的复制图标,地址自动写入剪贴板,按钮短暂变为「已复制」反馈
  4. 4展开底部「格式说明」面板,查看 IPv4-mapped IPv6 与 6to4 的结构差异及 RFC 出处

输入输出示例

输入输出说明
192.168.1.1::ffff:192.168.1.1常规:最常见的私有 IPv4 地址,验证 IPv4-mapped IPv6 基本转换
0.0.0.0::ffff:0.0.0.0边界:全零地址的转换,确认工具不会省略为 :: 或报错
10.0.0.1::ffff:10.0.0.1常规:A 类私有地址,验证不同网段转换一致性
127.0.0.1::ffff:127.0.0.1常规:回环地址,验证本地测试场景的转换
255.255.255.255::ffff:255.255.255.255边界:广播地址最大值,验证四字节全满时的转换
192.168.1.256错误:IPv4 地址格式无效,每段应在 0-255 之间易错:超出范围的值,验证输入校验是否严格
192.168.1.1.1错误:IPv4 地址格式无效,应为 4 段十进制数字易错:多了一段,验证段数校验
2001:db8::1错误:输入不是 IPv4 地址,本工具仅支持 IPv4 转 IPv6易错:用户误输入 IPv6 地址,验证工具是否给出明确提示而非静默失败

常见错误对照

1.混淆 IPv4-mapped IPv6 与 6to4 地址

✗ 错误将 ::ffff:10.0.0.1 当作 6to4 地址使用
✓ 修复2002:0a00:0001::1 才是 6to4 地址

IPv4-mapped IPv6 前缀 ::ffff:0:0/96 用于在 IPv6 套接字中表示 IPv4 节点;6to4 使用 2002::/16 前缀,将 IPv4 地址嵌入到 IPv6 地址的高 32 位。

2.IPv4 地址段嵌入顺序搞反

✗ 错误IPv4 192.168.1.1 写成 ::ffff:192.168.1.1 后,误以为映射后是 ::ffff:c0a8:0101
✓ 修复正确映射为 ::ffff:c0a8:0101,其中 c0a8 对应 192.168,0101 对应 1.1

IPv4-mapped IPv6 地址的低 32 位直接对应 IPv4 地址的 4 个字节,但十六进制表示时是高位在前,即 192.168 → 0xc0a8,1.1 → 0x0101。

3.在 IPv4-mapped IPv6 地址中错误添加冒号分隔

✗ 错误::ffff:192.168.1.1 写成 ::ffff:192.168.1.1: 或 ::ffff:192:168:1:1
✓ 修复::ffff:192.168.1.1 或 ::ffff:c0a8:0101

IPv4-mapped IPv6 地址的混合表示法(RFC 4291 §2.5.5.2)允许最后 4 个八位组用点分十进制,但前面必须是标准的 6 组十六进制 + 冒号分隔。

4.6to4 地址中 IPv4 部分未转换为十六进制

✗ 错误IPv4 10.0.0.1 直接拼成 2002:10.0.0.1::1
✓ 修复2002:0a00:0001::1

6to4 地址(RFC 3056)要求将 IPv4 地址的 32 位转换为 8 位十六进制数,嵌入到 2002::/16 之后。10.0.0.1 → 0a000001,写成 2002:0a00:0001::1。

5.省略前导零导致地址长度不符

✗ 错误IPv4 10.0.0.1 映射为 ::ffff:a00:1
✓ 修复::ffff:0a00:0001

IPv6 地址每段 16 位,省略前导零后 a00 实际是 0a00,1 是 0001,但标准表示要求每段保持 1-4 位十六进制,不强制补零,但工具输出通常统一为 4 位。

6.误将私有 IPv4 地址映射后当作公网 IPv6 使用

✗ 错误将 ::ffff:192.168.1.1 配置为对外服务的 IPv6 地址
✓ 修复仅用于本地 IPv6 套接字兼容,不应作为可路由地址

IPv4-mapped IPv6 地址仅在双栈节点内部使用,IANA 将其标记为 'Not Globally Reachable'(RFC 5156),不能用于跨网络通信。

7.混淆 IPv4-compatible IPv6 与 IPv4-mapped IPv6

✗ 错误将 ::10.0.0.1 当作 IPv4-mapped IPv6 地址
✓ 修复::10.0.0.1 是已废弃的 IPv4-compatible IPv6(RFC 4291 已弃用),应使用 ::ffff:10.0.0.1

IPv4-compatible 地址前缀为 ::/96,已由 RFC 4291 弃用;IPv4-mapped 地址前缀为 ::ffff:0:0/96,两者低 32 位相同但语义不同。

第三节

工作原理

How It Works

核心公式

IPv4-mapped IPv6 = ::ffff:a.b.c.d

变量说明

  • a.b.c.dIPv4 地址的四个十进制数

示例

IPv4 地址 192.0.2.1:a=192, b=0, c=2, d=1 → 十六进制 0xC0 0x00 0x02 0x01 → IPv6 地址为 ::ffff:c000:0201。

输入 IPv4 地址格式校验(点分十进制 / 合法性)选择转换模式(IPv4-mapped / 6to4)IPv4-mapped::ffff:a.b.c.d6to42002:a.b.c.d::/48展示转换后的 IPv6 地址
用户输入 / 转换结果 校验与模式选择 最终输出
第五节

常见问题

Q & A
问这个工具是把 IPv4 转成 IPv6 地址吗?我填了个 192.168.1.1 出来一串带 ::ffff 的是啥意思?+
答

对,工具生成的是 IPv4-mapped IPv6 地址,格式为 ::ffff:x.x.x.x。这不是一个真正的 IPv6 地址(不能用来直接访问 IPv6 网络),而是把 IPv4 地址嵌入到 IPv6 地址空间的一种表示法,常用于双栈系统或日志记录。比如 192.168.1.1 转成 ::ffff:192.168.1.1(十六进制等效为 ::ffff:c0a8:101)。如果你需要真正的 IPv6 转换(比如 6to4 隧道),工具也提供单独的 6to4 模式,结果会是 2002:xxxx 开头的地址。

问我填了 IPv6 地址进去,怎么没反应?这个工具支持反向转换吗?+
答

本工具只支持 IPv4 → IPv4-mapped IPv6 和 6to4 的转换,不支持 IPv6 → IPv4 的逆向转换。输入框只接受标准 IPv4 地址(如 10.0.0.1)或 CIDR 格式(如 10.0.0.0/24),填入 IPv6 地址(如 2001:db8::1)不会有任何输出。如果需要反向解析,可以试试全宝站的其他工具或系统自带的 ping -6 / nslookup 命令。

问为什么 6to4 模式转出来的地址是 2002 开头?这个地址能直接用吗?+
答

6to4 是一种自动隧道技术,把 IPv4 地址嵌入到 IPv6 地址的前 48 位:2002:IPv4_十六进制::/48。比如 1.2.3.4 转成 2002:0102:0304::1。这个地址理论上可以在支持 6to4 中继的网络中通信,但实际中很多公网路由器会过滤 6to4 流量,而且现代操作系统已默认禁用 6to4。所以 6to4 地址主要用于学习理解隧道原理,或者在内网测试环境里使用,不建议用于生产环境。

问我填了个内网地址 10.0.0.5,转出来的 IPv6 地址和公网的有什么区别?+
答

没有本质区别。转换算法只对 IPv4 地址本身做映射(内网地址也一样生成 ::ffff:10.0.0.5),并不区分公网/内网。但需要注意:内网 IPv4 地址(10.0.0.0/8、172.16.0.0/12、192.168.0.0/16)转换后的 IPv4-mapped IPv6 地址同样只能在内网环境使用,拿到公网路由不了。如果你需要把内网服务暴露到 IPv6 公网,应该用 NAT64 / DNS64 或直接申请公网 IPv6 地址,而不是靠这种映射。

问这个转换是纯本地算的吗?我的 IP 地址会不会被上传到服务器?+
答

完全本地计算,不会上传任何数据。工具标注了实现方式为 FE(纯浏览器/WASM),所有转换逻辑都在你电脑的浏览器里执行,不需要联网请求后端。输入框里的 IP 地址不会离开你的设备,刷新页面或关闭标签页后数据自动消失。可以放心处理敏感内网地址(如生产环境的服务器 IP)。

问为什么有些网站说 IPv4-mapped IPv6 地址是 ::ffff:10.1.1.1,但我转出来是 ::ffff:a01:101?+
答

两种表示法完全等价,只是格式不同。::ffff:10.1.1.1 是混合点分十进制写法(前 80 位固定 + 16 位 ffff + 32 位 IPv4 点分),而 ::ffff:a01:101 是纯十六进制写法(将 10.1.1.1 换算为 0a01:0101)。本工具默认输出纯十六进制格式(更符合 RFC 4291 规范),同时也显示点分十进制等效值。两个地址在系统层面被识别为同一个地址,没有优劣之分。

问我有个 /28 的 IPv4 段(比如 192.168.1.0/28),怎么批量转成 IPv4-mapped IPv6?+
答

本工具目前只支持单个 IPv4 地址的转换,不支持 CIDR 段批量处理。如果只有几个地址,可以手动一个个复制粘贴。如果需要批量转大量地址(比如几百个),建议写个简单脚本,用 Python 的 ipaddress 库一行搞定:str(ipaddress.IPv6Address('::ffff:' + ipv4_str))。或者把地址列表导出成 CSV,用在线表格工具拼接前缀。

问我转出来的 ::ffff:192.168.1.1 在 ping6 里提示 'Address family not supported',怎么回事?+
答

这是系统或网络栈不支持 IPv4-mapped IPv6 地址的直接使用。虽然 Linux 内核默认支持(需开启 net.ipv6.bindv6only=0),但很多操作系统(如 Windows 默认、某些容器环境)不允许用 IPv6 套接字直接连接 IPv4-mapped 地址。解决方案:如果只是测试连通性,直接用原始 IPv4 地址 ping;如果需要在 IPv6 环境中引用该地址,改用真正的 IPv6 地址(比如通过隧道或 NAT64 获取)。这个转换结果更适合用在配置文件、日志解析或 DNS 记录中,而不是直接用来发包。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

↑↓选择 ↵打开 ⌘+↵新窗口 esc关闭