目录标题
IPv6 地址理解与子网划分详解
📚 目录
IPv4 vs IPv6 地址结构对比

IPv4 地址结构(你已经了解的)
地址示例:192.168.1.25
子网掩码:255.255.255.0 (/24)
网络地址:192.168.1.0
广播地址:192.168.1.255
可用地址范围:192.168.1.1 - 192.168.1.254
IPv6 地址结构
地址示例:fd00::25
前缀长度:/112
网络地址:fd00::
可用地址范围:fd00::1 - fd00::ffff
IPv6 地址表示方法



基本表示规则
- 128位地址:用冒号分隔的8组16进制数
- 压缩规则:连续的0可以用::表示(只能用一次)
- 前导零省略:每组前面的0可以省略
示例解析
完整表示:fd00:0000:0000:0000:0000:0000:0000:0025
压缩表示:fd00::25
fd00::25 的详细解析:
- fd00:0000:0000:0000:0000:0000:0000:0025
- 前16位:fd00 (网络前缀)
- 后112位:0000:0000:0000:0000:0000:0000:0000:0025 (主机部分)
对比 IPv4 的理解方式
IPv4: 192.168.1.25/24
- 网络:192.168.1.0
- 主机:25
- 子网范围:192.168.1.0 - 192.168.1.255
IPv6: fd00::25/112
- 网络:fd00::
- 主机:25
- 子网范围:fd00:: - fd00::ffff
子网掩码 vs 前缀长度
IPv4 子网掩码
/24 = 255.255.255.0
- 前24位是网络部分
- 后8位是主机部分 (2^8 = 256个地址)
- 可用主机地址:254个
/16 = 255.255.0.0
- 前16位是网络部分
- 后16位是主机部分 (2^16 = 65536个地址)
IPv6 前缀长度
/112
- 前112位是网络部分
- 后16位是主机部分 (2^16 = 65536个地址)
- 可用主机地址:65534个
/64
- 前64位是网络部分
- 后64位是主机部分 (2^64个地址,巨大!)
前缀长度对比表
| 前缀长度 | IPv4 类似 | IPv6 地址数量 | 适用场景 |
|---|---|---|---|
| /64 | /8 | 2^64 | 标准子网 |
| /80 | /16 | 2^48 | 大型网络 |
| /96 | /24 | 2^32 | 中型网络 |
| /112 | /28 | 2^16 | 小规模网络 |
| /120 | /30 | 2^8 | 点对点链路 |
| /128 | /32 | 1 | 单个地址 |
实际案例分析:fd00::/112 子网
网络参数
网络地址:fd00::
前缀长度:/112
子网范围:fd00:: 到 fd00::ffff
地址范围计算
起始地址:fd00::0000 (fd00::)
结束地址:fd00::ffff
总地址数:2^16 = 65536个
可用主机数:65534个(除去网络地址和广播地址)
实际节点地址
节点1:fd00::25 (x.x.x.25)
- 二进制:fd00:0000:0000:0000:0000:0000:0000:0025
- 十六进制:最后两位是 25
节点2:fd00::174 (x.x.x.174)
- 二进制:fd00:0000:0000:0000:0000:0000:0000:0174
- 十六进制:最后两位是 174
同一子网验证
两个地址都在 fd00::/112 范围内:
✅ fd00::25 在 fd00:: - fd00::ffff 范围内
✅ fd00::174 在 fd00:: - fd00::ffff 范围内
因此它们可以直接通信,无需路由器
IPv6 地址分类
单播地址 (Unicast)
1. 全球单播 (Global Unicast)
- 2000::/3 (以2或3开头)
- 公网路由地址
2. 唯一本地地址 (Unique Local)
- fc00::/7 (以fd开头)
- 私网地址,相当于IPv4的192.168.x.x
- 我们的fd00::就属于此类
3. 链路本地地址 (Link-Local)
- fe80::/10
- 仅在同一链路内使用
- 相当于IPv4的169.254.x.x
特殊地址
::1/128 # 回环地址 (相当于127.0.0.1)
::/128 # 未指定地址 (相当于0.0.0.0)
2001:db8::/32 # 文档示例地址 (相当于192.0.2.0/24)
路由原理
直连路由 (同一子网)
节点A (fd00::25/112)
↓ 直接通信
节点B (fd00::174/112)
条件:
1. 两个地址在同一子网内
2. 物理网络连通
3. 无防火墙阻拦
路由表查看
# IPv4 路由表
ip route show
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.25
# IPv6 路由表
ip -6 route show
fd00::/112 dev bond0 proto kernel metric 256 pref medium
路由匹配规则
最长前缀匹配原则:
- 更具体的路由优先
- /112 比 /64 更具体
- /128 比 /112 更具体
常见问题与解答
Q1: 为什么 IPv6 地址看起来这么复杂?
A: IPv6 设计为128位以支持海量设备,但通过压缩规则,实际使用时很简洁:
fd00:0000:0000:0000:0000:0000:0000:0025 → fd00::25
Q2: /112 子网能容纳多少设备?
A:
总地址:2^16 = 65536个
可用地址:65534个(除去网络地址和广播地址)
相当于 IPv4 的 /28 网络
Q3: 如何快速判断两个IPv6地址是否在同一网段?
A:
- 查看前缀长度:如 /112
- 比较前112位:是否相同
- 简单方法:看前导部分是否相同,最后部分是否在合理范围内
fd00::25 vs fd00::174 → 都在 fd00::/112 内 ✓
fd00::25 vs fd01::25 → 不在同一网段 ✗
Q4: IPv6 也有广播地址吗?
A: IPv6 取消了广播,改用多播和任播:
IPv4: 192.168.1.255 (广播地址)
IPv6: ff02::1 (所有节点多播地址)
Q5: 如何从 IPv4 思维转换到 IPv6?
A:
IPv4: 192.168.1.25/24 → 网络192.168.1.0,主机25
IPv6: fd00::25/112 → 网络fd00::,主机25
关键是把 /112 理解为类似 IPv4 /24 的概念!
实际操作参考
地址分配示例
网络:fd00::/112
节点分配:
- 节点1:fd00::25 (x.x.x.25)
- 节点2:fd00::174 (x.x.x.174)
- 节点3:fd00::175 (MetalLB负载均衡器)
- 网关:fd00::1
配置示例
# 添加 IPv6 地址
ip -6 addr add fd00::25/112 dev eth0
# 查看地址
ip -6 addr show dev eth0
# 测试连通性
ping6 fd00::174
# 查看路由
ip -6 route show
📝 总结
-
fd00::25/112 可以理解为:
- 网络部分:fd00:: (前112位)
- 主机部分:25 (后16位)
- 相当于 IPv4 的 192.168.1.25/24
-
为什么能互通:
- 同一子网 (fd00::/112)
- 直连路由存在
- 物理网络连通
-
关键概念转换:
IPv4 概念 → IPv6 对应概念 子网掩码 → 前缀长度 (/112) 网络地址 → 网络前缀 (fd00::) 主机地址 → 接口标识符 (25) 广播地址 → 多播地址
记住:把 /112 想象成类似 IPv4 /24 的子网,就很容易理解了! 🎯
文档创建时间:2025-10-24
适用场景:Kubernetes IPv6 网络配置与故障排查
1780

被折叠的 条评论
为什么被折叠?



