mudfish-exclude 用户指南
Mudfish Cloud VPN v6.5.4 或更高版本支持 mudfish-exclude 程序。
mudfish-exclude 是在Mudfish 路由策略之外运行Linux 指定的程序的工具。
当您想要继续运行但只允许特定程序(例如浏览器、Messenger、游戏启动器和更新程序)使用通用 Internet 路径时,请使用 Mudfish。
支持环境
mudfish-exclude 仅适用于 Linux。
您的系统上需要以下项目:
- Mudfish 为 Linux
sudo或 root 权限- cgroup v2 安装在
/sys/fs/cgroup上 ip命令iptables- IPv4 默认路由
该工具针对 IPv4 流量。 IPv6 流量不会被转移到 mudfish-exclude。
基本用法
通过在程序前面添加 mudfish-exclude 来运行它。
sudo mudfish-exclude firefox
程序参数可以直接添加到程序名称的末尾。
sudo mudfish-exclude firefox --private-window
sudo mudfish-exclude curl https://mudfish.net
如果命令参数较多或者想清楚区分,请将要执行的程序写在--后面。
sudo mudfish-exclude -- firefox --private-window
即使您以 sudo 的身份运行它,实际运行的程序通常也会恢复为您当前用户的权限。因此,GUI 程序可以使用您常用的主目录、桌面会话和设置文件,而不是 root 设置。
跑步时的行为
当您启动命令时,mudfish-exclude 会创建仅适用于该命令的临时网络策略。来自该命令的流量被标记,然后发送至系统的常规 IPv4 默认路由。
当命令终止时,它会等到关联的进程组为空,然后删除临时规则。
Mudfish 本身不会关闭。其他程序将继续根据现有的 Mudfish 设置运行。
用法示例
从 Mudfish 运行 Firefox:
sudo mudfish-exclude firefox
从 Mudfish 运行 Discord:
sudo mudfish-exclude discord
从 Mudfish 运行 Steam:
sudo mudfish-exclude steam
运行命令行下载Mudfish:
sudo mudfish-exclude wget https://example.com/file.zip
手动设置和清理
这对于正常使用来说不是必需的。 mudfish-exclude 自动设置和组织策略。
如果您创建一次策略并需要使用同一策略运行多个程序,则可以按如下方式使用它。
sudo mudfish-exclude --setup
sudo mudfish-exclude --no-setup firefox
sudo mudfish-exclude --no-setup discord
sudo mudfish-exclude --cleanup
使用手动设置模式后,请务必运行 --cleanup 进行清理。
高级选项
大多数用户可以接受默认值。
| 选项 | 用途 | 默认 |
|---|---|---|
--cgroup NAME | cgroup v2 用于排除的程序的名称 | mudfish-exclude |
--mark VALUE | 防火墙 mark 值 | 0x6d660001 |
--priority VALUE | IPv4 rule 优先级 | 8252 |
--table VALUE | IPv4 路由表编号 | 8252 |
--setup | 创建和终止策略 | 关闭 |
--cleanup | 删除策略 并退出 | 关闭 |
--no-setup | 输入已经创建的策略并执行命令 | 关闭 |
仅当默认的 mark、优先级和表值与其他网络工具冲突或按照 Mudfish 支持的指示时才更改它们。
示例:
sudo mudfish-exclude --table 9000 --priority 9000 firefox
使用GUI程序时的注意事项
一些桌面程序重用已经运行的进程。例如,如果浏览器已打开,则运行 sudo mudfish-exclude firefox 将仅在现有浏览器中请求新窗口。在这种情况下,现有的浏览器进程可能不符合排除条件。
推荐方法:
- 完全关闭程序并以
mudfish-exclude身份再次运行。 - 如果您需要在浏览器中同时使用 Mudfish 路径和排除路径,请使用单独的配置文件。
- 不要只运行桌面快捷方式,还要运行实际的程序命令。
故障排查
network policy setup requires root
通过添加 sudo 来运行它。
sudo mudfish-exclude firefox
cgroup v2 is required at /sys/fs/cgroup
Linux 系统未在预期位置使用 cgroup v2。更改系统设置以使用 cgroup v2,或将其与默认提供 cgroup v2 的 Linux 发行版一起使用。
failed to find the IPv4 default route
您的系统上没有可用的默认路由 IPv4。首先,确保您的常规互联网连接正常。
如果您的应用仍然使用 Mudfish
完全关闭应用程序并通过 mudfish-exclude 再次运行它。这对于维护后台进程的程序(例如浏览器、游戏启动器和信使)尤其重要。
异常终止后网络规则是否仍然存在
手动清理它。
sudo mudfish-exclude --cleanup
如果直接更改 --mark、--priority、--table 和 --cgroup 的值,则必须为 --cleanup 指定相同的值。
快速命令总结
sudo mudfish-exclude COMMAND [ARGS...]
sudo mudfish-exclude --setup
sudo mudfish-exclude --no-setup COMMAND [ARGS...]
sudo mudfish-exclude --cleanup