PassWall 和 OpenClash 对比:按订阅、硬件与 DNS/TUN 选择
简答:如果你已有 Clash YAML、依赖策略组和复杂规则,先核对 OpenClash 与 Mihomo 的字段兼容性;如果你更关注 Xray、sing-box、Hysteria 等核心组合,则先核对 PassWall 当前仓库和软件包。低配置路由器不要先看“谁更快”,应先确认架构、闪存、内存、DNS 接管、TUN、UDP 和 fw4/nftables 是否满足需求。
定义:PassWall、PassWall2 和 OpenClash 都属于 OpenWrt 网络流量管理组件,但 OpenClash主要管理 Mihomo 内核,而 PassWall 与 PassWall2 分别由独立项目维护,不能简单理解为同一个插件的新旧版本。
先用五项速查表决定看哪一套
本文是第三方技术指南,目标是帮助你完成 OpenWrt 上的插件选型、订阅导入与连接排查;版本、安装包和依赖请以各项目当前公开仓库为准。先回答下面五个问题,再决定从哪套方案开始。
| 先核对的问题 | 如果答案是“是” | 优先查看 | 下一步 |
|---|---|---|---|
| 手里已有 Clash YAML、策略组或规则覆写 | 需要沿用现有配置模型 | OpenClash | 检查 YAML 字段是否被当前 Mihomo 内核支持 |
| 需要在 Xray、sing-box、Hysteria 等核心之间选择 | 核心组合比界面更重要 | PassWall | 查看当前仓库的 feeds、核心包和目标架构 |
| 路由器是低闪存、低内存或 MT7621 类设备 | 空间和组件数量受限 | 两者都要先做资源核对 | 只启用一个核心、较少规则和必要的 DNS/TUN 功能 |
| 需要复杂分流、多订阅、策略切换 | 配置管理能力更重要 | 先看 OpenClash 的配置与订阅功能 | 用脱敏配置验证规则、代理组和订阅更新 |
| 需要 UDP、IPv6 或 TUN | 透明代理链路更复杂 | 两者都不能只凭名称判断 | 单独测试 DNS、IPv4、IPv6、TCP 和 UDP |
最快结论:配置格式决定入口,核心类型决定兼容边界,硬件资源决定能否稳定运行,DNS/TUN/UDP 决定是否适合家庭多设备和实时流量。没有同一硬件、同一节点、同一规则集下的对照数据,就不能据此宣称某一方一定更快。
PassWall、PassWall2、OpenClash 和内核不是同一层级
OpenClash的项目 README 将其定义为运行在 OpenWrt 上、用于管理 Mihomo(原 Clash Meta)内核的 LuCI 插件。公开说明列出 Mihomo 与 Smart 内核、redir-host、fake-ip、混合模式、TUN、多订阅、配置切换、YAML 覆写以及 iptables 和 nftables 兼容路径。查看 OpenClash README
PassWall的公开仓库把 LuCI 插件与配套软件包分开接入,并在构建说明中列出 Xray、sing-box、Hysteria、Shadowsocks、NaiveProxy、Trojan 相关的软件包名称。这个事实说明其软件包生态覆盖多个核心或网络组件,但不代表每个固件、每个版本都已经安装或支持所有功能;实际使用仍要核对目标架构、OpenWrt 版本和依赖。查看 PassWall 项目仓库
PassWall2不是本文根据名称推断出的“PassWall 新版”。PassWall2 有单独的公开仓库和独立的 LuCI 应用说明,安装时也要求按路由器的包管理器、架构和依赖选择 IPK 或 APK。查看 PassWall2 项目仓库
因此,比较时应拆成四层:LuCI 管理界面、实际运行的核心、订阅或配置格式,以及 OpenWrt 防火墙和 DNS 接管方式。只看“PassWall”或“OpenClash”这几个名称,无法推出协议兼容性、资源占用或速度。
核心对比:订阅格式、DNS、TUN、UDP 与防火墙
| 对比项 | PassWall | OpenClash | 如何核验 |
|---|---|---|---|
| 主要定位 | OpenWrt LuCI 管理组件,配合多个软件包和核心使用 | OpenWrt LuCI 插件,主要管理 Mihomo 内核 | 查看各自 README 和当前 Release |
| 核心与协议 | 公开仓库的软件包列表包含 Xray、sing-box、Hysteria、Shadowsocks 等组件;实际可用项取决于版本、架构和依赖 | README 明确列出 Mihomo、Smart 及 Shadowsocks、VMess、VLESS、Trojan、TUIC、Hysteria 等协议 | 检查当前核心是否已安装,并查看启动日志 |
| 订阅与配置 | 不能默认把 Clash YAML 当作通用格式,需看所选核心和导入方式 | 更适合围绕 Mihomo 配置、代理组、规则和 YAML 覆写核对 | 先下载脱敏配置,检查格式、字段和解析行号 |
| DNS 模式 | 取决于所选核心、监听端口和透明代理方案 | 公开配置项包含 fake-ip、redir-host、DNS 重定向、Fake-IP 过滤和 IPv6 DNS | 检查 dnsmasq、DNS 监听、劫持、IPv6 和局域网域名 |
| TUN 与 UDP | 取决于核心、kmod-tun、路由表和防火墙配置 | README 列出 TUN、kmod-tun、UDP 代理以及 nftables/iptables 依赖路径 | 分别测试 TCP、UDP、TUN 设备和规则命中 |
| 防火墙后端 | 需确认当前组件是否适配 fw3 或 fw4 | README 同时提供 iptables 和 Firewall4/nftables 依赖说明 | 执行 fw4 print,不要只照抄旧版 iptables 教程 |
OpenWrt 22.03.0 起,默认防火墙从基于 iptables 的 firewall3 迁移到基于 nftables 的 firewall4;OpenWrt 官方文档说明,22.03 及以后可用 fw4 print 查看由 fw4 生成的规则。旧教程中的自定义 iptables 规则、模块名和脚本不能直接视为新系统可用。查看 OpenWrt 22.03.0 发布说明 查看 OpenWrt Netfilter 管理文档
按硬件和使用场景选择:建议不是测速排名
本次检索没有找到在同一硬件、同一节点、同一规则集和同一时间窗口下,对 PassWall 与 OpenClash 做出的可复核吞吐、延迟、内存和断流对照数据。因此下面是配置决策建议,不是性能排名。
- MT7621 或其他低配置家用路由器:先查看系统架构、剩余闪存、内存和可用软件源。OpenWrt 官方资料将
mipsel_24kc定义为小端 MIPS 32 位指令集;实际设备仍应以ubus call system board和系统报告为准。优先少装组件、少启用规则,避免同时运行多个核心和复杂 TUN。查看 OpenWrt mipsel_24kc 说明 - ARM64 小主机:如果订阅已经是 Clash YAML,并且依赖代理组、规则覆写和多配置切换,先核对 OpenClash;如果需要按协议更换 Xray、sing-box 等核心,先核对 PassWall 的软件包和依赖。
- x86 软路由及 N100、J4125、N5105:不要只看 CPU 型号。更应检查规则集大小、DNS 设计、IPv6 接管、UDP 需求、家庭终端数量和日志中的断流情况;本文不提供未经同条件验证的吞吐数字。
- 普通网页和少量设备:优先选择能稳定导入配置、日志清楚、回滚简单的一套,不要为了少数特殊协议启用全部组件。
- 游戏、实时通信或 UDP:网页能打开不等于 UDP 正常。必须单独确认节点、核心、透明代理模式、防火墙和目标应用的 UDP 路径。
- 多订阅和复杂分流:重点比较配置备份、规则更新、代理组切换、失败回滚和 DNS 命中,而不是只比较插件名称。
照着做:五步完成选型与可复现测试
- 记录设备环境:SSH 执行
ubus call system board查看架构,执行df -h查看存储;内存可先执行free,若输出过于简略,再执行cat /proc/meminfo。不要把其他架构的安装包混装。 - 确认包管理器:执行
opkg --version或apk --version,再按项目 Release 中的 IPK 或 APK 选择安装方式。OpenClash README 明确要求从其 Release 页面选择对应架构的安装包,并在 LuCI 的“系统 → 软件包”上传安装。查看 OpenClash 安装路径 - 备份配置:进入 LuCI 的“系统 → 备份/升级”导出配置;同时保存插件中的订阅名称、规则覆写和 DNS 设置。不要公开含真实订阅链接、访问令牌或节点信息的文件。
- 一次只让一套组件接管:首次测试时停用另一套透明代理组件,确认默认网关、DNS 监听端口和防火墙规则,避免两个组件同时修改 DNS、路由或 nftables。
- 固定测试条件:使用同一节点、同一终端、同一规则集和相近时间,记录启动结果、CPU、内存、DNS 解析、网页延迟、丢包、UDP 可用性、IPv6 是否绕过和断流次数。测试期间不要临时更换节点或更新规则。
如果使用 fake-ip 或 TUN,要把 DNS 劫持、fake-ip 地址池、TUN 路由和 IPv6 行为分开记录。OpenClash 的公开配置项包含 fake-ip、redir-host、TUN、UDP、IPv6 及 DNS 重定向等参数,但具体字段能否使用,仍以当前内核的配置校验结果为准。查看 OpenClash 默认覆写参数
安全与隐私:订阅转换和安装包要单独核验
订阅链接通常具备访问配置或节点信息的能力,因此不要把真实订阅交给来历不明的在线转换服务,也不要把完整链接粘贴到公开工单、论坛或截图中。若必须转换,先使用脱敏副本,转换后检查返回的域名、节点字段、规则地址和 User-Agent,确认没有额外插入未知配置。
安装包也应从项目公开仓库或 Release 页面核对,不要把第三方下载站、网盘转存包或聊天窗口里的二进制文件当作项目官方版本。PassWall2 的 README 特别提醒,使用 APK 的 --allow-untrusted 参数会绕过包签名验证;这类安装方式应先确认文件来源和校验信息,无法核验时不要继续。查看 PassWall2 安全提示与安装说明
升级前保留配置备份,首次启动只启用必要核心;如果出现无法上网,先停止当前接管组件、恢复备份、重启 DNS 和防火墙,再逐项恢复功能。
常见故障:先定位层级,再决定是否更换插件
- 启动失败:先检查核心文件、执行权限、CPU 架构、依赖包、kmod-tun 和防火墙后端,再看日志。插件页面能打开,不代表核心已经正常运行。
- YAML 报错:记录报错行号,检查缩进、重复键、引号、规则字段和当前 Mihomo 版本支持情况。不要把其他客户端的扩展字段直接复制到路由器配置。
- 节点导入失败:区分订阅链接不可访问、返回内容格式不对、编码异常和核心不支持节点字段四种情况。先下载脱敏返回内容,再查看文件头和日志。
- DNS 泄漏或国内域名变慢:检查 dnsmasq 监听端口、插件 DNS 端口、fake-ip 或 redir-host、IPv6 DNS,以及终端是否硬编码 DNS。OpenWrt 22.03 及以后可执行
fw4 print检查实际规则。 - UDP 不通:分别测试节点能力、核心能力、TUN 或透明代理模式、nftables 规则和目标应用;不要用网页访问结果代替 UDP 测试。
- IPv6 绕过:确认插件是否接管 IPv6、终端是否获得 IPv6 地址、DNS 是否返回 AAAA 记录,以及防火墙是否存在 IPv6 路径。临时关闭 IPv6 可以帮助定位,但不等于长期解决方案。
- 切换后无法上网:停止当前组件,恢复 LuCI 备份,重启 DNS 和防火墙,先恢复基础网络,再单独启动一个组件。
最终选择清单
选择顺序建议固定为:第一,订阅是 Clash YAML、单节点链接还是其他格式;第二,是否必须使用 Mihomo、Xray、sing-box 或其他核心;第三,设备架构、闪存和内存是否满足依赖;第四,是否需要 DNS 接管、fake-ip、redir-host、TUN、UDP 或 IPv6;第五,当前 OpenWrt 使用 fw3 还是 fw4/nftables;第六,是否能备份、测试并在失败后回滚。
如果配置格式、策略组和规则覆写是重点,先阅读 OpenClash 的 README 与当前 Release;如果核心组合和软件包来源是重点,先阅读 PassWall 或 PassWall2 的对应仓库。版本号、安装包名称和依赖会变化,本文以 2026-10-20 检索到的公开资料为依据,实际安装前仍应再次核对项目发布页。
常见问题
PassWall 和 OpenClash 哪个速度更快?
不能仅凭项目名称给出可靠排名。本次检索没有找到同一硬件、同一节点、同一规则集下的可复核对照数据。应固定测试条件,分别记录吞吐、延迟、丢包、CPU、内存、DNS 和断流情况。
PassWall 能直接导入 OpenClash 的 YAML 吗?
不能默认认为可以。是否兼容取决于订阅格式、当前核心、字段和导入方式。建议先保存脱敏配置,查看解析错误的行号和字段,再决定重新生成配置或使用对应转换方式。
PassWall、PassWall2 和 OpenClash 是同一个东西吗?
不是。OpenClash 是主要管理 Mihomo 的 OpenWrt LuCI 插件;PassWall 和 PassWall2 分别由独立公开仓库维护,配置模型、软件包和安装方式不能只凭名称推断。
OpenWrt 22.03 以后还能照旧教程使用 iptables 吗?
需要谨慎。OpenWrt 22.03 默认使用 firewall4 和 nftables,旧教程中的自定义 iptables 规则、模块和脚本可能不适配。先确认系统版本,再用 <code>fw4 print</code>查看实际规则。
两个插件可以同时安装吗?
是否能共存取决于固件、依赖、端口和防火墙配置,但首次排查不建议让两套组件同时接管流量。更稳妥的做法是先备份,停用一套透明代理,只启动另一套并逐项验证 DNS、IPv4、IPv6 和 UDP。
出现 DNS 泄漏时应该先换插件吗?
不必先换插件。先检查 dnsmasq 监听、插件 DNS 端口、DNS 劫持或 fake-ip 模式、IPv6 DNS、终端硬编码 DNS 和 fw4 规则。确认配置和规则都正确后,再判断是否存在组件兼容问题。
MT7621 路由器适合安装哪一个?
不能只按 MT7621 型号直接下结论。先确认设备架构、闪存、内存和软件源,再选择能少装组件、少启用规则的一套;如果需要 TUN、复杂 DNS 或多核心,必须先做空间和内存检查,不要照搬高配置软路由教程。
相关阅读
参考资料
- OpenClash README:定位、核心、协议、安装与依赖
- PassWall 项目仓库:feeds 与配套核心软件包
- PassWall2 项目仓库:LuCI 应用、安装方式与安全提示
- OpenWrt 22.03.0 发布说明:Firewall4 与 nftables(openwrt.org)
- OpenWrt Netfilter 管理文档:fw4 print 与规则排查(openwrt.org)
- OpenWrt mipsel_24kc 指令集说明(openwrt.org)
- OpenClash 默认覆写参数:DNS、TUN、IPv6 与运行模式