“旁路由到底能不能完美支持IPv6?我的设备有公网IPv6,但一开OpenClash就上不了网”——这是无数软路由玩家在折腾IPv6时遇到的共同困境。
很多人以为IPv6和OpenClash天生八字不合,要么彻底关掉IPv6保代理,要么放弃代理保IPv6。但事实上,通过正确配置,两者完全可以共存。本文将提供一套从零开始的完整配置方案,让OpenWrt旁路由上的OpenClash既能稳定代理,又能让设备正常获取和使用IPv6地址。
先搞清为什么IPv6容易“绕开”旁路由
在主路由+旁路由的拓扑中,大多数设备通过主路由的DHCP获取IPv4和IPv6配置。IPv4网关可以手动指向旁路由,但IPv6的配置更复杂——主路由通过路由器通告(Router Advertisement,RA)自动向局域网设备宣告IPv6前缀和网关信息。如果旁路由没有干预RA,设备拿到的主路由IPv6网关会直接指向主路由,IPv6流量完全不经过旁路由,自然也就绕过了OpenClash。
所以旁路由支持IPv6的核心思路是:让设备使用旁路由作为IPv6网关,或者让OpenClash能够正确处理经过的IPv6流量。
网络拓扑规划:先画好图再动手
以一个典型的家庭网络为例:
- 主路由IP:`192.168.1.1`(开启DHCP,负责分配IPv4和IPv6地址)
- 旁路由IP:`192.168.1.2`(OpenWrt + OpenClash,关闭DHCP)
- 需要代理的设备:手动将IPv4网关和DNS指向`192.168.1.2`
- 不需要代理的设备:保持自动获取,网关仍为主路由
旁路由建议通过LAN口连接主路由的LAN口,旁路由的WAN口可以不用。在OpenWrt的网络→接口中,将LAN口的IPv4网关设为主路由IP(`192.168.1.1`),DNS设为旁路由自身(`127.0.0.1`)。务必关闭旁路由的DHCP服务器,避免与主路由冲突导致设备无法获取IP。
OpenWrt基础配置:先让旁路由站稳
配置LAN口:登录OpenWrt LuCI管理界面,进入“网络”→“接口”,编辑LAN口:IPv4地址设为`192.168.1.2`(或你规划的其他静态IP);IPv4网关设为主路由IP`192.168.1.1`;使用自定义的DNS服务器填入`127.0.0.1`。
关闭DHCP:在同一页面的“DHCP服务器”选项卡中,勾选“忽略此接口”,让旁路由不参与IP地址分配。
防火墙调整:进入“网络”→“防火墙”,将转发(Forward)策略设置为“接受”,确保流量能在主路由和旁路由之间正常转发。
安装与配置OpenClash
如果OpenWrt固件中没有预装OpenClash,需要手动安装。推荐使用Meta内核(mihomo),对IPv6的支持更完善。
安装步骤:下载`luci-app-openclash`的IPK安装包(版本`0.46.137`及以上),通过OpenWrt的“系统”→“文件传输”上传并安装。安装后在“服务”菜单中会出现OpenClash。
下载核心:首次打开OpenClash时,需要先下载核心(Core)。在“插件设置”→“版本更新”中,点击“检查更新”并下载Meta内核(推荐)。如果下载失败,可以手动下载后上传。
导入订阅:在“配置订阅”中添加你的订阅链接,设置自动更新时间(建议每天一次),保存并点击“更新配置”。更新成功后,在“运行状态”中会看到节点数量。
核心配置:让OpenClash与IPv6“握手言和”
这是整套方案最关键的部分。以下设置需要逐项核对。
模式设置:进入“插件设置”→“模式设置”,运行模式选择 Fake-IP(混合模式) 或 Fake-IP(TUN-混合模式) 。TUN混合模式对UDP和IPv6的支持更全面。代理模式选择“Rule(规则)”。
关于Fake-IP的说明:Fake-IP模式与Redir-Host模式在DNS处理上不同。如果你的环境DNS解析有异常,可以尝试切换到Redir-Host模式。但Fake-IP模式在性能上通常更优。
DNS设置:进入“插件设置”→“DNS设置”,勾选“自定义上游DNS服务器”;勾选“追加上游DNS”;勾选“Fake-IP持久化”,避免频繁更换IP导致连接不稳定;取消勾选“本地DNS劫持”,避免与OpenWrt自带的dnsmasq冲突;在Fake-IP-Filter中添加需要绕过Fake-IP的域名(如内网域名、特定服务域名)。
IPv6专项设置:进入“插件设置”→“IPv6设置”,勾选“允许IPv6类型DNS解析”;关于“IPv6流量代理”选项——如果节点支持IPv6出站,可以勾选;如果节点不支持IPv6,建议取消勾选(仅代理IPv4流量),但保留DNS解析。
让设备真正用上IPv6:主路由与旁路由的配合
上述配置完成后,OpenClash已经能够处理IPv6相关的DNS解析,但设备能否通过旁路由上网,还取决于主路由的IPv6分配方式。
方式一:主路由分配IPv6,设备手动指定IPv6网关(推荐)
在主路由上正常开启IPv6的DHCPv6和RA(路由器通告)。在需要使用代理的设备上,除了将IPv4网关设为旁路由IP外,还需要手动将IPv6网关也设为旁路由的IPv6地址。
具体操作因操作系统而异——Windows在网络适配器属性的“Internet协议版本6(TCP/IPv6)”中手动指定;macOS在“系统偏好设置”→“网络”→“高级”→“TCP/IP”中配置IPv6路由器地址。
方式二:让旁路由接管IPv6分配(复杂,不推荐新手)
在旁路由上安装`radvd`(IPv6路由器通告守护进程),配置RA通告,将旁路由设为IPv6网关。需要关闭主路由的RA或设置优先级。这种方式配置复杂且容易造成网络冲突,除非有明确的IPv6管理需求,否则不推荐。
方式三:关闭IPv6,只用IPv4(最简单)
如果确实用不上IPv6,可以在主路由或客户端设备上直接关闭IPv6。这是最省事的方案,但会牺牲IPv6的优势。
验证与故障排查
配置完成后,用以下方法验证是否成功:
IPv6连通性测试:访问`test-ipv6.com`,确认能获取到IPv6地址且能正常访问IPv6站点。
分流验证:访问`ipleak.net`或`ip.sb`,确认国外网站显示的是代理IP、国内网站显示的是本地IP。
常见故障:
- 无法获取IPv6地址:检查主路由的IPv6设置是否正常,确认DHCPv6和RA已开启。重启网络服务或设备刷新租约。
- 国外IPv6网站无法访问:检查OpenClash的IPv6设置中是否勾选了“允许IPv6类型DNS解析”;确认节点是否支持IPv6出站;如果节点不支持IPv6,取消勾选“IPv6流量代理”,仅保留DNS解析。
- DNS泄漏:确认OpenClash的DNS设置中已勾选“自定义上游DNS服务器”和“追加上游DNS”;在客户端检查DNS是否指向了旁路由;设备上的IPv6 DNS如果指向主路由,可能导致DNS泄漏。
- 部分App图片加载慢:Fake-IP模式下少数App可能存在问题。尝试在Fake-IP-Filter中添加相关域名白名单,或切换到Redir-Host模式。
OpenWrt旁路由+OpenClash+IPv6,这三者并非天生排斥。只要理解了网络流量路径和DNS解析逻辑,配置起来并不复杂。核心要点可以总结为:旁路由站稳脚跟(IP/网关/DHCP)→ OpenClash选对模式(Fake-IP/TUN)→ DNS和IPv6各司其职(允许解析、按需代理) 。按照上述步骤操作,就能让OpenClash在旁路由模式下稳定运行,同时让设备享受IPv6带来的便利。
华纳云香港云服务器采用双向CN2 GIA精品线路,为部署各类网络服务和代理工具提供稳定流畅的网络环境——无论你是搭建自己的代理节点,还是测试OpenWrt的远程配置,一台配置充裕的云服务器都能让折腾事半功倍。
相关内容
