最新消息:VPS服务器又从fzhost.net换回Linode了,主题仍用朋友推荐的大前端D8

【已解决】给shadowsocks手动添加国外地址用于翻墙

shadowsocks crifan 2964浏览 0评论

对于Mac中用ss:

开启 自动代理模式

时,大部分时候是好用的:

可以自动识别是否是国外地址,而决定是否启用翻墙

但是最近遇到多次情况,对于:

https://medium.com/

的地址,比如

https://medium.com/@pratik_m23/getting-started-with-react-native-and-nativebase-fdedd8e26df2

则无法检测出国外地址,导致无法翻墙,无法打开:

与之对比,启用全局模式,则是可以打开该页面的。

想到了,是不是ss中,有哪里可以编辑规则,指定某些页面要翻墙的。

Shadowsocks for OSX 帮助 · shadowsocks/shadowsocks-iOS Wiki

Shadowsocks-for-OSX 添加规则

Shadowsocks 进阶之 PAC – 作业部落 Cmd Markdown 编辑阅读器

PAC=Proxy auto-config

“这三个文件的关系就是: 

最终的pac 文件是根据 gfwlist.js 和 user-rule.txt 两个文件共同生成的 

如果用户想要添加某些网站进入 PAC,最好的方式是写入 user-rule.txt 这个文件,而不是修改 gfwlist.js 这个文件,因为gfwlist.js这个文件会时不时的和 github 上做同步,可能会造成已有的修改会被覆盖掉。”

去编辑

user-rule.txt

加上:

没重启ss,去试试效果:

不行。

重启ss,结果:还是不行。

【无需解决】ShadowsocksX中从GFWList更新本地PAC出错Request failed not found 404

所以,最新的gfwlist本身就不够好用。

所以用这个旧版本的ShadowsocksX,且不要去更新最新本的gfwlist,是好的做法。

然后继续研究看看,如何通过用户自定义,加上对应配置

编辑自动模式的PAC

加上:

“||medium.com”,

然后重启ShadowsocksX,看看效果

结果就可以自动模式下,自动走代理去打开网页了

【总结】

此处,本来想要去用ShadowsocksX去更新到最新版gfwlist的,结果出现404

本来是需要解决这个404的错误的。

发现除了新版的ShadowsocksX-NG,貌似更好用。

结果去用了发现,其对于代理的配置:

一方面很智能,直接使用最新的gfwlist的地址-》从而无需更新最新地址了。

另外一方面,最新的gfwlist中的配置,却又不合理,把部分地区(部分时间段)能正常国内解析的gogole地址设置了屏蔽,不走代理了,导致如果用最新gfwlist配置,自动模式时就无法打开部分(而且还很常用的)Google地址了,比如:

https://www.googletagmanager.com

https://ssl.google-analytics.com

https://www.google-analytics.com

而ShadowsocksX-NG中,对于:

编辑PAC用户自定规则

却无法自动合并到自动模式中

从而导致,手动加上的配置,无法合并到自动模式PAC中

总之:ShadowsocksX-NG,也不够智能和好用。无法满足此处我的需求,无法解决问题。

最终还是换回ShadowsocksX

然后通过摸索,去:

编辑自动模式的PAC

-》找到:gfwlist.js,给rules中加上:

“||medium.com”,

就可以匹配:

http,https,ftp等开头的medium.com的地址了,

当然也匹配此处的:

https://medium.com/@pratik_m23/getting-started-with-react-native-and-nativebase-fdedd8e26df2

所以就可以正常打开页面了。

配置和打开页面效果如下:

【后记 2017-11-02】

后来在:

【无法解决】shadowsocks.com无法登录

发现,最新的加密算法已经从之前的:aes-256-cfb

换成了:chacha20-ietf-poly1305

但是发现此处用的ShadowsocksX,不支持这个加密算法:

最多只支持chacha20

去试试chacha20能否和chacha20-ietf-poly1305兼容,看看能不能用:

结果是:不能。

所以现在郁闷了:

  • 要么去换用别的Mac的Shadowsocks的客户端,比如之前的Shadowsocks-NG(但是有缺点,不好用)
  • 要么是继续用ShadowsocksX
    • 想办法看看是否有更新版本而支持chacha20-ietf-poly1305加密算法
    • 只能用我自己的ss的服务器了

