win7下解决错误ipv6路由广播(2002:开头)
2011年7月5日
今天运气很背,居然遭遇了2002开头的ipv6路由广播,具体症状是无法上ipv6网站,无法上ipv6的vpn。检测方法如下:(以下命令都在所有程序->附件->命令提示符下进行,注意是Win7环境)
tracert 2001:470:c:662::2
返回第一个结果是自己的电脑 解析地址是 2002:....
联想到我校45楼乙常年无法ipv6的悲剧,我想,理科楼不会也这个熊样吧…. = =
于是,上网找到了这篇东西:解决错误的IPv6路由广播的方法 这篇东西的思路是正确的,很不幸的,解决的代码不是universal的,甚至可以说,是完全错误的。
45楼乙今年就是11级的大一新生了,ipv6是美好的,下面我说说我对错误路由广播的解决办法,如果你是一名geek,希望你能少走些弯路,在命令提示符中运行:
1 | netsh interface ipv6 show prefixpolicies |
会得到下面的结果
1 | Precedence Label Prefix |
记住2002:/16
这个前缀的左边一栏的Precedence(中文系统可能叫做优先级?),你会看到还有一个前缀2001:/16
这个是正常的ipv6地址,现在它在2002:/16
的下方,我们需要把它的precedence调得足够的高,盖住2002:/16
。
现在假设2002:/16
的优先级别是30(这也是我受到的错误广播的优先级),那么,下一步就是设定2001:/16
的优先级顺序大于30。 运行:
1 | netsh interface ipv6 set prefixpolicy 2001:/16 35 1 persistent |
命令中的35
必须根据你的实际情况来调整,只要比2002:/16
的precedence大就行了。
看,ipv6是不是瞬间秒通了?嗯,45楼乙还是可以ipv6的~