Mullvad Tailscale Integration 教程
本教程旨在指导您如何安装和配置 Mullvad Tailscale,一个开源项目,使您能够在Linux系统上同时使用Mullvad VPN与Tailscale或Zerotier,增强网络连接的安全性与灵活性。
1. 项目目录结构及介绍
项目的核心位于根目录下,主要文件和结构简述如下:
- main: 存放主体脚本
mnf
(原名mtc),是这个项目的主要执行文件。 - LICENSE: 项目遵循的许可协议,这里是GPL-3.0许可证。
- README.md: 包含了项目说明、特点、需求、设置步骤和使用方法的详细指南。
- mullvad-rules: 此目录中存放着与Mullvad相关的规则文件,用于配置nftables以适应Mullvad与Tailscale/Zerotier的协作。
2. 项目的启动文件介绍
启动文件主要是mnf,这是一个bash脚本。通过这个脚本,您可以一键管理Mullvad、Tailscale或Zerotier的连接状态,并自定义网络设置。它的运行参数允许用户进行多种操作,例如指定服务器国家、是否仅使用RAM中的服务器、选择特定的DNS解析器等。使用此脚本前需确保满足其依赖条件,包括Mullvad CLI工具、nftables包以及Tailscale或Zerotier客户端的正确安装与配置。
3. 项目的配置文件介绍
主配置文件 - mnf
虽然项目没有传统意义上的单一配置文件,但关键的配置调整发生在mnf
脚本内。您需要编辑该脚本来定制您的体验。主要涉及的配置点有:
- RULES_DIR: 指向存储mullvad规则的目录路径,默认在项目根目录。
- EXCLUDE_COUNTRY_CODES: 设置不想连接的国家代码,空字符串表示不限制。
- INCLUDE_COUNTRY_CODES: 若设置,则仅连接到指定的国家,优先级高于排除列表。
- EXCLUDED_IPS 和 EXCLUDED_IPV6: 分别为Tailscale/Zerotier网络的IPv4和IPv6地址段,用于避免这些IP被路由至Mullvad。
- RESOLVER_ADDRS: 定义自定义的DNS服务器地址,适用于Mullvad的流量。
规则文件 - mullvad-rules
内的文件
在mullvad-rules
目录下的文件主要用于nftables的规则设置,直接控制网络流量流向。修改这些规则可以实现更细粒度的网络控制,比如设置特定的网络豁免规则来保证内部网络通信不经过Mullvad的隧道。
配置流程概览
- 克隆项目:使用
git clone https://github.com/r3nor/mullvad-tailscale.git
获取源码。 - 环境准备:安装Mullvad CLI、nftables、Tailscale或Zerotier。
- 脚本配置:编辑
mnf
脚本和mullvad-rules
中的文件以匹配您的需求。 - 权限设置:给
mnf
脚本赋予执行权限,即chmod +x mnf
。 - 运行:使用
mnf
脚本的不同命令来配置、启动、停止或查看帮助信息,例如mnf up -h
查看帮助,mnf up
启动服务等。
记住,每个配置更改后都应重新评估脚本的行为,确保达到预期的网络设置。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考