跟上时代:OpenWrt路由器配置直接拨号和IPv6的两种方案

发布于 — 2020 年 06 月 07 日

我的原有网络环境

  • 联通家宽、光猫桥接、路由拨号。
  • 拨号完成之后路由器有IPv6 IP,但LAN口设备均无法IPv6联网。

配置直接拨号

  1. 以超管账号登录光猫(这个链接可能对如何获取超管账号有帮助),记下当前网络设定的所有数据做备份.特别记住当前活跃的路由链接的VLAN ID和8021p优先级,如果不知道自己宽带的账号密码,也要记住光猫拨号栏提供的账号密码(密码那一栏需要右键点调查元素,然后把高亮代码的password改成text,或者直接咨询客服)

  2. 删除光猫配置的所有WAN连接,新建一个WAN连接,连接模式选INTERNET,协议选IPv4&v6,启用VLAN(若原来未启用就不用启用),8021p优先级保持默认,绑定端口选择网线连接的那个端口。

  3. 重启光猫,登录路由器管理面板,网络-接口-WAN切换协议为PPPoE,填自己账号密码,保存设置。(此时光猫已无法访问,上面那个链接给出了访问的途径)

配置IPv6,让LAN口设备正常联网

每一步都要保存设置。

方案一

  1. 网络-接口-WAN-高级设置里,获取IPv6的方式改为手动。

  2. 添加接口,名字自取(若已有WAN6虚拟接口则无需添加),协议选DHCPv6,接口自定义,填”@WAN”(若已设置多播,则需要@你指定的能获取到IPv6地址的接口)

  3. 接口-全局里清空IPv6 ULA前缀

  4. 网络-DHCP/DNS-服务器设置-高级设置取消勾选“禁止解析IPv6 dns记录”

  5. 网络-防火墙-基本设置-转发改为接受,下方区域里第二条(WAN区域到lan的转发)入站数据、出站数据、转发全部改为接受,另外修改第一条(lan区域到WAN的转发,点修改)常规设置-覆盖网络,确保勾选再第二部新建/修改的接口和lan口,端口转发下面的两个复选框也都勾上

  6. 网络-负载均衡-策略里,修改balanced策略的备用成员为默认(使用主路由表)

方案二:原生NAT6

  1. 确认ip6tablestracepath6kmod-ipt-nat6 均已被安装(系统-软件包里可看)

  2. 用SSH或winscp等进入终端,更改/etc/config/network文件内容,在config interface 'lan'下添加一行:

    1
    
    option ip6addr 'fc00:100:100:1::1/64'
    
  3. 更改/etc/config/dhcp文件,将config dhcp 'lan'那一栏改为以下内容:

    config dhcp 'lan'
    option interface 'lan'
    option start '100'
    option limit '150'
    option leasetime '12h'
    option dhcpv6 'server'
    option ra 'server'
    option ra_management '1'
    option ra_default '1'
    
  4. 更改/etc/firewall.user,假设WAN对应的接口为eth0.2,则添加以下内容:

    ip6tables -t nat -A POSTROUTING -o eth0.2 -j MASQUERADE
    
  5. 使用tracepath6 -b tv.byr.cn命令,获取目前网络的IPv6网关地址(找最上面的IPv6地址),假定是2001:1234:1234:1234::1

  6. 使用route -A inet6 add default gw 2001:1234:1234:1234::1命令,为路由器添加默认网关。这一步非常重要,不进行的话是上不了IPv6的。。。完成之后,连接到路由器的计算机应该可以访问IPv6网站了。

  7. 重启之后,需要重新添加网关,如果要做到路由器开机自动添加该网关,可以在/etc/hotplug.d/iface/下新建一个文件90-IPv6,给予可执行权限,内容为(注意替换为自己的网关地址)

    #!/bin/sh
    [ "$ACTION" = ifup ] || exit 0
    route -A inet6 add default gw 2001:1234:1234:1234::1