注:本文不讨论其应用原理以及各版本更新内容,仅用于记录使用方法以便朋友使用,随缘更新~
1.软件简介
选此软件主要是因为外观好看,易于上手,自带中文方便实用;同时其多端兼容性出色支持 Windows、macOS、Linux等系统;而且应用软件现代化,在确保易用性的前提下,采用较新技术,实现了许多其他客户端不具备的新特性和优秀功能,故选此软件进行推荐设置。
2.目录
订阅转换(所有端必做)
客户端设置
关闭浏览器安全DNS地址,设置TUN模式的DNS地址(所有PC可选,如果操作了2,则此项必做)
系统DNS设置自动 (可选)
关闭浏览器QUIC(所有PC必做)
设置本地中国IP数据库(可选)
3.具体步骤
3.1 订阅转换
第一步要做的应该就是订阅转换,机场给的订阅链接所包含的分流规则十分少,仅仅够简单使用,自己的一些需求和dns的处理均不包含在其中,所以我们要适当的自定义一下给出的订阅链接以方便使用;
在线订阅转换不仅仅是将Shadowsocks、V2ray、Trojan 订阅链接转换为 Clash 、Stash、V2ray、Quantumult X、Surge 等软件使用的订阅格式,他还支持非常多的进阶操作,不过在本文仅以够用为目标为各位讲解使用;在线订阅链接请使用我提供的链接,毕竟都是身边的朋友,还是比较信得过的。
订阅转换网站 请进入: https://subui.19950620.xyz/
需要操作的步骤(如下图所示)
一般这样就已经可以比较完美的使用了,并且拥有我写的远程配置文件中的一些额外功能
3.2 客户端设置
3.2.1 电脑端
1.下载clash verge rev客户端,如果此链接无法打开,请微信联系我私发你;该页面已介绍你需要下载哪个客户端,请对应选择最新版本使用;
2.安装好之后请按照以下截图进行客户端内设置
3.类似下图就算更新成功使用成功,但这个时候千万别着急,还有其他设置以便你更好的使用;
4.选择左侧设置-系统设置选项卡,并按照我下图进行设置tun模式,以便国外的流量都走代理而不是本地
如果服务模式无法安装
Win可以尝试在系统命令行(PowerShell)中执行
sc delete clash_verge_service
来删除之前的Clash Verge服务,这可能是你之前安装过Clash Verge,但是卸载的时候没有写在这服务模式,导致新的安装不上Mac/Linux请在设置的
Clash内核
点开齿轮图标⚙️,点"授权”其他疑难杂症参考https://github.com/clash-verge-rev/clash-verge-rev/issues/125
5.此时需要重启一下Clash软件,再点击TUN模式旁边的齿轮图标⚙️,选择Tun的堆栈模式为Mixed,这也是官方推荐的选项,开启「严格路由」。
6.此时电脑端就算是设置完成了,但是为了解决dns泄露的问题,我们还需要后续的操作(此处仅windows系统需要设置,macos无需操作)
要解决这个问题也很简单,问题出现的原因是Windows系统默认使用多宿主DNS解析,会使用所有的网卡发起请求,我们只需要在组策略(Windows家庭版无该功能)中关闭这个功能即可(Win+R,输入gpedit.msc
点确定)。
至此,我们解决了Clash在Windows下可能发生的DNS泄露问题。
7.不过别急,我们还需要再给浏览器进行一个小小的调整
关闭浏览器的QUIC, 中国大陆的isp是限速udp的, 所以导致QUIC这个优秀的协议, 到了中国大陆的网络下成了个负面增益效果
about://flags/#enable-quic
设置为Disabled
(点下方弹出的重启浏览器生效);关闭浏览器中的“安全DNS”。
Edge: edge://settings/privacy
找到【安全性】 -【使用安全的 DNS 指定如何查找网站的网络地址】,关闭;复制以下代码到clash客户端中;
function main(content) {
const isObject = (value) => {
return value !== null && typeof value === 'object'
}
<p>const mergeConfig = (existingConfig, newConfig) => {
if (!isObject(existingConfig)) {
existingConfig = {}
}
if (!isObject(newConfig)) {
return existingConfig
}
return { ...existingConfig, ...newConfig }
}</p>
<p>const cnDnsList = [
'https://1.12.12.12/dns-query',
'https://223.5.5.5/dns-query',
]</p>
<p>// 大部分的网络请求都会走这个里面的,这里目前是腾讯、阿里、和使用节点查询的1.0.0.1的dns
const trustDnsList = [
'https://doh.pub/dns-query', // 腾讯
'https://dns.alidns.com/dns-query', // 阿里(这里会触发h3和普通的并发查询)
'180.184.1.1', // 火山
]
const notionDns = 'tls://dns.jerryw.cn' // notion加速dns
const notionUrls = [
'http-inputs-notion.splunkcloud.com',
'+.notion-static.com',
'+.notion.com',
'+.notion.new',
'+.notion.site',
'+.notion.so',
]
const combinedUrls = notionUrls.join(',');
const dnsOptions = {
'enable': true,
'prefer-h3': true, // 如果DNS服务器支持DoH3会优先使用h3(本例子中只有阿里DNS支持)
'default-nameserver': cnDnsList, // 用于解析其他DNS服务器、和节点的域名, 必须为IP, 可为加密DNS。注意这个只用来解析节点和其他的dns,其他网络请求不归他管
'nameserver': trustDnsList, // 其他网络请求都归他管</p>
<pre><code>// 这个用于覆盖上面的 nameserver
'nameserver-policy': {
[combinedUrls]: notionDns,
'geosite:geolocation-!cn': trustDnsList,
// 如果你有一些内网使用的DNS,应该定义在这里,多个域名用英文逗号分割
// '+.公司域名.com, www.4399.com, +.baidu.com': '10.0.0.1'
},
}
// GitHub加速前缀 const githubPrefix = 'https://fastgh.lainbo.com/'
// GEO数据GitHub资源原始下载地址 const rawGeoxURLs = { geoip: 'https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip-lite.dat', geosite: 'https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geosite.dat', mmdb: 'https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/country-lite.mmdb', }
// 生成带有加速前缀的GEO数据资源对象
const accelURLs = Object.fromEntries(
Object.entries(rawGeoxURLs).map(([key, githubUrl]) => [key, ${githubPrefix}${githubUrl}
]),
)
const otherOptions = { 'unified-delay': true, 'tcp-concurrent': true, 'profile': { 'store-selected': true, 'store-fake-ip': true, }, 'sniffer': { enable: true, sniff: { TLS: { ports: [443, 8443], }, HTTP: { 'ports': [80, '8080-8880'], 'override-destination': true, }, }, }, 'geodata-mode': true, 'geo-auto-update': true, 'geo-update-interval': 24, 'geodata-loader': 'standard', 'geox-url': accelURLs, 'find-process-mode': 'strict', } content.dns = mergeConfig(content.dns, dnsOptions) return { ...content, ...otherOptions } }
这段代码的作用是(觉得不安全可以交给GPT4进行代码分析)
使用阿里和DNSPod(腾讯的DNS)的DoT来解析节点、DNS服务器
使用阿里、腾讯、和使用节点去1.0.0.1 DNS服务器解析其他网站(DNS泄露往往是运营商泄露,阿里腾讯没听说过泄露)
使用非营利组织的DoT解析Notion网站
tun模式堆栈使用自适应模式
更换延迟计算方式,去除握手等额外延迟
开启TCP并发的支持
开启域名嗅探, 准确还原域名, 进行域名分流
设置geodata的下载源为国内加速下载源
有人可能这里会说,你用了阿里腾讯这些dns解析网站,还是会漏呀!我想说的是,我们要解决的问题是运营商(电信、联通、移动)外泄数据这件事,而不是不留痕迹的DNS查询,如果你希望自己的DNS查询行为不留痕迹,请自建DNS。
3.2.2 安卓手机端
此处我们以nekobox举例,我个人认为nekobox可以说是安卓端的集大成者,好用且开源,外观符合material设计规范,不过相对v2ray来说有一丢丢耗电,但个人可以接受
下载地址:github主页,选择“NB4A-1.3.1-arm64-v8a.apk”进行下载并安装(切记不要在谷歌商店或其他位置下载,因为Google Play 版本自 2024 年 5 月起已被第三方控制,为非开源版本,还是用纯开源无广告的开发者版本最好)或微信私聊我发安装包。
安装步骤:
1.点开nekobox,找到分组选项卡,单机右上角加号键进入添加订阅页面,进入后按照下方设置添加订阅链接分组(订阅链接详见电脑端操作进行复制);
2.更新链接,找到系统设置选项卡完成设置;
(奇怪了,为啥上传之后清晰度这么低)
3.在设置中的“分应用代理”处,按照如图所示的选择需要代理的软件,打开后面的小开关即可;
4.返回代理页面,选择合适的节点并进行测速,至此安卓端已设置成功;
5.打开ip测试网站,找到下方dns泄露测试,如果显示的国家与你当前运营商所在的国家不一致,即可认为是成功,比如你在中国居住,此时dns解析显示的是香港或者台湾,那大概率没有泄露。
3.2.3 苹果手机端/平板端
iOS、iPadOS(以下统称iOS)系统可用的软件有shadowrocket(老牌小飞机,支持大多数协议例如hystria2)、quantumultx(圈x,支持协议也还行,但是同时支持插件,可以进行去广告操作)、surge(不推荐,昂贵且更新频率较低,当然适合苹果全家桶使用)以及loon(新生代产品,UI美观,也支持去广告操作),本文以shadowrocket为例介绍(因为我只买了这个,其他等巨魔白嫖),以下是操作步骤。
请在App Store中登录以下账号(切忌在设置中登录):
密码:
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Mouse Hover Text Blur to Clear</title>
<style>
/* 设置文字容器 */
.text-container {
font-size: 24px; /* 根据需要调整字体大小 */
font-weight: bold; /* 设置文字粗细 */
color:red;
width: 1000px; /* 调整容器宽度 */
margin: 50px auto;
text-align: left;
transition: filter 0.6s ease; /* 设置过渡效果 */
filter: blur(5px); /* 初始状态设置为模糊 */
}
/* 鼠标悬停时,移除模糊效果 */
.text-container:hover {
filter: blur(0);
}
</style>
<div class="text-container">
请私聊我微信,网页太危险,分享需谨慎~
</div>
<script>
// 如果有其他逻辑,可以在此处添加JavaScript代码
</script>
登陆之后请在App Store中搜索“shadowrocket”并进行下载
接下来就是具体步骤(halo添加图总是失效,暂时先不提供图片)
1. 打开shadowrocket,并点击右上角“+”号;
2.选择“subscribe”进行订阅链接的添加,记得添加完点击右上角的保存按钮哦!(订阅链接详见电脑端操作进行复制);
3.设置远程配置文件以便正常分流使用:
请复制我提供的链接:https://johnshall.github.io/Shadowrocket-ADBlock-Rules-Forever/sr_top500_banlist.conf
4.回到主页进行连通性测试测试延迟,然后选择自己需要的节点,最后打开开关即可使用,中间可能会需要输入密码,请自行输入锁屏密码即可完成连接。
现在你就可以随意上pornhubscholarhub了~
与此同时,也别忘了继续测试一下dns是否泄露哦~
3.3 geoip设置(针对于电脑端使用,win和macos均适用)
目前市面上绝大多数的代理工具都依赖于 GeoIP2 数据库判断地址所属地。它们的规则结尾部分一般都会有一条类似 GEOIP, CN
,用来查询目的 IP 地址是否属于中国大陆,从而判断是否直连。
这些代理工具通常使用的 GeoIP2 数据库是来自于 MaxMind 的 GeoLite2 免费数据库。这个数据库目前存在一下几个问题:
获取不便:从 2019 年 12 月 30 日起,必须注册后才能下载
数据量大:数据库庞大,包含全球的 IP 地址段,约 10 MB
准确度低:对中国大陆的 IP 地址判定不准,如:香港阿里云的 IP 被判定为新加坡、中国大陆等。
庞大的数据量对于大多数中国大陆的用户来说是没有意义的,因为只仅需要去判断 IP 的地理位置是否属于中国大陆境内,其他国家的 IP 一律代理/直连。过多的数据量会增加载入时间,降低查询效率。
我们在之前创建的Script中已经包含了下载更精简合适中国大陆的IP数据库链接, 现在只需要手动操作下载和替换即可。
点击Clash Verge Rev的设置菜单, 找到「更新GeoData」, 点击进行更新, 他会在后台进行下载和本地的文件替换, 通常在10秒内完成。
验证是否下载完成: 右键托盘中的Clash Verge图标,【打开目录】-【应用目录】, 找到geoip.dat文件, 查看其文件体积, 如果是几百KB则成功, 如果是好几MB则未成功或未下载完成(几百KB下载要不了多久,太久没有效果可能需要你使用下方的操作去重启Clash客户端重试)。
下载完成后右键托盘中的Clash Verge图标,【更多】-【重启应用】确保数据库被正确应用。
4.小结
至此,与代理相关的配置均已完美配置,如果还有更新,我会修改本博客内容以方便各位的使用,希望文章的内容能对你有所帮助,谢谢!
注:本文部分内容转载自Lainbo's Blog的clash文章,感谢大佬的配置教程!
评论区