先去:

【已解决】查看Mac中当前ShadowsocksX的版本以及找到ShadowsocksX最新版本是多少

然后如果还想要继续使用:

https://www.shadowsocks.com

的话,就需要用:

官网:

Shadowsocks – Clients

http://shadowsocks.org/en/download/clients.html

推荐的,Mac下的客户端:ShadowsocksX-NG

也是我之前折腾过,觉得不好用的。

然后去看了看,ShadowsocksX-NG的确是支持chacha20-ietf-poly1305的:

而对于之前在:

【无需解决】ShadowsocksX中从GFWList更新本地PAC出错Request failed not found 404

遇到,更换为ShadowsocksX-NG后,无法完美的实现:

即可以用:PAC自动模式,使用在线的:

GFW List URL

https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt

去自动更新要翻墙的url规则

又可以同时合并,手动模式

集成利用用户手动的规则

否则就会出现:

https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt

中由于国内其他很多地方可以正常解析部分google地址:

移除部分 Google 相关? · Issue #682 · gfwlist/gfwlist

https://github.com/gfwlist/gfwlist/issues/682

-》但是我这里,江苏电信,无法解析,导致无法正常访问很多google网站

-》但是却又无法使用手动模式添加规则

-》否则所有的规则,都要自己添加。

目前想到一个办法,或许可以 不完美,但是凑合可用的解决问题:

使用ShadowsocksX-NG的手动模式,然后把

https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt

中的规则,都拷贝过来

然后根据需要再去修改:

待会去试试

不过又看到:

Shadowsocks – Implementations

说是:shadowsocks-qt5好像也支持macOS

去试试

Home · shadowsocks/shadowsocks-qt5 Wiki

https://github.com/shadowsocks/shadowsocks-qt5/wiki

-》

安装指南 · shadowsocks/shadowsocks-qt5 Wiki

https://github.com/shadowsocks/shadowsocks-qt5/wiki/安装指南

“Mac OS X

目前需要自行从源码编译”

参考了:

使用手册 · shadowsocks/shadowsocks-qt5 Wiki

https://github.com/shadowsocks/shadowsocks-qt5/wiki/使用手册

常见问题和解决办法 · shadowsocks/shadowsocks-qt5 Wiki

https://github.com/shadowsocks/shadowsocks-qt5/wiki/常见问题和解决办法

Compiling · shadowsocks/shadowsocks-qt5 Wiki

Compiling · shadowsocks/libQtShadowsocks Wiki

发现貌似还是比较麻烦的。

不到万不得已,还是先不去折腾了。

还是继续尝试上面的,手动加上所有规则试试效果。

结果发现:

https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt

中都是编码后的内容,无法直接拷贝:

所以转向:

从ShadowsocksX的 编辑自动模式的PAC

而找到:

/Users/crifan/.ShadowsocksX/gfwlist.js

gfwlist.js

其中就有:

var rules = [
“||medium.com“,
“||altrec.com“,
“||darpa.mil”,
“||fastpic.ru”,
。。。
“||amazonaws.com“,
“||akamai.net“,
];

所以可以把其中配置部分拷贝过来,然后去加到手动的配置:

然后切换到手动模式,图标左下角会显示M表示Mannual手动

然后再去访问:

(1)medium的:

https://medium.com/@pratik_m23/getting-started-with-react-native-and-nativebase-fdedd8e26df2

(2)google的一些地址

https://analytics.google.com

结果貌似不行。

算了,目前为了能继续使用

https://www.shadowsocks.com

的服务器,暂时只能,忍受ShadowsocksX-NG的不方便之处:

无法合并PAC自动模式+手动模式的配置

暂时只能:

对于:

https://medium.com/

https://analytics.google.com

等,自己觉得可能需要翻墙的网站,就用全局代理

否则一般还是用自动模式

凑合用吧。

同时,也能把自己的ss服务器加到ShadowsocksX-NG中。

暂时就这么凑合用吧。

转载请注明:在路上 » 【已解决】给shadowsocks手动添加国外地址用于翻墙

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
18 queries in 0.232 seconds, using 10.34MB memory