跳转至

TUN 模式(中文)

TUN 模式通过创建虚拟网络接口提供完整的 VPN 功能。所有设备流量都通过 VPN 隧道路由。

概述

在 TUN 模式下,R-VPN 创建一个虚拟网络接口(TUN 设备)。设备的所有网络流量都经过加密并通过 VPN 隧道路由。

┌──────────────┐         ┌─────────────┐         ┌─────────────┐
│   设备        │         │ R-VPN 客户端 │         │ R-VPN 服务器 │
│  (所有应用)   │────────►│   (TUN)     │────────►│             │
│              │◄────────│             │◄────────│             │
└──────────────┘         └─────────────┘         └─────────────┘
                         rvpn0: 10.200.0.2      NAT 到互联网

优势

  • 透明 - 所有应用自动使用 VPN
  • 系统级 - 适用于任何应用程序
  • 分流隧道 - 以不同方式路由特定流量
  • 完整 DNS - 完整的 DNS 泄漏保护

要求

  • Root/管理员权限 - 创建和配置 TUN 设备需要
  • TUN 设备支持 - 大多数现代操作系统都支持(Linux、macOS、Windows)

配置

TUN 模式在 client.toml[tun] 节中配置:

[tun]
# 接口名称(默认:"rvpn0")
interface_name = "rvpn0"

# 虚拟 IP 地址,CIDR 表示法(默认:"10.200.0.2/24")
ip_address = "10.200.0.2/24"

# VPN 激活时使用的 DNS 服务器(默认:["1.1.1.1", "8.8.8.8"])
dns_servers = ["1.1.1.1", "8.8.8.8"]

# 通过 VPN 路由的网络(默认:["0.0.0.0/0"] - 所有流量)
routes = ["0.0.0.0/0"]

# MTU - 最大传输单元(默认:1420)
mtu = 1420

默认值

选项 默认值 说明
interface_name rvpn0 虚拟网络接口名称
ip_address 10.200.0.2/24 分配给 TUN 设备的虚拟 IP 地址
dns_servers ["1.1.1.1", "8.8.8.8"] 用于域名解析的 DNS 服务器
routes ["0.0.0.0/0"] 通过 VPN 路由的网络(CIDR 表示法)
mtu 1420 最大传输单元大小(字节)

启动 TUN 模式

您可以通过两种方式启动 TUN 模式:

1. 使用 --tun 命令行标志

# 需要 root/管理员权限
sudo rvpn --config client.toml --tun

2. 在配置中设置模式

客户端可以配置为默认以 TUN 模式运行(取决于具体实现)。

分流隧道

分流隧道在 SOCKS5 和 TUN 模式下都有效,允许您将特定流量路由到 VPN 外部。

仅将特定网络通过 VPN 路由

[tun]
# 仅将私有网络通过 VPN 路由
routes = ["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]

# 所有其他流量使用常规路由

高级分流隧道

对于应用级分流隧道(为特定域名/国家绕过 VPN),请参阅 Split Tunneling,它在 SOCKS5 和 TUN 模式下都有效。

[split_tunnel]
enabled = true
builtin_bypass_countries = ["CN"]  # 中国流量绕过 VPN
block_ads = true                    # 拦截广告/跟踪器

DNS 配置

通过配置 DNS 服务器防止 DNS 泄漏:

[tun]
dns_servers = ["1.1.1.1", "8.8.8.8"]

当 VPN 激活时,使用指定的 DNS 服务器进行所有 DNS 查询,防止 DNS 泄漏。

平台特定设置

Linux

# 需要 root 权限
sudo rvpn --config client.toml --tun

客户端在 Linux 上自动处理 TUN 设备创建和路由配置。

macOS

# 需要管理员权限
sudo rvpn --config client.toml --tun

Windows

从管理员命令提示符或 PowerShell 运行客户端:

# 以管理员身份运行
rvpn.exe --config client.toml --tun

故障排除

权限被拒绝

TUN 模式需要 root/管理员权限:

# Linux/macOS
sudo rvpn --config client.toml --tun

# Windows - 以管理员身份运行

TUN 设备不可用

某些 VPS 提供商或受限环境禁用了 TUN 设备。请联系您的提供商启用 TUN 支持,或在支持 TUN 设备的系统上运行。

无网络连接

检查: 1. 服务器正在运行且可访问 2. 防火墙允许出站连接 3. 路由配置正确 4. DNS 服务器可达

DNS 泄漏

确保在 [tun] 节中配置了 DNS 服务器:

[tun]
dns_servers = ["1.1.1.1", "8.8.8.8"]

您可以使用在线 DNS 泄漏测试工具验证 DNS 泄漏保护。

安全注意事项

  • TUN 模式默认将所有流量通过 VPN 路由(当 routes = ["0.0.0.0/0"] 时)
  • 确保您的服务器有足够的带宽来处理您的流量
  • 监控数据使用量以避免意外费用
  • 使用配置的 DNS 服务器时,DNS 查询受到保护

下一步