目的

通过配置光猫的拨号功能和 OpenWrt 旁路由,我们期望实现以下目标:

  1. 自动设置 OpenWrt 为网关:所有接入网络的设备无论是 IPv4 还是 IPv6 ,都自动将 OpenWrt 设置为网关。
  2. 网络优化功能生效:OpenWrt 上部署的各种网络优化功能,比如 Adblock 、QoS 等,在所有流量中有效。
  3. 支持独立公网 IPv6 地址:在宽带提供 IPv6 支持时,终端设备能够分配独立的 IPv6 公网地址。

IPv4 配置步骤

以下配置截图说明基于我设备信息如下

光猫 ipv4 局域网地址为 192.168.31.1 ipv6 本地链路地址为 fe80::1

Openwrt ipv4 局域网地址为 192.168.31.2 ipv6 本地链路地址为 fe80::8e53:c3ff:fedc:560e

IPv4 的配置相对简单,因为其地址分配方式只有一种:DHCP 。

  1. 关闭光猫 DHCP 服务

    • 登录光猫的超级管理后台(不同品牌的光猫后台操作略有不同,参考设备手册或相关教程)。
    • 关闭光猫上的 DHCP 服务器。
  2. 配置 OpenWrt 接口

    • 在 OpenWrt 后台,新建接口LAN并设置为静态地址,例如:
      • IP 地址:192.168.31.2
      • 子网掩码:255.255.255.0
      • 网关地址:192.168.31.1
    • 开启 OpenWrt 的 DHCP 服务。
    • 默认情况下,OpenWrt 会分配 IP 地址并将自己设置为网关( Gateway )和 DNS 服务器。

IPv4 完成后启用效果

  • 所有通过 IPv4 接入网络的设备将自动获取由 OpenWrt 分配的 IP 地址,同时将其设置为默认网关和 DNS 。

IPv6 配置步骤

相比 IPv4 ,IPv6 的配置更加复杂,因为 IPv6 有两种地址分配和管理方式:

  • DHCPv6(动态主机配置协议,分配 IPv6 地址)。
  • RA(路由通告,设置默认网关)。

IPv6 默认行为的问题

  1. 默认情况下,光猫会同时启用DHCPv6RA服务。
    • 如果我们模仿 IPv4 的做法,将 DHCPv6 服务从光猫移到 OpenWrt ,会发现设备仍然会从光猫获取默认 IPv6 路由,这将导致设备的 IPv6 流量绕过 OpenWrt 。
  2. 如果将DHCPv6RA全部迁移到 OpenWrt:
    • 设备无法获取公网 IPv6 地址,因为公网前缀在光猫端,OpenWrt 只能分配局域网范围内的 IPv6 地址。

IPv6 解决方案

经过权衡,选择如下策略:

  • 光猫负责 DHCPv6:用于分配公网 IPv6 地址。
  • OpenWrt 负责 RA 服务:用于配置 IPv6 网关。

配置步骤

1. 配置光猫

  • 关闭 RA 服务:登录光猫超级管理后台,找到 IPv6 设置,关闭 RA 服务器。
  • 开启 DHCPv6:确保 DHCPv6 服务启用,用于向设备分配公网 IPv6 地址。

2. 配置 OpenWrt

2.1 为lan6接口配置 DHCPv6 客户端
  • 新建接口lan6
    • 协议:DHCPv6 客户端
    • 请求 IPv6 地址强制
    • 请求 IPv6 前缀长度禁用(另一种方法是获取前缀再由 OpenWrt 分配设备,但实践中不稳定,因此禁用)。
    • 使用默认网关:勾选。
2.2 配置lan接口的 RA 和 DHCPv6 中继
  • lan接口设置,在“DHCP 服务器”中配置:
    • RA 服务:设置为服务器模式
    • DHCPv6:设置为中继( Relay )
  • 在“IPv6 RA 设置”中:
    • 默认路由器( Default Router ):强制其他默认
    • RA 标记:受管配置(M), 这样设备会尝试使用 DHCPv6 获取 IP 地址,但是其他配置使用 RA 的。

配置截图参考

以下是相关配置的截图:

光猫 RA 配置

光猫 RA 配置

光猫 DHCPv6 配置

光猫 DHCPv6 配置

OpenWrt lan6接口设置

lan6 接口配置

OpenWrt lan接口 RA 服务设置

lan 接口 RA 服务设置 1 lan 接口 RA 服务设置 2


验证配置效果

检查设备获取的 IPv6 地址和路由

通过配置,可以得到以下结果:

  1. 客户端设备通过 DHCPv6 从光猫获取独立的公网 IPv6 。
  2. 客户端设备通过 RA 服务将 OpenWrt 设置为默认网关。
  3. 全部 IPv6 流量经过 OpenWrt ,完成网络优化和其他功能的部署。

以下是示例验证截图:

客户端 IPv6 地址和路由

Windows

Windows 效果

Linux

Linux 效果


总结

通过上述步骤,我们成功实现了光猫拨号+OpenWrt 旁路由的家庭网络配置目标:

  1. IPv4 流量:通过关闭光猫 DHCP 和启用 OpenWrt DHCP ,所有 IPv4 流量通过 OpenWrt 网关。
  2. IPv6 流量:通过光猫分配公网 IPv6 地址、OpenWrt 负责 RA 服务,确保设备流量集中通过 OpenWrt 网关。

这一配置方案在家庭环境中可实现高效的网络控制以及完整的 IPv6 支持。

上述方案是我踩坑很久一点点摸索出来的,如有问题希望各位指正。 当然用 Openwrt 当主路由拨号方便拉,但是现在的光猫性能也不算太差,只做猫有点浪费。

举报· 123 次点击
登录 注册 站外分享
快来抢沙发
0 条回复  
返回顶部