关于在OpenWRT上如何配置IPv6的方法,自己总结的一点,欢迎各位大神们指正错误!硬件为网件(Netgear)WNDR 4300/3700,OpenWRT固件为Chaos Calmer 15.05.1
1. OpenWRT IPv6主要实现方式有以下几种:IPv6 中继
IPv6 穿透
IPv6 NAT下文皆假设OpenWRT为初始化配置2. IPv6 中继2.1 简介中继模式可以让接入客户端获取原生的IPv6地址,OpenWRT路由器也获取了一个IPv6地址。如图2-1所示,所有接入的客户端将IPv6流量转发到OpenWRT路由器的IPv6地址,然后OpenWRT路由器再将流量转发到其IPv6网关,同时IPv4的NAT模式不受影响。2.2 配置实现方式有两种方式可以实现IPv6中继:Barrier Breaker 14.07版本之后,不再支持,不推荐使用
Barrier Breaker 14.07版本之后推荐使用,不是很稳定。升级到Chaos Calmer 15.05.1稳定性提高很多,但是IPv6网络仍会偶尔中断配置文件修改OpenWRT在默认情况下,会分配一个IPv6私网地址段,登录网页管理,在Network->Interfaces页面底下有Global network options->IPv6 ULA-Prefix这里应该有一个随机的fd开头的/64IPv6地址段,清空该地址并保存SSH登录路由器,修改/etc/config/dhcp文件,添加如下部分,使用无状态地址自动配置(SLAAC)IPv6,不使用DHCPv6。
config dhcp 'lan'
option dhcpv6 'disabled'
option ra 'relay'
option ndp 'relay'
config dhcp 'wan6'
option interface 'wan'
option dhcpv6 'disabled'
option ra 'relay'
option ndp 'relay'
option master '1'
修改之后保存,重启odhcpd服务,否则接入终端无法获取IPv6地址
配置保存这种方式可以让接入路由器的终端,获取原生的IPv6地址。需要注意的是,每次路由器重启上述配置并不会生效,需要重启下odhcpd服务,接入路由器的终端方可获取IPv6地址。可以在开机启动脚本/etc/rc.local中添加如下脚本,每次