-
shadowsocks原理
-
为何安装了shadowsocks,chrome等浏览器可以上网,某些客户端比如twitter,命令行里面的工具git,curl,brew仍然很慢,甚至链接不上外网?
对于经常在命令行终端下工作的码农们,SS无法正常工作。因为在终端下不支持socks5代理,只支持http代理,这就很尴尬了。wget、curl、git、brew等命令行工具都会变得很慢。
-
解决方案
这里以使用Git Clone下载RxJava源码的方式,来说明如何加速下载。如果直接在命令行下使用:git clone https://github.com/ReactiveX/RxJava.git :
image.png
有可能出现卡在git clone的命令下,或者下载很慢的情况。这时候就需要将命令行或者相关客户端的http(或者https)协议的请求代理到sock5协议,这样就能够借助ss代理出去了。
- 在终端中直接运行命令:
export http_proxy=http://proxyAddress:port
eg:export http_proxy=http://127.0.0.1:1086
这个办法的好处是简单直接,并且影响面很小(只对当前终端有效,退出就不行了)。
如果你用的是ss代理,在当前终端运行以下命令,那么wget curl 这类网络命令都会经过ss代理
export ALL_PROXY=socks5://127.0.0.1:1086
注意:如果想要永久生效,可以将上面的代理命令,写入“环境变量”中,mac平台如果用的原生的terminal可以写入.bash_profile文件中,如果是用的zsh shell那么可以写入.zshrc文件中
后面的这个1080端口,是根据你的shawosocks有关的,打开shawosocks客户端的preference设置,如下的界面:
image.png
这里的1086就是端口号。
- 如果是单独为git配置代理,也可以使用一下的命令:
git config --global http.proxy 'socks5://127.0.0.1:1086'
git config --global https.proxy 'socks5://127.0.0.1:1086'
经过以上的设置后,那么就可以实现命令行或者git走ss代理了
网友评论