update 2026-10-22 17:05:51

This commit is contained in:
action committed 2026-10-22 17:05:51 +08:00
1 parent 06b74cb314
commit 3f38c69f75
303 files changed
+7299 -130543

No files matched your search

@@ -6,12 +6,12 @@
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI support for MWAN3 Helper
LUCI_DEPENDS:=+luci-app-mwan3 +pdnsd-alt +dnsmasq-full +ipset
LUCI_DEPENDS:=+luci-app-mwan3 +dnsmasq-full +ipset
LUCI_PKGARCH:=all
PKG_NAME:=luci-app-mwan3helper
PKG_VERSION:=1
PKG_RELEASE:=4
PKG_RELEASE:=5
include $(TOPDIR)/feeds/luci/luci.mk
@@ -1,5 +1,3 @@
-- Licensed to the public under the GNU General Public License v3.
module("luci.controller.mwan3helper", package.seeall)
function index()
@@ -7,15 +5,6 @@ function index()
return
end
entry({"admin", "services", "mwan3helper"}, alias("admin", "services", "mwan3helper", "client"), _("MWAN3 Helper"), 300).dependent = true
entry({"admin", "services", "mwan3helper", "client"}, cbi("mwan3helper/client"), _("Settings"), 10).leaf = true
entry({"admin", "services", "mwan3helper", "lists"}, cbi("mwan3helper/list"), _("IPSet Lists"), 20).leaf = true
entry({"admin", "services", "mwan3helper", "status"}, call("act_status")).leaf = true
end
function act_status()
local e = {}
e.running = luci.sys.call("pgrep mwan3dns >/dev/null") == 0
luci.http.prepare_content("application/json")
luci.http.write_json(e)
entry({"admin", "services", "mwan3helper"}, alias("admin", "services", "mwan3helper", "list"), _("MWAN3 Helper"), 300).dependent = true
entry({"admin", "services", "mwan3helper", "list"}, cbi("mwan3helper/list")).leaf = true
end
@@ -1,28 +0,0 @@
m = Map("mwan3helper")
m.title = translate("MWAN3 Helper")
m.description = translate("MWAN3 Helper generate IPSets")
m:section(SimpleSection).template = "mwan3helper/mwan3helper_status"
s = m:section(TypedSection, "mwan3helper")
s.addremove = false
s.anonymous = true
o = s:option(Flag, "enabled", translate("Enable GFW IPSet"))
o.description = translate("启用 DNS 防污染并打开GFW IPSet(与SSR的GFW列表模式不能同时开启)")
o.rmempty = false
o = s:option(ListValue, "dns", translate("Anti-pollution DNS Server"))
o:value("208.67.222.222:443", translate("OpenDNS (208.67.222.222)"))
o:value("208.67.220.220:443", translate("OpenDNS (208.67.220.220)"))
o:value("8.8.4.4:53", translate("Google Public DNS (8.8.4.4)"))
o:value("8.8.8.8:53", translate("Google Public DNS (8.8.8.8)"))
o:value("209.244.0.3:53", translate("Level 3 Public DNS (209.244.0.3)"))
o:value("209.244.0.4:53", translate("Level 3 Public DNS (209.244.0.4)"))
o:value("4.2.2.1:53", translate("Level 3 Public DNS (4.2.2.1)"))
o:value("4.2.2.2:53", translate("Level 3 Public DNS (4.2.2.2)"))
o:value("4.2.2.3:53", translate("Level 3 Public DNS (4.2.2.3)"))
o:value("4.2.2.4:53", translate("Level 3 Public DNS (4.2.2.4)"))
o:value("1.1.1.1:53", translate("Cloudflare DNS (1.1.1.1)"))
return m
@@ -1,35 +1,75 @@
local sys = require "luci.sys"
m = Map("mwan3helper")
m.title = translate("MWAN3 IPSets")
m.title = translate("MWAN3 Helper")
m.description = translate("MWAN3 Helper generate IPSets")
s = m:section(TypedSection, "mwan3helper")
s.addremove = false
s.anonymous = true
o = s:option(DummyValue, "gfwlist", translate("GFW列表"))
o.description = translate("GFW列表数据: 5207 条,IPSET 名称为 gfwlist")
o = s:option(Flag, "enabled", translate("Enable"))
o.rmempty = false
o = s:option(DummyValue, "all_cn", translate("中国所有IP地址"))
o.description = translate("中国所有IP地址路由表数据: 8304 条, IPSET 名称为 cn")
local function get_num(ipset_name)
local base_cmd = "ipset -q list %s | grep -E 'Number of entries:' | awk -F ': ' '{print $2}'"
local num = sys.exec(base_cmd % ipset_name)
if not num or num == "" then
num = 0
end
return num
end
o = s:option(DummyValue, "chinatelecom", translate("中国电信"))
o.description = translate("中国电信路由表数据: 1948 条, IPSET 名称为 ct")
o = s:option(DummyValue, "unicom_cnc", translate("中国联通/网通"))
o.description = translate("中国联通/网通路由表数据: 895 条, IPSET 名称为 cnc")
local data = {
all_cn = {
name = translate("中国所有IP地址"),
ipset_name = "cn",
num = get_num("cn")
},
ct = {
name = translate("中国电信"),
ipset_name = "ct",
num = get_num("ct")
},
cnc = {
name = translate("中国联通"),
ipset_name = "cnc",
num = get_num("cnc")
},
cmcc = {
name = translate("中国移动/铁通"),
ipset_name = "cmcc",
num = get_num("cmcc")
},
cbtn = {
name = translate("中国广电"),
ipset_name = "cbtn",
num = get_num("cbtn")
},
cernet = {
name = translate("中国教育网"),
ipset_name = "cernet",
num = get_num("cernet")
},
gwbn = {
name = translate("长城宽带/鹏博士"),
ipset_name = "gwbn",
num = get_num("gwbn")
},
othernet = {
name = translate("中国其他ISP"),
ipset_name = "othernet",
num = get_num("othernet")
},
}
o = s:option(DummyValue, "cmcc", translate("中国移动"))
o.description = translate("中国移动路由表数据: 55 条, IPSET 名称为 cmcc")
local data_order = {"all_cn", "ct", "cnc", "cmcc", "cbtn", "cernet", "gwbn", "othernet"}
o = s:option(DummyValue, "crtc", translate("中国铁通"))
o.description = translate("中国铁通路由表数据: 16 条, IPSET 名称为 crtc")
o = s:option(DummyValue, "cernet", translate("中国教育网"))
o.description = translate("中国教育网路由表数据: 162 条, IPSET 名称为 cernet")
o = s:option(DummyValue, "gwbn", translate("长城宽带/鹏博士"))
o.description = translate("长城宽带/鹏博士: 94 条, IPSET 名称为 gwbn")
o = s:option(DummyValue, "othernet", translate("中国其他ISP"))
o.description = translate("中国其他ISP: 5134 条, IPSET 名称为 othernet")
for i, v in ipairs(data_order) do
local d = data[v]
o = s:option(DummyValue, v, d.name)
o.description = translatef("%s 条, IPSet 名称为 %s", d.num, d.ipset_name)
end
return m
@@ -1,22 +0,0 @@
<script type="text/javascript">//<![CDATA[
XHR.poll(3, '<%=url([[admin]], [[services]], [[mwan3helper]], [[status]])%>', null,
function(x, data) {
var tb = document.getElementById('mwan3helper_status');
if (data && tb) {
if (data.running) {
var links = '<em><b><font color=green>MWAN3 Helper <%:RUNNING%></font></b></em>';
tb.innerHTML = links;
} else {
tb.innerHTML = '<em><b><font color=red>MWAN3 Helper <%:NOT RUNNING%></font></b></em>';
}
}
}
);
//]]>
</script>
<style>.mar-10 {margin-left: 50px; margin-right: 10px;}</style>
<fieldset class="cbi-section">
<p id="mwan3helper_status">
<em><%:Collecting data...%></em>
</p>
</fieldset>
@@ -1,24 +1,5 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
msgid "MWAN3 Helper"
msgstr "MWAN3 分流助手"
msgid "Settings"
msgstr "设置"
msgid "IPSet Lists"
msgstr "IPSet列表"
msgid "MWAN3 Helper generate IPSets"
msgstr "自动生成中国地址段和各大ISP运营商的 IPSet 地址段,并解决国外域名的污染问题,帮助MWAN3分流 ISP/WireGuard 等"
msgid "Enable GFW IPSet"
msgstr "启用 GFW IPSet"
msgstr "自动生成中国地址段和各大ISP运营商的 IPSet 地址段"
@@ -1,5 +1,3 @@
config mwan3helper 'config'
option dns '208.67.222.222:443'
option enabled '0'
@@ -3,164 +3,26 @@
START=60
DNSMASQ_RESTART=N
DNS_SERVER="208.67.222.222"
start_pdnsd() {
# DNS_SERVER=$(uci get flowoffload.@flow[0].dns_server 2>/dev/null)
[ -d /var/etc ] || mkdir -p /var/etc
if [ ! -f /var/mwan3dns/pdnsd.cache ]; then
mkdir -p /var/mwan3dns
echo -ne "pd13\000\000\000\000" > /var/mwan3dns/pdnsd.cache
chown -R nobody.nogroup /var/mwan3dns
fi
cat > /var/etc/mwan3dns.conf <<EOF
global {
perm_cache=1024; # dns缓存大小,单位KB,建议不要写的太大
cache_dir="/var/mwan3dns"; # 缓存文件的位置
pid_file = /var/run/mwan3dns.pid;
server_ip = 0.0.0.0; # pdnsd监听的网卡,0.0.0.0是全部网卡
server_port=53000; # pdnsd监听的端口,不要和别的服务冲突即可
status_ctl = on;
paranoid=on; # 二次请求模式,如果请求主DNS服务器返回的是垃圾地址,就向备用服务器请求
query_method=udp_only;
neg_domain_pol = off;
par_queries = 400; # 最多同时请求数
min_ttl = 1h; # DNS结果最短缓存时间
max_ttl = 1w; # DNS结果最长缓存时间
timeout = 10; # DNS请求超时时间,单位秒
destroy_ipset() {
for i in "$@"; do
ipset -q -F $i
ipset -q -X $i
done
}
server {
label = "routine";
ip = $DNS_SERVER;
port = 53;
timeout = 5;
reject = 74.125.127.102, # 以下是脏IP,也就是DNS污染一般会返回的结果,如果收到如下DNS结果会触发二次请求(TCP协议一般不会碰到脏IP)
74.125.155.102,
74.125.39.102,
74.125.39.113,
209.85.229.138,
128.121.126.139,
159.106.121.75,
169.132.13.103,
192.67.198.6,
202.106.1.2,
202.181.7.85,
203.161.230.171,
203.98.7.65,
207.12.88.98,
208.56.31.43,
209.145.54.50,
209.220.30.174,
209.36.73.33,
211.94.66.147,
213.169.251.35,
216.221.188.182,
216.234.179.13,
243.185.187.39,
37.61.54.158,
4.36.66.178,
46.82.174.68,
59.24.3.173,
64.33.88.161,
64.33.99.47,
64.66.163.251,
65.104.202.252,
65.160.219.113,
66.45.252.237,
69.55.52.253,
72.14.205.104,
72.14.205.99,
78.16.49.15,
8.7.198.45,
93.46.8.89,
37.61.54.158,
243.185.187.39,
190.93.247.4,
190.93.246.4,
190.93.245.4,
190.93.244.4,
65.49.2.178,
189.163.17.5,
23.89.5.60,
49.2.123.56,
54.76.135.1,
77.4.7.92,
118.5.49.6,
159.24.3.173,
188.5.4.96,
197.4.4.12,
220.250.64.24,
243.185.187.30,
249.129.46.48,
253.157.14.165;
reject_policy = fail;
}
server {
label = "special"; # 这个随便写
ip = 208.67.222.222,208.67.220.220; # 这里为备用DNS服务器的 ip 地址
port = 443; # 推荐使用53以外的端口(DNS服务器必须支持)
proxy_only = on;
timeout = 5;
}
source {
owner=localhost;
// serve_aliases=on;
file="/etc/hosts";
}
rr {
name=localhost;
reverse=on;
a=127.0.0.1;
owner=localhost;
soa=localhost,root.localhost,42,86400,900,86400,86400;
}
EOF
[ -d /var/sbin ] || mkdir -p /var/sbin
[ -f /var/sbin/mwan3dns ] || cp -a /usr/sbin/pdnsd /var/sbin/mwan3dns
/var/sbin/mwan3dns -c /var/etc/mwan3dns.conf -d
echo "Start MWAN3 Helper DNS"
}
stop_pdnsd() {
kill $(pidof mwan3dns) >/dev/null 2>&1 || kill -9 $(ps | grep mwan3dns | grep -v grep | awk '{print $1}') >/dev/null 2>&1
echo "Stop MWAN3 Helper DNS"
}
start(){
/etc/mwan3helper/genipset.sh cn '/etc/mwan3helper/all_cn.txt'
/etc/mwan3helper/genipset.sh ct '/etc/mwan3helper/chinatelecom.txt'
/etc/mwan3helper/genipset.sh cnc '/etc/mwan3helper/unicom_cnc.txt'
/etc/mwan3helper/genipset.sh cmcc '/etc/mwan3helper/cmcc.txt'
/etc/mwan3helper/genipset.sh crtc '/etc/mwan3helper/crtc.txt'
/etc/mwan3helper/genipset.sh cernet '/etc/mwan3helper/cernet.txt'
/etc/mwan3helper/genipset.sh gwbn '/etc/mwan3helper/gwbn.txt'
/etc/mwan3helper/genipset.sh othernet '/etc/mwan3helper/othernet.txt'
en=$(uci get mwan3helper.config.enabled 2>/dev/null)
if [ $en -eq 1 ]; then
start_pdnsd
mkdir -p /tmp/etc/dnsmasq-mwan3.d
ipset -N gfwlist hash:net 2>/dev/null
awk '!/^$/&&!/^#/{printf("ipset=/.%s/'"gfwlist"'\n",$0)}' /etc/mwan3helper/gfw.txt > /tmp/etc/dnsmasq-mwan3.d/mwan3_gfwlist.conf
awk '!/^$/&&!/^#/{printf("server=/.%s/'"127.0.0.1#53000"'\n",$0)}' /etc/mwan3helper/gfw.txt >> /tmp/etc/dnsmasq-mwan3.d/mwan3_gfwlist.conf
cat > /tmp/dnsmasq.d/dnsmasq-mwan3.conf <<EOF
conf-dir=/var/etc/dnsmasq-mwan3.d
EOF
/etc/init.d/dnsmasq restart
fi
}
stop(){
stop_pdnsd
rm -f /tmp/dnsmasq.d/dnsmasq-mwan3.conf
/etc/init.d/dnsmasq restart
en=$(uci -q get mwan3helper.config.enabled || echo "0")
if [ $en -eq 1 ]; then
[ ! -x /etc/mwan3helper/genipset.sh ] && chmod +x /etc/mwan3helper/genipset.sh
/etc/mwan3helper/genipset.sh cn '/etc/mwan3helper/all_cn.txt'
/etc/mwan3helper/genipset.sh ct '/etc/mwan3helper/chinatelecom.txt'
/etc/mwan3helper/genipset.sh cnc '/etc/mwan3helper/unicom_cnc.txt'
/etc/mwan3helper/genipset.sh cmcc '/etc/mwan3helper/cmcc.txt'
/etc/mwan3helper/genipset.sh cbtn '/etc/mwan3helper/chinabtn.txt'
/etc/mwan3helper/genipset.sh cernet '/etc/mwan3helper/cernet.txt'
/etc/mwan3helper/genipset.sh gwbn '/etc/mwan3helper/gwbn.txt'
/etc/mwan3helper/genipset.sh othernet '/etc/mwan3helper/othernet.txt'
else
destroy_ipset cn ct cnc cmcc cbtn cernet gwbn othernet
fi
}
File diff suppressed because it is too large. Load diff
@@ -1,33 +1,23 @@
1.51.0.0/16
1.184.0.0/15
42.201.32.0/19
42.244.0.0/14
43.252.48.0/22
43.252.48.0/24
49.52.0.0/14
49.120.0.0/14
49.140.0.0/15
49.208.0.0/15
58.154.0.0/15
58.192.0.0/15
58.194.0.0/15
58.196.0.0/15
58.198.0.0/15
58.200.0.0/13
59.64.0.0/14
59.68.0.0/14
59.72.0.0/15
59.74.0.0/15
59.76.0.0/16
59.77.0.0/16
59.78.0.0/15
58.192.0.0/12
59.64.0.0/12
101.4.0.0/14
101.76.0.0/15
103.31.48.0/22
103.81.200.0/22
103.87.20.0/22
103.115.120.0/22
103.137.60.0/24
103.165.110.0/23
103.205.162.0/24
103.226.80.0/22
103.252.172.0/22
110.64.0.0/15
111.114.0.0/15
111.116.0.0/15
@@ -41,23 +31,24 @@
115.158.0.0/16
116.13.0.0/16
116.56.0.0/15
116.255.128.0/24
118.202.0.0/15
118.228.0.0/15
118.230.0.0/16
120.94.0.0/16
120.95.0.0/16
120.94.0.0/15
121.48.0.0/15
121.52.160.0/19
121.192.0.0/16
121.193.0.0/16
121.194.0.0/15
121.192.0.0/14
121.248.0.0/14
122.204.0.0/14
125.216.0.0/15
125.218.0.0/16
125.219.0.0/16
125.220.0.0/15
125.222.0.0/15
125.216.0.0/13
162.105.0.0/16
166.111.0.0/16
168.160.0.0/17
168.160.152.0/24
168.160.158.0/23
168.160.160.0/21
168.160.168.0/24
175.185.0.0/16
175.186.0.0/15
180.84.0.0/15
@@ -66,106 +57,33 @@
183.168.0.0/15
183.170.0.0/16
183.172.0.0/14
192.124.154.0/24
202.4.128.0/19
202.38.2.0/23
202.38.64.0/19
202.38.96.0/19
202.38.64.0/18
202.38.135.0/24
202.38.140.0/23
202.38.146.0/23
202.38.184.0/21
202.38.192.0/18
202.112.0.0/16
202.113.0.0/20
202.113.16.0/20
202.113.32.0/19
202.113.64.0/18
202.113.128.0/18
202.113.192.0/19
202.113.224.0/20
202.113.240.0/20
202.114.0.0/19
202.114.32.0/19
202.114.64.0/18
202.114.128.0/17
202.115.0.0/19
202.115.128.0/17
202.116.0.0/19
202.116.32.0/20
202.116.48.0/20
202.116.64.0/19
202.116.96.0/19
202.116.128.0/17
202.117.0.0/18
202.117.64.0/18
202.117.128.0/17
202.118.0.0/19
202.118.32.0/19
202.118.64.0/18
202.118.128.0/17
202.119.0.0/19
202.119.32.0/19
202.119.64.0/20
202.119.80.0/20
202.119.96.0/19
202.119.128.0/17
202.120.0.0/18
202.120.64.0/18
202.120.128.0/17
202.121.0.0/16
202.127.216.0/21
202.106.125.0/24
202.106.126.0/24
202.112.0.0/13
202.120.0.0/15
202.127.224.0/19
202.179.240.0/20
202.192.0.0/13
202.200.0.0/14
202.204.0.0/14
202.192.0.0/12
203.91.120.0/21
210.25.0.0/16
210.26.0.0/15
210.28.0.0/14
210.32.0.0/14
210.36.0.0/14
210.40.0.0/13
211.64.0.0/14
211.68.0.0/15
211.70.0.0/15
211.80.0.0/16
211.81.0.0/16
211.82.0.0/16
211.83.0.0/16
211.84.0.0/15
211.86.0.0/15
218.192.0.0/16
218.193.0.0/16
218.194.0.0/16
218.195.0.0/16
218.196.0.0/14
219.216.0.0/15
219.218.0.0/15
219.220.0.0/16
219.221.0.0/16
219.222.0.0/15
219.224.0.0/15
219.226.0.0/16
219.227.0.0/16
219.228.0.0/15
219.230.0.0/15
210.32.0.0/12
211.64.0.0/13
211.80.0.0/13
218.192.0.0/13
219.216.0.0/13
219.224.0.0/13
219.242.0.0/15
219.244.0.0/14
222.16.0.0/15
222.18.0.0/15
222.20.0.0/15
222.22.0.0/16
222.23.0.0/16
222.24.0.0/15
222.26.0.0/15
222.28.0.0/14
222.192.0.0/14
222.196.0.0/15
222.198.0.0/16
222.199.0.0/16
222.200.0.0/14
222.204.0.0/15
222.206.0.0/15
222.16.0.0/12
222.192.0.0/12
223.2.0.0/15
223.128.0.0/15
@@ -0,0 +1,24 @@
45.253.60.0/22
103.1.20.0/22
103.1.168.0/22
103.89.184.0/21
103.89.192.0/19
103.89.224.0/21
103.222.184.0/22
111.31.196.0/24
111.31.239.0/24
117.124.237.0/24
117.126.0.0/16
163.61.202.0/23
182.51.114.0/23
182.51.116.0/23
182.51.118.0/24
182.51.122.0/23
182.51.124.0/24
202.143.100.0/22
211.89.230.0/23
211.146.0.0/19
211.146.32.0/21
211.148.160.0/19
211.156.128.0/19
221.129.0.0/16
File diff suppressed because it is too large. Load diff
@@ -1,55 +1,319 @@
27.0.160.0/22
36.128.0.0/10
36.192.0.0/16
36.206.0.0/16
36.212.0.0/15
36.214.0.0/16
36.221.0.0/17
39.128.0.0/10
43.239.172.0/22
42.62.0.0/17
42.157.198.0/23
43.193.65.0/24
43.196.232.0/22
43.226.236.0/24
43.228.116.0/22
43.231.32.0/22
43.239.172.0/23
43.240.72.0/23
43.241.49.0/24
43.241.50.0/24
43.243.12.0/22
43.243.128.0/22
43.247.88.0/22
43.248.96.0/21
43.248.116.0/22
43.248.128.0/20
43.248.184.0/21
43.248.196.0/22
43.248.200.0/21
43.251.244.0/22
45.121.68.0/22
45.121.72.0/22
45.121.172.0/22
45.121.176.0/22
45.122.96.0/21
45.123.152.0/22
45.124.36.0/22
45.125.24.0/22
45.253.72.0/22
61.14.240.0/22
61.14.244.0/22
43.254.88.0/22
43.255.84.0/24
43.255.228.0/22
45.113.20.0/22
45.113.200.0/22
45.117.8.0/22
45.119.64.0/22
45.120.100.0/22
45.125.25.0/24
45.248.8.0/22
45.248.204.0/22
45.250.28.0/22
45.250.40.0/22
45.251.96.0/22
52.82.164.0/22
52.82.184.0/23
52.82.188.0/23
52.82.190.0/24
54.222.46.0/23
54.222.48.0/21
54.222.65.0/24
54.222.89.0/24
54.222.96.0/23
54.222.100.0/22
54.222.104.0/21
54.222.112.0/22
54.222.116.0/23
58.67.192.0/19
58.83.0.0/17
58.83.160.0/23
58.83.176.0/23
58.83.192.0/18
59.151.0.0/19
59.151.64.0/18
59.191.0.0/17
61.232.0.0/14
61.237.0.0/16
69.235.184.0/21
101.36.128.0/17
101.125.130.0/24
101.144.0.0/12
101.251.192.0/21
101.251.200.0/22
101.251.224.0/20
101.251.240.0/21
101.251.248.0/22
103.1.10.0/23
103.3.128.0/22
103.8.220.0/22
103.19.232.0/22
103.20.112.0/22
103.21.176.0/22
103.35.104.0/22
103.61.156.0/22
103.61.160.0/22
103.62.24.0/22
103.62.204.0/22
103.62.208.0/22
103.37.47.0/24
103.37.72.0/24
103.40.12.0/22
103.40.192.0/23
103.45.162.0/23
103.46.170.0/23
103.52.176.0/23
103.53.124.0/22
103.59.116.0/22
103.60.164.0/22
103.78.228.0/22
103.82.224.0/22
103.83.72.0/22
103.84.170.0/23
103.85.84.0/22
103.85.172.0/22
103.85.177.0/24
103.85.178.0/23
103.87.180.0/22
103.95.68.0/22
103.101.180.0/22
103.110.132.0/22
103.130.160.0/23
103.143.228.0/23
103.152.29.0/24
103.192.0.0/22
103.192.144.0/22
103.193.140.0/22
103.203.164.0/22
103.205.108.0/22
103.205.116.0/22
103.222.196.0/22
103.205.252.0/22
103.208.12.0/22
103.213.96.0/22
103.215.36.0/22
103.216.4.0/22
103.216.152.0/22
103.219.24.0/21
103.219.32.0/21
103.220.60.0/22
103.229.212.0/22
103.230.236.0/23
103.232.166.0/23
103.233.52.0/22
103.238.132.0/22
103.239.152.0/22
103.239.204.0/22
103.239.244.0/23
103.239.247.0/24
103.252.36.0/22
103.253.232.0/22
106.3.144.0/21
106.13.252.0/22
106.75.0.0/17
110.42.0.0/21
110.42.8.0/22
110.42.12.0/23
110.42.14.0/24
110.56.0.0/13
110.96.0.0/16
110.100.0.0/16
110.112.0.0/15
110.114.0.0/16
110.115.128.0/17
110.116.0.0/16
110.120.0.0/16
110.172.200.0/21
110.199.0.0/16
110.203.0.0/23
110.211.0.0/16
110.218.0.0/15
110.236.0.0/15
111.0.0.0/10
111.132.0.0/16
111.148.0.0/16
111.149.0.0/24
111.223.12.0/22
112.0.0.0/10
113.18.0.0/16
114.112.80.0/20
114.118.104.0/21
114.118.112.0/20
115.180.0.0/17
116.85.16.0/22
116.242.224.0/19
117.48.0.0/18
117.48.64.0/19
117.48.144.0/20
117.48.193.0/24
117.48.194.0/24
117.48.219.0/24
117.48.232.0/22
117.50.0.0/17
117.128.0.0/10
118.26.197.0/24
118.26.198.0/23
118.26.200.0/21
118.26.224.0/20
118.30.0.0/16
118.193.127.0/24
118.195.0.0/17
118.204.0.0/17
119.44.205.0/24
119.161.183.0/24
120.132.0.0/19
120.132.96.0/20
120.132.116.0/24
120.132.120.0/21
120.132.128.0/19
120.132.176.0/20
120.132.192.0/23
120.132.208.0/20
120.132.224.0/19
120.133.0.0/19
120.133.48.0/20
120.133.96.0/19
120.133.224.0/22
120.192.0.0/10
175.176.188.0/22
121.46.16.0/20
121.46.192.0/22
121.70.0.0/17
121.255.0.0/16
122.14.192.0/18
122.70.0.0/15
122.72.3.0/24
122.72.16.0/24
122.72.38.0/24
122.72.112.0/24
122.94.0.0/16
123.58.0.0/20
123.61.0.0/16
123.64.0.0/15
123.66.0.0/16
123.77.0.0/16
123.88.0.0/15
123.90.0.0/16
123.99.192.0/20
123.103.14.0/24
124.201.0.0/17
124.243.192.0/18
124.250.16.0/20
124.250.61.0/24
124.250.120.0/23
124.250.128.0/17
124.251.0.0/19
124.251.56.0/22
124.251.96.0/23
124.251.126.0/23
124.251.128.0/17
125.254.128.0/19
125.254.160.0/21
125.254.176.0/21
125.254.184.0/22
125.254.188.0/23
125.254.190.0/24
139.159.32.0/20
139.220.128.0/17
140.179.224.0/19
140.210.16.0/20
140.210.64.0/19
157.15.104.0/23
157.20.246.0/23
157.66.164.0/23
160.19.76.0/23
160.202.212.0/22
161.207.18.0/23
167.189.0.0/16
180.188.16.0/21
182.50.112.0/20
182.157.0.0/16
182.175.244.0/22
183.84.4.0/22
183.192.0.0/10
192.140.209.0/24
192.140.210.0/23
192.140.212.0/22
202.46.224.0/22
202.123.120.0/22
202.141.176.0/20
203.76.240.0/22
203.130.32.0/22
203.135.104.0/21
203.196.0.0/22
203.196.4.0/24
203.212.12.0/22
211.98.0.0/16
211.99.117.0/24
211.99.118.0/23
211.99.120.0/23
211.99.160.0/22
211.99.188.0/22
211.99.216.0/24
211.103.0.0/17
211.136.0.0/14
211.140.0.0/15
211.142.0.0/17
211.142.128.0/17
211.143.0.0/16
218.200.0.0/14
218.204.0.0/15
218.206.0.0/15
211.136.0.0/13
211.144.159.0/24
211.151.4.0/23
211.151.32.0/19
211.151.64.0/18
211.151.128.0/17
211.152.0.0/19
211.155.236.0/24
218.98.96.0/23
218.98.98.0/24
218.98.100.0/24
218.98.111.0/24
218.98.112.0/23
218.200.0.0/13
218.245.0.0/21
219.83.160.0/21
221.122.0.0/19
221.122.32.0/20
221.122.128.0/17
221.123.128.0/18
221.130.0.0/15
221.172.0.0/16
221.174.0.0/16
221.176.0.0/13
223.64.0.0/11
223.96.0.0/12
223.112.0.0/14
223.116.0.0/15
223.120.128.0/17
223.121.128.0/17
223.122.0.0/15
223.124.0.0/14
222.35.0.0/16
222.42.115.0/24
222.44.0.0/15
222.49.128.0/17
222.50.0.0/16
222.59.128.0/17
223.64.0.0/10
223.160.0.0/20
223.160.16.0/21
223.160.112.0/20
223.160.128.0/22
223.160.134.0/23
223.160.136.0/21
223.160.144.0/20
223.160.160.0/19
223.160.192.0/19
223.160.224.0/21
223.160.232.0/22
223.160.236.0/23
223.161.194.0/23
223.161.196.0/22
223.161.200.0/21
223.161.208.0/20
223.161.224.0/19
223.223.192.0/20
@@ -1,16 +0,0 @@
36.192.0.0/11
43.247.240.0/22
61.232.0.0/14
61.236.0.0/15
101.144.0.0/12
103.3.128.0/22
110.96.0.0/11
110.192.0.0/11
115.180.0.0/15
118.204.0.0/14
120.90.0.0/15
122.64.0.0/11
123.64.0.0/11
211.98.0.0/16
221.172.0.0/14
222.32.0.0/11
File diff suppressed because it is too large. Load diff
@@ -1,290 +1,69 @@
1.94.0.0/15
14.1.24.0/22
14.103.0.0/16
14.196.0.0/15
42.196.0.0/14
43.242.56.0/22
43.242.144.0/22
43.243.144.0/22
43.243.148.0/22
43.247.200.0/22
43.247.204.0/22
43.247.208.0/22
43.247.224.0/22
43.250.16.0/22
43.250.20.0/22
45.121.240.0/22
45.121.244.0/22
45.121.248.0/22
45.121.252.0/22
45.122.4.0/22
45.122.8.0/22
45.122.12.0/22
45.122.16.0/22
45.122.20.0/22
45.122.24.0/22
45.122.28.0/22
45.122.32.0/22
45.122.36.0/22
45.122.40.0/22
45.122.192.0/22
45.122.196.0/22
45.122.200.0/22
45.122.204.0/22
45.122.208.0/22
45.122.212.0/22
45.122.216.0/22
45.123.28.0/22
45.123.32.0/22
45.123.36.0/22
45.123.76.0/22
45.123.80.0/22
45.123.84.0/22
45.123.88.0/22
45.123.204.0/22
45.123.212.0/22
45.123.224.0/22
45.123.228.0/22
45.123.232.0/22
45.123.236.0/22
45.123.240.0/22
45.123.244.0/22
45.123.248.0/22
45.123.252.0/22
45.124.0.0/22
45.124.100.0/22
45.252.152.0/22
45.252.200.0/22
45.252.204.0/22
45.252.208.0/22
45.252.212.0/22
45.252.216.0/22
45.252.220.0/22
45.252.224.0/22
45.253.0.0/22
45.253.4.0/22
45.253.8.0/22
45.253.12.0/22
45.253.16.0/22
45.253.20.0/22
45.253.28.0/22
45.253.36.0/22
45.253.40.0/22
45.253.56.0/22
45.253.76.0/22
45.253.80.0/22
45.253.84.0/22
45.253.92.0/22
45.254.28.0/22
45.254.56.0/22
45.254.96.0/22
45.254.132.0/22
45.254.152.0/22
45.254.180.0/22
45.254.200.0/22
45.254.204.0/22
45.254.208.0/22
45.254.212.0/22
45.254.216.0/22
45.254.220.0/22
45.254.224.0/22
45.254.228.0/22
49.220.0.0/14
59.152.16.0/22
59.152.20.0/22
59.152.24.0/22
59.152.28.0/22
59.152.64.0/22
59.152.68.0/22
59.152.72.0/22
59.152.76.0/22
59.152.112.0/22
59.152.116.0/22
60.194.0.0/15
60.206.0.0/15
61.14.212.0/22
61.14.216.0/22
61.14.220.0/22
101.38.0.0/15
101.40.0.0/15
101.104.0.0/14
101.130.0.0/15
103.23.56.0/22
103.24.184.0/22
103.38.0.0/22
103.38.228.0/22
103.38.232.0/22
103.41.148.0/22
103.41.152.0/22
103.62.72.0/22
103.62.76.0/22
103.62.80.0/22
103.62.84.0/22
103.62.96.0/22
103.62.100.0/22
103.62.104.0/22
103.62.108.0/22
103.62.112.0/22
103.62.116.0/22
103.62.120.0/22
103.62.124.0/22
103.62.128.0/22
103.62.132.0/22
103.63.64.0/22
103.63.68.0/22
103.63.72.0/22
103.63.76.0/22
103.63.80.0/22
103.63.84.0/22
103.63.88.0/22
103.63.140.0/22
103.63.144.0/22
103.63.152.0/22
103.63.196.0/22
103.63.200.0/22
103.63.204.0/22
103.63.208.0/22
103.192.48.0/22
103.192.52.0/22
103.192.56.0/22
103.192.84.0/22
103.192.88.0/22
103.192.92.0/22
103.192.96.0/22
103.192.100.0/22
103.192.104.0/22
103.192.108.0/22
103.192.112.0/22
103.192.216.0/22
103.202.152.0/22
103.202.156.0/22
103.202.160.0/22
103.202.164.0/22
103.202.168.0/22
103.202.172.0/22
103.202.176.0/22
103.202.180.0/22
103.202.184.0/22
103.202.188.0/22
103.202.192.0/22
103.202.196.0/22
103.202.200.0/21
103.202.228.0/22
103.202.236.0/22
103.202.240.0/22
103.202.244.0/22
103.202.248.0/22
103.202.252.0/22
103.203.0.0/22
103.203.4.0/22
103.203.8.0/22
103.203.12.0/22
103.203.16.0/22
103.203.20.0/22
103.203.24.0/22
103.203.28.0/22
103.203.32.0/22
103.203.104.0/22
103.203.108.0/22
103.203.112.0/22
103.203.116.0/22
103.203.120.0/22
103.203.124.0/22
103.203.128.0/22
103.204.88.0/22
103.204.112.0/22
103.204.148.0/22
103.204.152.0/22
103.221.88.0/22
103.221.132.0/22
103.221.156.0/22
103.221.180.0/22
103.221.184.0/22
103.221.188.0/22
103.221.192.0/22
103.221.196.0/22
103.222.0.0/22
103.222.4.0/22
103.222.8.0/22
103.222.12.0/22
103.222.16.0/22
103.222.24.0/22
103.222.28.0/22
103.222.36.0/22
103.222.44.0/22
103.222.48.0/22
103.222.56.0/22
103.222.60.0/22
103.222.64.0/22
103.222.68.0/22
103.222.72.0/22
103.222.76.0/22
103.222.80.0/22
103.222.84.0/22
103.222.88.0/22
103.222.92.0/22
103.222.96.0/22
103.222.100.0/22
103.222.104.0/22
103.222.108.0/22
103.222.200.0/22
103.222.204.0/22
103.222.208.0/22
103.222.212.0/22
103.238.20.0/22
103.238.24.0/22
103.238.40.0/22
115.31.72.0/22
115.31.76.0/22
115.47.0.0/16
115.182.0.0/16
115.183.0.0/16
115.187.0.0/22
115.187.4.0/22
115.187.8.0/22
115.187.12.0/22
115.190.0.0/15
116.199.128.0/19
117.58.0.0/17
117.120.64.0/18
118.28.0.0/15
124.14.0.0/15
124.192.0.0/15
124.200.0.0/13
124.254.0.0/18
175.188.0.0/14
180.88.0.0/14
180.235.112.0/22
202.4.252.0/22
202.160.156.0/22
202.168.136.0/22
202.168.140.0/22
203.78.156.0/22
203.82.112.0/22
203.82.116.0/22
203.82.120.0/22
203.82.124.0/22
203.82.224.0/22
203.82.228.0/22
203.82.232.0/22
203.82.236.0/22
203.86.64.0/20
203.114.80.0/22
203.114.84.0/22
203.114.88.0/22
203.114.92.0/22
203.207.92.0/22
203.207.112.0/20
203.207.192.0/21
203.207.208.0/20
211.101.0.0/18
211.103.128.0/17
211.164.0.0/14
218.249.0.0/16
219.90.68.0/22
219.90.72.0/22
219.90.76.0/22
219.238.0.0/15
220.112.0.0/14
223.208.0.0/14
223.255.0.0/17
60.195.252.0/22
103.155.76.0/23
103.235.144.0/24
113.48.48.0/20
113.48.224.0/20
113.49.16.0/20
113.50.0.0/20
113.50.32.0/24
113.50.48.0/20
113.50.64.0/20
115.182.0.0/19
115.182.32.0/22
115.182.40.0/21
115.182.48.0/20
115.182.64.0/18
115.182.128.0/19
115.182.160.0/20
115.182.192.0/22
115.182.200.0/21
115.182.208.0/20
115.182.224.0/20
118.64.0.0/21
118.64.248.0/21
118.65.0.0/21
118.66.184.0/24
118.66.224.0/20
118.144.64.0/21
118.144.72.0/22
118.144.77.0/24
118.144.78.0/24
118.144.80.0/20
118.145.0.0/19
118.244.192.0/22
118.244.196.0/24
118.244.202.0/23
118.244.205.0/24
118.244.206.0/23
118.244.208.0/20
118.244.224.0/20
121.39.255.0/24
122.49.16.0/20
122.49.32.0/20
123.196.112.0/20
124.14.5.0/24
124.14.8.0/24
124.14.12.0/23
124.14.15.0/24
124.14.22.0/24
124.202.128.0/19
210.74.0.0/22
210.79.224.0/19
211.147.4.0/22
211.154.160.0/22
211.154.168.0/21
211.155.128.0/19
211.161.101.0/24
211.161.102.0/23
211.161.192.0/22
211.161.203.0/24
211.161.209.0/24
211.161.221.0/24
211.165.0.0/16
211.166.0.0/16
218.241.16.0/22
218.241.24.0/22
218.241.152.0/21
219.234.80.0/20
219.238.232.0/21
219.239.92.0/22
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -55,33 +55,6 @@ msgstr "全锥形 NAT"
msgid "Using FullCone NAT can improve gaming performance effectively"
msgstr "使用全锥形 NAT 可以有效提升游戏体验"
msgid "DNS Caching"
msgstr "DNS 缓存"
msgid "Enable DNS Caching and anti ISP DNS pollution"
msgstr "启用 DNS 多线程查询、缓存,并防止 ISP 的 DNS 广告和域名劫持"
msgid "Resolve DNS Mode"
msgstr "DNS 解析方式"
msgid "DNS Program"
msgstr "DNS 解析程序"
msgid "Using PDNSD to query and cache"
msgstr "使用 PDNSD 解析"
msgid "Using DNSForwarder to query and cache"
msgstr "使用 DNSForwarder 解析"
msgid "Using DNSProxy to query and cache"
msgstr "使用 DNSProxy 解析"
msgid "Upsteam DNS Server"
msgstr "上游 DNS 服务器"
msgid "Muitiple DNS server can saperate with ','"
msgstr "多个上游 DNS 服务器请用 ',' 分隔(注意用英文逗号)"
msgid "Running Status"
msgstr "运行状态"