Giter VIP home page Giter VIP logo

gfw_domain_whitelist's Introduction

GFW White List

Build Status

This PAC file uses a white list, which contains websites that can be directly accessed. If some domains are not included, they will access through the proxy.

If you use this PAC file, you may need a proxy which not bill with the flow.

This white list comes from felixonmars dnsmasq-china-list

This project location : https://github.com/R0uter/gfw_domain_whitelist

More information

Please go to WIKI

How to use

Switch to the gh-pages branch to download the latest pac file!

Download the whitelist.pac, and edit the server IP and the proxy type. After that, change your browser's config, and point to whitelist.pac.

var proxy = new Array( "SOCKS5 127.0.0.1:1080; SOCKS 127.0.0.1:1080;",
Change the type of proxy, it also can be 'HTTPS'
Make sure to change both SOCKS5 and SOCKS

Use script to generate the PAC file

Execute command python3 main.py, whitelist.pac will be updated.

Load-Balance

You can change the okToLoadBalance value to true to use the load balance feature. When you edit whitelist.pac, you will find three proxy configs in there. Only the first config will become effective if you leave okToLoadBalance maintain false, but if you want to use load balance, you need to edit all of the proxy row as well.

"SOCKS5 127.0.0.1:1083; SOCKS 127.0.0.1:1083;",
Different port or IP, and do not lose the comma!

As you see, proxy is an array. You can add at most ten proxies to load balance! Though three is good enough.

There is one more thing you should know that load-balancing is domain-based load balance, so it would not accelerate video or download something. Do not use this feature if your proxies are not speed the same.

PAC performance (100,000 repeats)

Firefox  
whitelist.pac 50ms 
load balance: whitelist.pac 40ms

Chrome  
whitelist.pac 70ms
load balance: whitelist.pac 68ms

Safari  
whitelist.pac 50ms  
load balance: whitelist.pac 44ms  

Based on

breakwa11 gfw_whitelist
clowwindy gfwlist2pac
felixonmars dnsmasq-china-list

MIT License (MIT)

The MIT License (MIT)

Copyright (c) 2016 R0uter

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

gfw_domain_whitelist's People

Contributors

birkhofflee avatar breakwa11 avatar delightrun avatar fanck0605 avatar fefz avatar nextplusapp avatar r0uter avatar riverlow avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gfw_domain_whitelist's Issues

googlexxx need to be removed also

Seems these four domains also need to be removed:
"googleadservices.com":1,
"googleapis.com":1,
"googlesyndication.com":1,
"googletagmanager.com":1,

走IP时,重定向了

走阿里云的 IP时,被重定向了。难道说不可以打开IP的网站?

120.24.152.200

[Bug report] 生成的 pac 文件中的内容有误

  1. 生成 pac 文件时, 对 "cn" 结尾的处理有误, 例如下面这样

server=/ffdy.cn.com/114.114.114.114 被处理成 "ffdy.cn":1,
server=/hdn.xnimg.cn.cdngc.net/114.114.114.114 被处理成 "hdn.xnimg":1,
server=/sekong.cn.com/114.114.114.114 被处理成 "sekong.cn":1,
server=/www.givaudan.cn.gccdn.net/114.114.114.114 被处理成 "www.givaudan":1,

  1. 生成 pac 文件时, 另外一个处理有误的地方

server=/www.dell-brand.com/114.114.114.114 被处理成 "www.dell":1,
server=/www.dell.com/114.114.114.114 被处理成 "www.dell":1,

Readme中有几处balance拼写错了

Firefox
whitelist.pac 50ms
load balabce: whitelist.pac 40ms

Chrome
whitelist.pac 70ms
load balabce: whitelist.pac 68ms

Safari
whitelist.pac 50ms
load balabce: whitelist.pac 44ms

建议添加一个通过ip判断是否走代理白名单pac文件

domain 列表毕竟只是民间收集不够精确,单纯采用 domain 判断的话有可能误判,apnic 有的精确的国内 IP 列表(包括 IPv6),仅需解决某些污染问题就可以最大限度的保证分流准确。
思路:
污染问题一般只发生在 xxxlist,该列表域名走 proxy,其余 dnsResolve 后 IP 分流

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.