首页/网络/IP 与子网速查/IPv6 子网数量速算:2^(64 − 前缀)
IPv6 与下一代网络42 条

IPv6 子网数量速算:2^(64 − 前缀)

子网数 = 2^(64 − 站点前缀):/48→65536、/52→4096、/56→256、/60→16、/62→4。地址总数 = 2^(128 − 前缀),例如 /64 有 2^64 ≈ 1.8×10^19 个地址,不可能枚举扫描。

IP 与子网速查网络更新于 2026-10-13

子网数怎么算

IPv6 把 64 位当成链路边界后,子网数量就是 2 的「站点前缀到 64 之间的位数」次方:站点前缀 /48 剩 16 位,能切 65536 个 /64;/52 剩 12 位,切 4096 个;/56 剩 8 位,切 256 个;/60 剩 4 位,切 16 个;/62 剩 2 位,切 4 个。规划时数的是「有几条链路」,不是「有多少个地址」。

地址总量与子网数的区别

另一个常用数字是地址总数:2 的(128 减前缀)次方。例如 /64 有 2^64 个地址,约 1.8×10^19;/48 有 2^80 个地址。这两个数字很容易混:子网数用来做规划,地址总量用来说明规模量级。理解它们的关系有助于判断「能不能扫描这个段」——/64 里的地址数量级决定了不可能枚举。

实践中的含义

由于每个 /64 都大得无法扫描,IPv6 的安全策略不能依赖「地址猜不到」,而要靠前缀层面的明确放行与拒绝。同样地,主机发现与资产管理不能再靠 ping 扫段,需要依赖邻居表、DHCPv6 租约、交换机 MAC 表或专门的发现协议,这也是 IPv6 运维工具链与 IPv4 明显不同的地方。

基本信息

子网数2^(64 - 站点前缀)
地址总数2^(128 - 前缀)
/4865536 个 /64
/56256 个 /64
/642^64 ≈ 1.8×10^19 个地址

典型使用场景

  • 规划企业站点:确认 /48 能容纳多少条 VLAN
  • 向运营商申请前的容量沟通:说明需要多少条链路
  • 家宽多网段场景:判断 /56 能否满足多个 SSID 与访客网
  • 评估扫描与发现方案:/64 不可枚举,需换方法
  • 考试与培训中换算 IPv6 子网数量与地址总量

速算表

速算表
/48 → 2^16 = 65536 个 /64
/52 → 2^12 = 4096
/56 → 2^8  = 256
/60 → 2^4  = 16
/62 → 2^2  = 4
/63 → 2^1  = 2

Python 验证

Python 验证
python -c "import ipaddress as ipa; n=ipa.ip_network('2001:db8:acad::/48'); print(2**(64-48)); print(next(n.subnets(new_prefix=64))); print(n.num_addresses)"
# 65536
# 2001:db8:acad::/64
# 1208925819614629174706176

常见前缀与规模

前缀可切 /64 数地址总量量级典型对象
/322^322^96运营商分配起点
/48655362^80企业站点
/562562^72家宽、小分支
/60162^68微型办公
/6412^64单条链路
IPv6 地址充足到不需要「省着用」,规划的重点因此转向结构:把子网位当成编码空间,按区域、楼层、功能分配,让前缀本身表达含义。比起压缩地址,清晰的结构带来的运维收益更大。
想扫描 /64 找主机是不现实的:2^64 个地址即使每秒探测一百万个也需要数千年。资产发现要改用邻居表、DHCPv6 租约与交换机转发表等手段,否则会误判「网络里没有设备」。

易错点

  • 用 IPv4 直觉类比 /64 与 /24:地址数量级完全不同
  • 把子网数与地址总量混为一谈:规划口径与规模量级搞混
  • 试图扫描 /64 找主机:2^64 个地址不可枚举,需改用邻居表
  • 只申请 /64 却需要多个网段:无法再分,只能重新申请
  • 依赖地址隐蔽性做安全:IPv6 地址空间大但不等于安全

数据来源与参考

  • RFC 4291(IPv6 地址架构)
  • RFC 6177(站点分配惯例)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