前言
早期,我一直对Clash
的工作原理一知半解,只知道它是一种探索互联网世界的神奇工具。
每次需要科学上网
时,只需点击一下“系统代理”按钮,瞬间解决了各种无法访问网站的问题。
久而久之,不免觉得这一过程有些繁琐:打开网站 —— 拒绝访问 —— 启动 Clash—— 开启系统代理 —— 完成
。我曾经尝试简化这个步骤,最初的尝试是保持规则代理一直开启,通过配置文件来管理流量的转发规则。
但不久后,我发现有些网站的规则
并不适用,还是需要使用全局代理,这种方法有一定的限制,所以我放弃了这个想法。接着,我尝试设置全局快捷键,我选择了F2键,虽然效果还算可以,但每次都需要手动按下,稍显麻烦。正如大家都知道的,懒惰是发明创造的源泉,于是我孵化出了以下的终极解决方案
。本文将完全解决以下令人烦恼的问题:
- 访问网页需要手动开启 Clash
- 终端不走 Clash 流量
- Git 也蹭不到 Clash 流量
准备工作
首先要准备 Clash 和节点,这是一个比较敏感的话题,所以本文不提供任何渠道。
其次要知道 Clash 的端口号,默认是 7890
,如果你先前没有进行更改的话。
最后需要 Chrome
或 Edge
浏览器,同时能够访问拓展商店
,找到并下载 SwitchyOmega(需要科学上网)
配置 SwitchyOmega
Clash 用户请按照以下进行配置。
首先配置代理服务器,选择本机,也就是 127.0.0.1
, 端口选择 7890
,协议选择 socks5
完事以后先点一下左边 ACTIONS
下面的 应用选项
来保存一下
接下来在情景模式的 auto switch
中写入网上人家配置好的规则
这里请开启 Clash
系统代理!要不然访问不了 GitHub !
规则列表格式选择 AutoProxy
,规则列表网址填写
https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt
然后点击立即更新情景模式,规则列表正文自动刷新
接下来的一步很关键:这里选择 Proxy
,要不然开了跟没开一样
同时,在浏览器插件中选择 auto switch
选项,这样就可以根据我们访问的网站自动切换代理,例如谷歌,YouTube 等
Clash 不需要开启系统代理了,只要在后台挂着就行,记得
设置 Clash 为开机启动
当然,别人写的规则肯定不可能百分百全覆盖,按照自己的需要把常用的网站写进规则里面就可以了。
这里要提醒的是,有些国外网站,例如 YouTube.com
,并不是简单的把他添加进规则里面就行,因为它本身还要引用例如 Googlevideo.com
这一类的 cdn,还要把 cdn 也添加进规则里面。这一步可以通过以下步骤来一键添加规则:
找到所有未加载的资源
一键添加规则
设置 Git 代理
设置代理
git config --global http.proxy 127.0.0.1:7890 && git config --global https.proxy 127.0.0.1:7890
取消代理
git config --global --unset http.proxy && git config --global --unset https.proxy
查看代理
git config --global --get http.proxy && git config --global --get ht
git clone 时要使用 https 协议,因为设置的是 HTTPS 代理,所以使用 SSH 克隆还是很慢, 解决办法: 请看本站 #
GitHub加速终极教程
设置终端代理
Windows 用户可以跳过这里了,这边主要是针对 Linux 或 macOS 的终端进行设置
我自己用的是 macOS,经常使用 homebrew 下载软件时要等半天,然后对我丢出一个 time out,此情景是何等的令人恼火。但是如果一昧的设置永久系统代理,那么下载某些国内软件时反而会变成 “减速器”,而且必然会浪费很多流量(流量用不完的随意)。所以这里使用一次性的方法设置代理,即代理只在当前终端窗口有效,如果关掉再开就失效了。
编辑 zsh
配置文件
vim ~/.zshrc
滑到最底下,按自己的需要写入以下内容:
设置一次性代理
alias proxy="export http_proxy=http://127.0.0.1:7890;export https_proxy=http://127.0.0.1:7890;"
设置永久代理:
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
保存并退出,使用 source ~/.zshrc
刷新配置文件
使用方法:如果设置的是一次性代理,那么在需要使用代理的指令前加上 proxy
例如使用 homebrew 下载 qq 音乐:
proxy brew install qqmusic
或者单独使用 proxy
一行命令开启代理,如果想关闭代理直接把当前终端窗口关掉就行,因为是一次性的
当然,如果是永久代理就需要手动注释掉添加的两行代码才能关闭代理 🤡