Featured image of post 『Blog』Use Hysteria through Matsuri in Android

『Blog』Use Hysteria through Matsuri in Android

通过 Matsuri 在 Android 移动端运行 Hysteria 代理核心

前言

在以往文章中我们介绍了在 Windows 上以图形化界面的形式管理 Hysteria 的解决方案:

本文继续介绍有关 Hysteria 代理核心更多内容。本篇以 Matsuri 为切入点,介绍在 Android 手机上启动 Hysteria 代理核心的 quick-start 入门步骤,开箱即用。

如果你已持有一枚可用的 Hysteria 节点链接,只需要花费不到 3 分钟的时间便可在自己的手机上架起代理与互联国际完成「友好交互」。

注意事项

本文涉及的开源项目如下:

项目名发行版本号用途
HyNetwork/hysteriav1.2.0代理核心
MatsuriDayo/Matsuriv0.4.1图形化客户端
MatsuriDayo/Hysteria-Pluginv1.2.0-2兼容性插件

注意 →

  1. 本文不面向零基础的小白读者,且仅涉及与 Matsuri Android 客户端相关的操作演示,hysteria 服务端的配置详见『Blog』V2rayN 配置 Hysteria
  2. 该项目仍处于成长期,且因开发者精力有限,无法保证 SagerNet 的最新特性得到及时迁移。本人在相关测试后认为该项目已能实现有关 Hysteria 代理的核心功能,可以正常使用,也即,本文不涉及该软件兼容的其他代理类型的介绍,玩家需要根据自己的喜好和需求选择适合自己的产品。

简介

如果你已是 Hysteria 其他桌面系统的玩家,那你一定参阅过 Hysteria 的 Wiki 文档,你会发现,早在一年前, SagerNet 就以插件的形式支持了 Hysteria 在安卓手机上的运行。然而,该上游项目欠缺维护,实际情况是大量型号的安卓设备并不能正常启动 Hysteria 代理核心,乃至在作者撰文的现在,大量潜在 BUG 仍未得到妥善处理,常见的问题是弹出如下提示:

缺少插件:… 专有设备提供商篡改了你的安卓系统,使该插件无法使用。

那么,该主角出场了!

Matsuri,是一个用 Kotlin 编写的 Android 代理工具链,是 SagerNet 的一个子分支。Matsuri 继承了 SagerNet 的诸多优良特性,并在此基础上修补了一些历史遗留问题。相关内容可访问 Matsuri 仓库文档,本文仅介绍有关 Hysteria 代理核心相关的内容。

快速上手

下载 Matsuri

Matsuri 支持从 GitHub Releases 以及 Google Play 两种途径下载。目前,谷歌商店上架的版本与 GitHub 发行版的版本号一致,两者均支持在线更新。如果条件允许,从谷歌商店下载比较方便。

从 GitHub 下载

访问 GitHub Releases ,下载最新发行版即可。主流的安卓手机适合使用 arm64-v8a 类型 APK 客户端。

从 Google Play 下载

访问内联链接 Google Play 或手动搜索关键词 Matsuri Makubaro

 Download CMFA release arm64-v8a.

导入 Hysteria 节点

此处推荐的操作是先导入一个可用的 Hysteria 节点,再进行插件的(自动)安装。

与同世代项目操作逻辑一致,Matsuri 支持从二维码,剪切板,配置文件以及手动编辑 4 种方式导入代理。推荐从剪切板导入 Hysteria 节点分享链接。

下载 Hysteria-Plugin

选中导入的节点,点击下方的启动开关,此时会弹出如下警告交互框:

image-20220831133400876

点击「下载」自动打开浏览器前往 Hysteria 插件页面,根据你自己的设备情况选择最新发行版的软件即可。如骁龙系列产品通常选择 arm64-v8a.apk,相关截屏如下所示:

image-20220831133813986 image-20220831133819439
下载完后正常安装即可,不要点击多余的东西。
image-20220831134255535

配置 Matsuri 代理核心

解除插件限制

首先,下载好的 plugin 在桌面上不显示快捷方式,需要在你自己设备中的「应用管理」中查找(不同设备操作路径不一致,此处不多赘述,大体上从设置界面进入)Hysteria Plugin,如下图所示:

image-20220831134752294 image-20220831134958164

解除主程序限制

同样,需要在应用信息界面调整 Matsuri 的软件权限。具体来说有 3 点,联网权限,自启动以及省电策略。

最后,你需要锁定驻台进程,防止一键清除后台缓存时退出代理。

image-20220831135551288

启用 HTTP 入站

回到主程序界面,从侧边栏中进入到「设置」界面,下滑找到「入站设置」板块,勾选「启动 HTTP 入站」。

软件默认的 SOCKS5 入站代理端口为 2080,本地 DNS 端口为 6540,HTTP 代理端口为 9080。若有端口冲突更改代理端口即可。

image-20220831142427900

启动 Hysteria 节点

配置完成后回到主程序界面,点击启动开关。若节点服务正常,此时已能正常通过代理连接互联网。你可以访问 Google 以及 YouTube 等站点进行行为测试。

网络优化

介绍推荐使用的最佳实践方案,可在网络质量较差时明显提升网路冲浪体验,下文未提及的配置项保持默认即可。

设置

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Matsuri v0.5.2 play
软件设置:
    运行模式: VPN
    TUN实现: Tun2Socket
    MTU: 1500
路由设置: 
    分应用代理: true
    域名解析策略: AsIs
    启动流量探测: true
    IPv6路由: 禁用
    路由资源更新: 官方
协议设置:
    复用最大并发: 8  # If enable
DNS设置:
    增强域名解析: false
    远程DNS: https://8.8.8.8/dns-query
    直连DNS: https+local://233.5.5.5/dns-query
    启动DNS路由: true
入站设置:
    启用HTTP入站: true
    追加HTTP代理至VPN: true
杂项:
    首选插件提供者: Matsuri

路由规则

Matsuri 提供了一些默认的路由规则,路由规则的优先级高于分应用代理。改动路由规则和分应用代理都需要重启代理服务才能生效。

1
2
3
4
5
6
屏蔽QUIC:(屏蔽): false
屏蔽跟踪器(屏蔽): true
屏蔽广告(屏蔽): true
中国Play商店规则(代理): true
中国域名规则(绕过): false
中国IP规则(绕过): false

场景优化:

  1. 通用场景。建议在「设置 - 分应用代理」中绕过「国产应用」并将「中国域名」以及「中国 IP 」的路由规则关闭。你可以借助软件内置的「扫描中国应用」一键添加。

  2. 覆盖某些国产应用中的 IP 位置显示。先保持通用场景设置,再将指定的国产应用从绕过列表中移除。

You will to enjoy grander sight / By climing to a greater height.