Use geosite.dat:category-ads-all AD List
This commit is contained in:
parent
6d2a207cb0
commit
73a309951c
@ -10,7 +10,8 @@ function index()
|
|||||||
page.acl_depends = { "luci-app-mosdns" }
|
page.acl_depends = { "luci-app-mosdns" }
|
||||||
|
|
||||||
entry({"admin", "services", "mosdns", "basic"}, cbi("mosdns/basic"), _("Basic Setting"), 1).leaf = true
|
entry({"admin", "services", "mosdns", "basic"}, cbi("mosdns/basic"), _("Basic Setting"), 1).leaf = true
|
||||||
entry({"admin", "services", "mosdns", "update"}, cbi("mosdns/update"), _("Geodata Update"), 2).leaf = true
|
entry({"admin", "services", "mosdns", "whitelist"}, cbi("mosdns/whitelist"), _("ADblock whitelist"), 2).leaf = true
|
||||||
|
entry({"admin", "services", "mosdns", "update"}, cbi("mosdns/update"), _("Geodata Update"), 3).leaf = true
|
||||||
entry({"admin", "services", "mosdns", "status"}, call("act_status")).leaf = true
|
entry({"admin", "services", "mosdns", "status"}, call("act_status")).leaf = true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -78,19 +78,4 @@ function config.write(self, section, value)
|
|||||||
nixio.fs.writefile("/etc/mosdns/cus_config.yaml", value)
|
nixio.fs.writefile("/etc/mosdns/cus_config.yaml", value)
|
||||||
end
|
end
|
||||||
|
|
||||||
config = s:option(TextValue, "whitelist")
|
|
||||||
config.description = translate("<font color=\"ff0000\"><strong>ADblock whitelist.")
|
|
||||||
config.template = "cbi/tvalue"
|
|
||||||
config.rows = 25
|
|
||||||
config:depends( "configfile", "./def_config.yaml")
|
|
||||||
|
|
||||||
function config.cfgvalue(self, section)
|
|
||||||
return nixio.fs.readfile("/etc/mosdns/whitelist.txt")
|
|
||||||
end
|
|
||||||
|
|
||||||
function config.write(self, section, value)
|
|
||||||
value = value:gsub("\r\n?", "\n")
|
|
||||||
nixio.fs.writefile("/etc/mosdns/whitelist.txt", value)
|
|
||||||
end
|
|
||||||
|
|
||||||
return m
|
return m
|
||||||
|
@ -2,8 +2,6 @@ m = Map("mosdns")
|
|||||||
m.title = translate("MosDNS")
|
m.title = translate("MosDNS")
|
||||||
m.description = translate("MosDNS is a 'programmable' DNS forwarder.")
|
m.description = translate("MosDNS is a 'programmable' DNS forwarder.")
|
||||||
|
|
||||||
m:section(SimpleSection).template = "mosdns/mosdns_status"
|
|
||||||
|
|
||||||
s = m:section(TypedSection, "mosdns")
|
s = m:section(TypedSection, "mosdns")
|
||||||
s.addremove = false
|
s.addremove = false
|
||||||
s.anonymous = true
|
s.anonymous = true
|
||||||
@ -11,9 +9,6 @@ s.anonymous = true
|
|||||||
enable = s:option(Flag, "geo_auto_update", translate("Enable Auto Database Update"))
|
enable = s:option(Flag, "geo_auto_update", translate("Enable Auto Database Update"))
|
||||||
enable.rmempty = false
|
enable.rmempty = false
|
||||||
|
|
||||||
enable = s:option(Flag, "update_adlist", translate("Enable ADList Update"))
|
|
||||||
enable.rmempty = false
|
|
||||||
|
|
||||||
o = s:option(ListValue, "geo_update_week_time", translate("Update Cycle"))
|
o = s:option(ListValue, "geo_update_week_time", translate("Update Cycle"))
|
||||||
o:value("*", translate("Every Day"))
|
o:value("*", translate("Every Day"))
|
||||||
o:value("1", translate("Every Monday"))
|
o:value("1", translate("Every Monday"))
|
||||||
|
23
luasrc/model/cbi/mosdns/whitelist.lua
Normal file
23
luasrc/model/cbi/mosdns/whitelist.lua
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
m = Map("mosdns")
|
||||||
|
m.title = translate("MosDNS")
|
||||||
|
m.description = translate("MosDNS is a 'programmable' DNS forwarder.")
|
||||||
|
|
||||||
|
s = m:section(TypedSection, "mosdns")
|
||||||
|
s.addremove = false
|
||||||
|
s.anonymous = true
|
||||||
|
|
||||||
|
config = s:option(TextValue, "whitelist")
|
||||||
|
config.description = translate("<font color=\"ff0000\"><strong>ADblock whitelist.")
|
||||||
|
config.template = "cbi/tvalue"
|
||||||
|
config.rows = 25
|
||||||
|
|
||||||
|
function config.cfgvalue(self, section)
|
||||||
|
return nixio.fs.readfile("/etc/mosdns/whitelist.txt")
|
||||||
|
end
|
||||||
|
|
||||||
|
function config.write(self, section, value)
|
||||||
|
value = value:gsub("\r\n?", "\n")
|
||||||
|
nixio.fs.writefile("/etc/mosdns/whitelist.txt", value)
|
||||||
|
end
|
||||||
|
|
||||||
|
return m
|
@ -31,6 +31,9 @@ msgstr "<font color=\"ff0000\"><strong>注意!此页的更改仅当 'MosDNS
|
|||||||
msgid "<font color=\"ff0000\"><strong>ADblock whitelist."
|
msgid "<font color=\"ff0000\"><strong>ADblock whitelist."
|
||||||
msgstr "<font color=\"ff0000\"><strong>广告过滤白名单"
|
msgstr "<font color=\"ff0000\"><strong>广告过滤白名单"
|
||||||
|
|
||||||
|
msgid "ADblock whitelist"
|
||||||
|
msgstr "白名单"
|
||||||
|
|
||||||
msgid "Geodata Update"
|
msgid "Geodata Update"
|
||||||
msgstr "数据库更新"
|
msgstr "数据库更新"
|
||||||
|
|
||||||
@ -73,9 +76,6 @@ msgstr "检查并更新"
|
|||||||
msgid "Enable Auto Database Update"
|
msgid "Enable Auto Database Update"
|
||||||
msgstr "启用数据库自动更新"
|
msgstr "启用数据库自动更新"
|
||||||
|
|
||||||
msgid "Enable ADList Update"
|
|
||||||
msgstr "更新广告过滤列表"
|
|
||||||
|
|
||||||
msgid "Enable AutoConfiguration"
|
msgid "Enable AutoConfiguration"
|
||||||
msgstr "启用自动化配置"
|
msgstr "启用自动化配置"
|
||||||
|
|
||||||
|
@ -62,16 +62,6 @@ delcron() {
|
|||||||
crontab $CRON_FILE
|
crontab $CRON_FILE
|
||||||
}
|
}
|
||||||
|
|
||||||
adblock() {
|
|
||||||
cp -f /etc/mosdns/serverlist.txt /etc/mosdns/serverlist.bak
|
|
||||||
modns_adblock=$(uci -q get mosdns.mosdns.adblock)
|
|
||||||
if [ "$modns_adblock" = 0 ]; then
|
|
||||||
: > /etc/mosdns/serverlist.txt
|
|
||||||
else
|
|
||||||
cat /etc/mosdns/serverlist.bak >/etc/mosdns/serverlist.txt
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
start_service() {
|
start_service() {
|
||||||
|
|
||||||
# Reading config
|
# Reading config
|
||||||
@ -87,7 +77,6 @@ start_service() {
|
|||||||
fi
|
fi
|
||||||
delcron
|
delcron
|
||||||
setcron
|
setcron
|
||||||
adblock
|
|
||||||
procd_open_instance mosdns
|
procd_open_instance mosdns
|
||||||
procd_set_param command $PROG -dir $RES_DIR -c "$CONF"
|
procd_set_param command $PROG -dir $RES_DIR -c "$CONF"
|
||||||
procd_set_param user root
|
procd_set_param user root
|
||||||
|
6
root/etc/mosdns/ad_domain.sh
Executable file
6
root/etc/mosdns/ad_domain.sh
Executable file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
adblock=$(uci -q get mosdns.mosdns.adblock)
|
||||||
|
if [ "$adblock" -eq 1 ];then
|
||||||
|
echo "ext:/usr/share/v2ray/geosite.dat:category-ads-all"
|
||||||
|
fi
|
@ -99,7 +99,7 @@ plugin:
|
|||||||
type: query_matcher
|
type: query_matcher
|
||||||
args:
|
args:
|
||||||
domain:
|
domain:
|
||||||
- "ext:./serverlist.txt"
|
- ${{ ./ad_domain.sh }}
|
||||||
|
|
||||||
- tag: qtype65
|
- tag: qtype65
|
||||||
type: query_matcher
|
type: query_matcher
|
||||||
|
@ -19,14 +19,6 @@ getdat() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
get_adlist() {
|
|
||||||
if exist curl; then
|
|
||||||
curl -fSLo "$TMPDIR/$1" "https://raw.cooluc.com/QiuSimons/openwrt-mos/master/dat/$1"
|
|
||||||
else
|
|
||||||
wget "https://raw.cooluc.com/QiuSimons/openwrt-mos/master/dat/$1" -nv -O "$TMPDIR/$1"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
getdns() {
|
getdns() {
|
||||||
if [ "$2" == "inactive" ]; then
|
if [ "$2" == "inactive" ]; then
|
||||||
ubus call network.interface.wan status | jsonfilter -e "@['inactive']['dns-server'][$1]"
|
ubus call network.interface.wan status | jsonfilter -e "@['inactive']['dns-server'][$1]"
|
||||||
|
@ -16,14 +16,4 @@ fi
|
|||||||
cp -rf "$TMPDIR"/* /usr/share/v2ray
|
cp -rf "$TMPDIR"/* /usr/share/v2ray
|
||||||
rm -rf "$TMPDIR"
|
rm -rf "$TMPDIR"
|
||||||
|
|
||||||
update_adlist=$(uci -q get mosdns.mosdns.update_adlist)
|
|
||||||
if [ "$update_adlist" -eq 1 ]; then
|
|
||||||
TMPDIR=$(mktemp -d) || exit 2
|
|
||||||
get_adlist serverlist.txt
|
|
||||||
if [ "$(grep -o .com "$TMPDIR"/serverlist.txt | wc -l)" -lt "1000" ]; then
|
|
||||||
rm -rf "$TMPDIR"/serverlist.txt
|
|
||||||
fi
|
|
||||||
cp -rf "$TMPDIR"/* /etc/mosdns
|
|
||||||
rm -rf /etc/mosdns/serverlist.bak
|
|
||||||
fi
|
|
||||||
exit 0
|
exit 0
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user