一段话先讲明白
IPv4 只有 43 亿地址 (2019 年全部分完了), IPv6 有 340 万亿亿亿亿个 (3.4×10³⁸)。 中国电信 / 联通 / 移动家宽现在默认双栈 (同时跑 IPv4 + IPv6), 你浏览器优先用 IPv6 出去 — 所以 cleanip.io 首页 给你显示的"我的 IP"可能是 2408:8456:... 开头的一长串。 这是正常的, 不是 bug 不是泄漏。下面讲清楚 IPv6 是什么, 跟 IPv4 区别在哪, 怎么管理。
一、为什么有 IPv6 — IPv4 早就不够用了
IPv4 是 1981 年 RFC 791 设计的, 当时用 32 位 (4 个字节) 表示一个 IP, 总共 2³² ≈ 43 亿个地址。 80 年代设计者觉得永远够用, 但他们想不到:
- 1990 年代互联网爆炸 — 每台 PC 一个 IP
- 2000 年代移动互联网 — 每部手机一个 IP
- 2010 年代 IoT — 每个智能家电 / 摄像头一个 IP
IETF 1998 年正式发布 IPv6 (RFC 2460), 用 128 位 (16 字节), 总共 2¹²⁸ = 约 3.4×10³⁸ 个地址 — 地球每平方毫米可以分到几亿个 IP。
但推广极慢:
| 年份 | 全球 IPv6 用户占比 | 关键事件 |
|---|---|---|
| 2010 | 0.5% | IANA 警告 IPv4 即将耗尽 |
| 2012 | 1% | World IPv6 Launch — Google / Facebook 永久启用 |
| 2015 | 10% | 美国移动运营商 (Verizon / T-Mobile) 强制 IPv6-only |
| 2019 | 30% | IPv4 地址池全球彻底分完 |
| 2023 | 40% | 中国电信 / 联通家宽全量上 IPv6 |
| 2026 | 45%+ | 家宽 / 5G / 数据中心普及 |
二、IPv4 vs IPv6 — 核心区别
| 项目 | IPv4 | IPv6 |
|---|---|---|
| 地址长度 | 32 位 (4 字节) | 128 位 (16 字节) |
| 地址数 | 43 亿 | 3.4×10³⁸ (实际约等于无穷) |
| 书写 | 192.168.1.1 | 2001:db8::1 (8 组 4 位 16 进制) |
| 头长度 | 20-60 字节 (变长) | 40 字节 (固定) |
| NAT | 必须有 (家用必 NAT) | 原生不需要 NAT |
| 广播 | 有 (255.255.255.255) | 没了, 用多播替代 |
| 地址自动配置 | 必须 DHCP | SLAAC 自动配置 / DHCPv6 可选 |
| 分片 | 路由器可分片 | 仅端到端分片 (PMTUD 强制) |
| IPsec | 可选 | 原本设计强制 (后改可选) |
| QoS | ToS 字段 | Flow Label 字段 |
三、IPv6 地址怎么读 — 看一眼就懂
3.1 完整写法
2001:0db8:85a3:0000:0000:8a2e:0370:73348 段, 每段 4 位 16 进制数 (0-9 / a-f), 用 : 分隔。每段最大 ffff = 65535。
3.2 简写规则
- 每段前导零去掉:
0db8→db8,0000→0 - 连续多段 0 用 :: 替代 (整个地址里只能用一次):
2001:db8::8a2e:370:7334= 上面那个长地址 - 不区分大小写:
2001:DB8::1=2001:db8::1
3.3 几种特殊 IPv6 地址
| 段 | 含义 | 对应 IPv4 |
|---|---|---|
::1/128 | 本机回环 | 127.0.0.1 |
::/128 | 未指定 (全 0) | 0.0.0.0 |
fe80::/10 | 链路本地 (每张网卡自动有) | 169.254.x.x |
fc00::/7 | 唯一本地 (私有, 实际 fd00::/8) | 10/8, 192.168/16 |
ff00::/8 | 多播 | 224/4 |
2000::/3 | 全球单播 (公网 IPv6) | 普通公网 IPv4 |
2001:db8::/32 | 文档示例专用 | TEST-NET-1/2/3 |
::ffff:0:0/96 | IPv4-mapped (内嵌 v4) | — |
详细解释见 私有 IP 全解。
四、双栈是什么 — 同时跑 IPv4 + IPv6
目前几乎所有家宽 / 数据中心 / 云服务器都是 双栈 (Dual Stack) — 网卡上同时配置 IPv4 和 IPv6 地址, 应用层根据目标地址自动选用。
浏览器访问 google.com:
↓
DNS 同时查 A 记录 (IPv4) + AAAA 记录 (IPv6)
↓
收到: 142.250.x.x (A) + 2607:f8b0:4004::200e (AAAA)
↓
操作系统按 Happy Eyeballs (RFC 8305) 算法:
并发尝试两个地址, 谁先 TCP 握手成功用谁 (一般 IPv6 略先).这就是为什么你访问"查 IP"网站时, 看到的可能是 IPv6 — 即便 IPv4 也通, 但 IPv6 通常先一步成功。
五、怎么判断自己有 IPv6
5.1 浏览器最简单
直接打开 cleanip.io 首页 — 我们同时显示 IPv4 + IPv6 双栈出口, 上面有就有, 没有就 "—"。
或者访问纯 IPv6 测试: https://ipv6.google.com — 能打开说明你有 IPv6。
5.2 命令行
$ curl -6 -s ifconfig.co # 强制 v6
2408:8456:1234::1 ← 你的公网 v6
$ curl -4 -s ifconfig.co # 强制 v4
1.2.3.4
$ ping -6 ipv6.google.com
PING ipv6.google.com(... 2607:f8b0:4004::200e) 56 data bytes
64 bytes from ...: icmp_seq=1 ttl=117 time=12.3 ms5.3 查 IPv6 类型 — 公网 / 链路本地
如果你看到的 IPv6 开头是:
2xxx:或3xxx:— 公网 IPv6 (Global Unicast)fe80:— 链路本地, 不能上公网, 只在本子网有效fd00:/fc00:— ULA 私有, 类似 IPv4 私有段::1— 本机回环
六、怎么开 / 怎么关 IPv6
6.1 怎么开 — 一般默认就开了
中国家宽运营商 2023 年起默认全部开。如果家里没有 IPv6:
- 登路由器后台, 找 "IPv6 设置" → 开启, WAN 模式选 "Native" / "DHCPv6-PD"
- 给 ISP 客服打电话: "我家没 IPv6, 帮我开"
- 路由器固件太老不支持的话, 升固件 / 换路由器
6.2 怎么关 — 有时候需要
关 IPv6 的常见理由:
- VPN 只接管 IPv4, IPv6 流量绕过 VPN 暴露真实 IP — VPN 用户必须关 (除非 VPN 同时代理 v6)
- 某些老应用 / 老网关 IPv6 不兼容, 出连接问题
- 调试网络问题, 先排除 IPv6 影响
| 平台 | 关闭方法 |
|---|---|
| Windows | 控制面板 → 网络 → 当前网卡属性 → 取消勾选 "Internet 协议版本 6 (TCP/IPv6)" 或 PowerShell: Disable-NetAdapterBinding -InterfaceAlias "以太网" -ComponentID ms_tcpip6 |
| macOS | 系统设置 → 网络 → 详细信息 → TCP/IP → 配置 IPv6 选 "仅本地链接" 或 "停用" |
| Linux | sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1持久化: 写 /etc/sysctl.d/99-disable-ipv6.conf |
| iOS / Android | 系统级关 IPv6 不可行 (需要越狱 / Root), 改用 VPN 客户端的 "Force IPv4 only" 选项 |
| 路由器 | 后台 → IPv6 设置 → 禁用 — 全屋一键关 |
七、IPv6 的常见坑
7.1 VPN 不接管 IPv6 → 真实 IP 漏出
很多 VPN 客户端默认只代理 IPv4。你 IPv4 是 VPN 出口, 但访问双栈网站时浏览器优先用 IPv6, 直接走家庭网卡出去 — 真实 v6 公网 IP 暴露。 解法: 用 /leak 泄漏检测自测; 要么关系统 IPv6, 要么换支持 v4+v6 同时代理的 VPN。
7.2 IPv6 公网可路由 → 设备直接暴露在公网
IPv6 没 NAT, 你家每台设备都拿到全球唯一公网 IPv6。这意味着任何 v6 用户都可以直接连你家设备 — 智能家电 / NAS / 摄像头如果配置不当会被入侵。
解法: 路由器 IPv6 防火墙必须开 (默认大多开), 拒绝从外部到内部的连接, 只允许内向外。
7.3 ISP 给的 IPv6 不稳定 → DHCPv6-PD 分配每次重启变
中国电信家宽 IPv6 一般是 DHCPv6-PD 分配一个 /56 或 /60 前缀给你家路由器, 但前缀每次重启 / 续约可能变, 端口转发就废了。
解法: 申请固定前缀 (运营商一般不给), 或用 DDNS (动态 DNS) 自动更新。
7.4 部分海外节点不支持 IPv6 → 双栈时反而慢
Happy Eyeballs 算法会同时尝试 v4 + v6, 但如果 v6 链路差 (高延迟 / 丢包), 等 v6 超时再切 v4 会比单走 v4 更慢。
八、IPv6 实战速查
| 需求 | 命令 / 操作 |
|---|---|
| 查我的公网 IPv6 | curl -6 ifconfig.co |
| 查所有本地 IPv6 | ip -6 addr show / ifconfig | grep inet6 |
| 测 IPv6 是否能上网 | 访问 ipv6.google.com |
| 临时关 IPv6 (Linux) | sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1 |
| 临时关 IPv6 (Windows) | 控制面板取消勾 IPv6, 或 PowerShell 命令 |
| 查 IPv6 默认路由 | ip -6 route | grep default |
| 清 IPv6 邻居缓存 | ip -6 neigh flush all |
| 测 IPv6 到目标的路径 | traceroute6 example.com / mtr -6 example.com |