duyxx 发表于 2011-5-24 13:43:54

ipv6前缀长度问题

ipv6的前缀长度有限制吗?
3002:428:ff01:ff03:abcd:2d9d:fe08:a987/96
后面这个96是不是要小于128均可以?

满天星 发表于 2011-5-24 21:28:38

是的,不过目前在PC或客户端或网络设备普遍都使用64位前缀,方便根据EUI-64生成接口ID!不过有些操作系统(比如XP),当路由通告RA发布的前缀比64大时可能导致EUI-64地址生成失败,而无法正确获取IPv6地址出现。且XP也不支持配置IPv6前缀,默认就是64了,这和早期的操作系统实现有关系。但不影响前缀长度的定义,仅仅是操作系统的局限而已……
正常处理的IPv6设备是应该可以手工配置这种前缀长度的。而且在网络设备的loopback等接口一般也直接使用128位前缀。

martinldh 发表于 2011-5-25 23:00:16

看过一篇文章,具体内容忘记了。里面提到一句实际上,可以用于自由分配的网络前缀,实际上是2的64次方个地址,而不是2的128次方,言外之意就是实际上低64比特,对于设备或者终端来讲,获取方式一般情况下,主要是通过所谓改进的EUI64算法生成。

满天星 发表于 2011-5-26 00:07:08

嗯,2的64次方个地址是有一定的道理!但并不能说是绝对的,这还是依赖于具体的软件或硬件实现!协议都是高手开发或设计出来的嘛,好的设计完全可以解决这个问题。
其根本是原因是要需要使用EUI-64生成客户端IPv6地址导致的(基本可保证地址不会重复)
如果不使用EUI-64生成地址,而直接使用一种可靠的算法来生成地址就OK了!
对算法的要求稍微高一些,需要保证分配的地址不会重复,DAD冲突检测机制,甚至还需要状态表来记录已经分配的地址与PC的对应关系(比如日志网管的要求等,避免类似NAT的难以溯源问题),还有很多需要考虑的部分,仅仅是个人观点,没具体研究过……
DHCPv6中和Windows中都有生成临时地址和永久地址的选项,临时地址采用算法实现,用于隐藏真实MAC地址,大部分互联网通讯都会使用,而永久地址一般都会根据MAC生成。
这里有关于临时地址的介绍:
IPv6地址中基于EUI-64生成接口ID的规则

duyxx 发表于 2011-5-26 10:18:32

呵呵 顶了:)
页: [1]
查看完整版本: ipv6前缀长度问题