开发实战指南
IPv6 前缀:压缩写法与子网边界
展开等价 IPv6 写法,按比特掩码判断网段,避免字符串前缀比较。
展开等价写法
双冒号压缩一段连续零组,在地址中只能出现一次,每组前导零也可省略。
不同字符串可能表示同一个 128 位地址,应比较解析值,不是显示文字。
2001:db8::1
2001:0db8:0000:0000:0000:0000:0000:0001
Same address.按前缀掩码判断
/64 固定前 64 比特,不是压缩字符串的前几个字符,剩余 64 比特是主机部分。
用子网工具归一化网络并检查端点,startsWith 不能判断网段归属。
2001:db8:1234:5678::/64
Inside: 2001:db8:1234:5678::abcd
Outside: 2001:db8:1234:5679::1不要套用 IPv4 广播减法
IPv6 不使用 IPv4 式广播地址,2 的 128-p 次方数量不应一概套用减二。
部署仍可能保留地址或约束子网,不能把所有数值地址都称为可用。
处理 URI 方括号与区域标识
URL authority 中 IPv6 字面地址需要方括号,以区别端口,本地链路地址还可能需要接口区域标识。
这些属于外层语法与作用域,不改变子网比特,公开样例使用文档前缀 2001:db8::/32。