修改custom-domains.txt文件名为proxy-domains.txt、修改参数user-rule为proxy-domains以及剩余几个参数,让名字更符合直觉。移除历史遗留很早就不再需要的tld.txt。改改readme。
This commit is contained in:
2
.github/workflows/auto-update-gfw-pac.yml
vendored
2
.github/workflows/auto-update-gfw-pac.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Run gfw-pac.py script
|
||||
run: ./gfw-pac.py -f gfw.pac -p "PROXY 127.0.0.1:3128" --user-rule=custom-domains.txt --direct-rule=direct-domains.txt --localtld-rule=local-tlds.txt
|
||||
run: ./gfw-pac.py -f gfw.pac -p "PROXY 127.0.0.1:3128" --proxy-domains=proxy-domains.txt --direct-domains=direct-domains.txt --localtld-domains=local-tlds.txt
|
||||
|
||||
- name: Commit gfw.pac
|
||||
run: |
|
||||
|
||||
31
README.md
31
README.md
@@ -4,12 +4,17 @@
|
||||
|
||||
**此仓库每14天自动通过GitHub Action从apnic获取国内IPv4地址段并更新gfw.pac文件**
|
||||
|
||||
## 代理工具普遍支持路由规则,为什么还要用 pac 文件?
|
||||
|
||||
如果浏览器所有流量都进入代理程序,那即使命中代理的直连规则,网络流量也要经过代理程序转发,性能会受影响。而先由浏览器通过 pac 文件决定用代理还是直连后,直连的流量不经过代理程序,性能更好。所有流行代理前端几乎都内置了 pac 文件,当选择代理前端提供的“pac模式”的时候,代理前端会将浏览器设置为它自动生成的 pac 文件。
|
||||
|
||||
## 特性
|
||||
* 速度快,优先按域名匹配,再按解析后的 IP 匹配
|
||||
* 速度快:优先按域名匹配,常用域名节省解析时间
|
||||
* IP规则前置:若域名解析出的 IPv4 地址属于国内,也返回直连,流量不经过代理程序
|
||||
* 可自定义需要代理的域名
|
||||
* 可自定义本地开发 TLD 域名,例如 .test
|
||||
* 可自定义不需要代理的域名
|
||||
* 如果访问的域名不在列表里,但是 IP 在国外,也返回代理服务器
|
||||
* 可自定义直连的域名
|
||||
* 可自定义直连的 TLD 域名,例如 .test
|
||||
* 直接可用的 `gfw.pac` 包含了常用的直连域名和代理域名
|
||||
|
||||
## 用法
|
||||
|
||||
@@ -19,9 +24,9 @@
|
||||
## gfw-pac.py 使用说明
|
||||
|
||||
usage: gfw-pac.py -f 输出的PAC文件名 -p 代理服务器 [-h]
|
||||
[--user-rule 自定义使用代理域名的文件]
|
||||
[--direct-rule 自定义直连域名域名的文件]
|
||||
[--localtld-rule 本地TLD文件]
|
||||
[--proxy-domains 自定义使用代理域名的文件]
|
||||
[--direct-domains 自定义直连域名域名的文件]
|
||||
[--localtld-domains 本地TLD文件]
|
||||
[--ip-file APNIC下载的delegated文件]
|
||||
|
||||
参数说明:
|
||||
@@ -29,18 +34,18 @@
|
||||
-h 显示帮助
|
||||
-f (必须)输出的 pac 文件
|
||||
-p (必须)指定代理服务器,例如 PROXY 192.168.1.1:3128
|
||||
--user-rule 自定义使用代理的域名文件,文件里每行一个域名
|
||||
--direct-rule 自定义不使用代理的域名文件,文件里每行一个域名
|
||||
--localtld-rule 自定义不使用代理的顶级域,文件里每行一个域名,必须带前导圆点(例如 .test)
|
||||
--user-domains 自定义使用代理的域名文件,文件里每行一个域名
|
||||
--direct-domains 自定义不使用代理的域名文件,文件里每行一个域名
|
||||
--localtld-domains 自定义不使用代理的顶级域,文件里每行一个域名,必须带前导圆点(例如 .test)
|
||||
--ip-file 指定本地的从 apnic 下载的 IP 分配文件。若不指定则自动从 apnic 下载
|
||||
|
||||
举例:
|
||||
|
||||
./gfw-pac.py -f gfw.pac \
|
||||
-p "PROXY 192.168.1.200:3128; DIRECT" \
|
||||
--user-rule=custom-domains.txt \
|
||||
--direct-rule=direct-domains.txt \
|
||||
--localtld-rule=local-tlds.txt \
|
||||
--proxy-domains=proxy-domains.txt \
|
||||
--direct-domains=direct-domains.txt \
|
||||
--localtld-domains=local-tlds.txt \
|
||||
--ip-file=delegated-apnic-latest.txt
|
||||
|
||||
## 技巧
|
||||
|
||||
@@ -31,6 +31,8 @@ sinaimg.cn
|
||||
sinajs.cn
|
||||
sina.cn
|
||||
taobao.com
|
||||
aliyun.com
|
||||
aliyuncs.com
|
||||
alicdn.com
|
||||
alibabausercontent.com
|
||||
alipay.com
|
||||
@@ -68,3 +70,4 @@ fonts.googleapis.com
|
||||
fonts.gstatic.com
|
||||
www.gstatic.com
|
||||
ssl.gstatic.com
|
||||
quark.cn
|
||||
@@ -24,11 +24,11 @@ def parse_args():
|
||||
help='代理服务器, '
|
||||
'例如, "PROXY 127.0.0.1:3128;"',
|
||||
metavar='PROXY')
|
||||
parser.add_argument('--user-rule', dest='user_rule',
|
||||
parser.add_argument('--proxy-domains', dest='user_rule',
|
||||
help='直接通过代理域名的文件,每行一个')
|
||||
parser.add_argument('--direct-rule', dest='direct_rule',
|
||||
parser.add_argument('--direct-domains', dest='direct_rule',
|
||||
help='直连的域名文件,每行一个')
|
||||
parser.add_argument('--localtld-rule', dest='localtld_rule',
|
||||
parser.add_argument('--localtld-domains', dest='localtld_rule',
|
||||
help='本地 TLD 规则文件, 不走代理, 每行一个,以 . 开头')
|
||||
parser.add_argument('--ip-file', dest='ip_file',
|
||||
help='delegated-apnic-latest from apnic.net')
|
||||
|
||||
Reference in New Issue
Block a user