小火箭全局路由怎么设置?3种模式对比与配置教程

本文详解小火箭全局路由的配置方法,对比TUN模式与系统代理的差异,介绍代理组类型选择及分流规则写法,提供可复制的YAML配置示例,帮助用户快速掌握全局路由设置技巧。

什么是全局路由

全局路由是网络加速工具中控制流量走向的核心功能,决定哪些请求走代理、哪些直连、哪些被拦截,小火箭(Shadowrocket)作为iOS平台主流客户端,全局路由设置直接影响访问体验,合理配置全局路由,既能提升跨境访问速度,又能确保学术资源访问的稳定性。

全局路由三种模式详解

代理模式(Proxy)

所有流量均经过代理服务器转发,适用于需要全程加速的场景,如访问国际流媒体、跨境办公等,该模式会消耗更多代理流量,但能保证最大程度的网络访问能力。

直连模式(Direct)

所有流量直接访问目标服务器,不经过代理,适合访问国内资源,可降低延迟并节省代理带宽,部分机场节点回国场景下也需要使用直连模式。

规则模式(Rule)

根据预设规则智能判断流量走向,是最常用的模式,规则匹配成功则按规则执行,匹配失败则进入默认策略,规则模式支持DOMAIN、DOMAIN-SUFFIX、IP-CIDR、GEOIP等多种匹配类型。

TUN模式与系统代理的区别

系统代理模式

仅接管HTTP/HTTPS协议的TCP流量,通过本地代理端口(默认为7890)转发,配置简单,但无法处理UDP流量,部分游戏和实时通讯应用无法使用。

TUN模式

创建虚拟网卡,接管设备所有流量(包括UDP),可实现游戏加速、VoIP通话等场景,TUN模式需要更高的系统权限,部分设备可能需要额外配置。

选择建议:日常网页浏览用系统代理即可;玩外服游戏或使用语音通话建议开启TUN模式。

代理组类型与适用场景

Select(手动选择)

列出所有节点供用户手动切换,适合对节点有特定偏好或需要频繁切换的用户。

URL-Test(自动测速)

自动检测节点延迟,选择响应最快的节点,适合追求低延迟的场景,如游戏加速。

Fallback(故障转移)

优先使用列表中第一个可用节点,第一个节点不可用时自动切换到下一个,适合对稳定性要求高的办公场景。

配置步骤

  1. 打开小火箭应用,点击底部「配置」
  2. 点击右上角「+」添加配置文件
  3. 选择「从URL导入」或「本地导入」YAML文件
  4. 导入成功后点击配置文件进入编辑
  5. 找到「全局路由」选项,根据需求选择代理/直连/规则模式
  6. 返回主界面,确保节点已选择并开启连接

YAML配置示例

proxies:
  - name: 节点1
    type: ss
    server: example.com
    port: 8388
    cipher: aes-256-gcm
    password: password123
proxy-groups:
  - name: 手动选择
    type: select
    proxies:
      - 节点1
      - 节点2
  - name: 自动测速
    type: url-test
    url: http://www.gstatic.com/generate_204
    interval: 300
    proxies:
      - 节点1
      - 节点2
rules:
  - DOMAIN-SUFFIX,google.com,手动选择
  - DOMAIN-KEYWORD,youtube,自动测速
  - GEOIP,CN,DIRECT
  - MATCH,手动选择

分流规则写法

规则类型 写法示例 适用场景
DOMAIN DOMAIN,www.example.com 精确匹配单个域名
DOMAIN-SUFFIX DOMAIN-SUFFIX,example.com 匹配该域名及所有子域名
IP-CIDR IP-CIDR,10.0.0.0/8,DIRECT 匹配IP段
GEOIP GEOIP,CN,DIRECT 按国家/地区匹配
RULE-SET RULE-SET,ads,REJECT 引用规则集

优先级:规则按顺序匹配,命中后立即执行对应策略,最后一条通常为MATCH作为兜底。

常见问题FAQ

现象:开启全局路由后无法访问国内网站

原因:规则配置错误,误将国内域名指向代理节点

解决方法:检查规则列表,确保国内网站使用DIRECT策略,或将GEOIP规则置于代理规则之前


现象:部分APP无法联网

原因:该APP使用UDP协议,系统代理模式无法处理

解决方法:在设置中开启TUN模式,或为该APP单独添加代理规则


现象:节点显示已连接但无法访问

原因:代理组未正确引用,或节点本身不可用

解决方法:切换至其他节点测试,检查代理组中的节点名称是否与proxies中定义一致

您可以还会对下面的文章感兴趣: