luci: add response mode option
This commit is contained in:
@@ -749,7 +749,7 @@ Note: Merlin firmware is derived from ASUS firmware and can theoretically be use
|
||||
...
|
||||
````
|
||||
|
||||
1. How to use ipset and nftset
|
||||
1. How to use ipset and nftset?
|
||||
Similar to Dnsmasq, smartdns supports ipset and nftset, and can transparently forward specific domain names through TPROXY. The comparison of transparent forwarding and tool modes is as follows:
|
||||
|
||||
1. Tools: iptable, nftable
|
||||
|
||||
@@ -180,6 +180,15 @@ msgstr "文件类型"
|
||||
msgid "Filtering IP with blacklist"
|
||||
msgstr "使用IP黑名单过滤"
|
||||
|
||||
msgid "First Ping"
|
||||
msgstr "最快PING"
|
||||
|
||||
msgid "Fastest IP"
|
||||
msgstr "最快IP"
|
||||
|
||||
msgid "Fastest Response"
|
||||
msgstr "最快响应"
|
||||
|
||||
msgid "Force AAAA SOA"
|
||||
msgstr "停用IPV6地址解析"
|
||||
|
||||
@@ -311,6 +320,9 @@ msgstr "重启"
|
||||
msgid "Restart smartdns"
|
||||
msgstr "重启服务"
|
||||
|
||||
msgid "Response Mode"
|
||||
msgstr "响应模式"
|
||||
|
||||
msgid "Second Server Settings"
|
||||
msgstr "第二DNS服务器"
|
||||
|
||||
@@ -420,6 +432,14 @@ msgstr "测速模式"
|
||||
msgid "Smartdns speed check mode. "
|
||||
msgstr "SmartDns测速模式设置。"
|
||||
|
||||
msgid ""
|
||||
"Smartdns response mode, First Ping: return the first ping IP, "
|
||||
"Fastest IP: return the fastest IP, Fastest Response: return the fastest "
|
||||
"DNS response."
|
||||
msgstr ""
|
||||
"SmartDNS响应模式,最快PING: 返回最早有ping结果的IP,速度适中;最快IP: "
|
||||
"返回最快IP,查询请求可能延长; 最快响应:返回最快响应的结果。查询请求时间短。"
|
||||
|
||||
msgid ""
|
||||
"Specify an IP address to return for any host in the given domains, Queries "
|
||||
"in the domains are never forwarded and always replied to with the specified "
|
||||
|
||||
@@ -102,6 +102,16 @@ function o.validate (section_id, value)
|
||||
return value
|
||||
end
|
||||
|
||||
---- response mode;
|
||||
o = s:taboption("advanced", ListValue, "response_mode", translate("Response Mode"),
|
||||
translate("Smartdns response mode, First Ping: return the first ping IP, Fastest IP: return the fastest IP, Fastest Response: return the fastest DNS response."))
|
||||
o.rmempty = true
|
||||
o.placeholder = "default"
|
||||
o:value("", translate("default"))
|
||||
o:value("first-ping", translate("First Ping"))
|
||||
o:value("fastest-ip", translate("Fastest IP"))
|
||||
o:value("fastest-response", translate("Fastest Response"))
|
||||
|
||||
---- Enable TCP server
|
||||
o = s:taboption("advanced", Flag, "tcp_server", translate("TCP Server"), translate("Enable TCP DNS Server"))
|
||||
o.rmempty = false
|
||||
|
||||
@@ -201,6 +201,15 @@ msgstr "文件类型"
|
||||
msgid "Filtering IP with blacklist"
|
||||
msgstr "使用IP黑名单过滤"
|
||||
|
||||
msgid "First Ping"
|
||||
msgstr "最快PING"
|
||||
|
||||
msgid "Fastest IP"
|
||||
msgstr "最快IP"
|
||||
|
||||
msgid "Fastest Response"
|
||||
msgstr "最快响应"
|
||||
|
||||
msgid "Force AAAA SOA"
|
||||
msgstr "停用IPV6地址解析"
|
||||
|
||||
@@ -343,6 +352,9 @@ msgstr "解析本地主机名"
|
||||
msgid "Resolve local hostnames by reading Dnsmasq lease file."
|
||||
msgstr "读取Dnsmasq的租约文件解析本地主机名。"
|
||||
|
||||
msgid "Response Mode"
|
||||
msgstr "响应模式"
|
||||
|
||||
msgid "Restart"
|
||||
msgstr "重启"
|
||||
|
||||
@@ -455,6 +467,14 @@ msgstr "SmartDNS的服务器名称,默认为smartdns,留空为主机名"
|
||||
msgid "Smartdns speed check mode."
|
||||
msgstr "SmartDNS测速模式。"
|
||||
|
||||
msgid ""
|
||||
"Smartdns response mode, First Ping: return the first ping IP, "
|
||||
"Fastest IP: return the fastest IP, Fastest Response: return the fastest "
|
||||
"DNS response."
|
||||
msgstr ""
|
||||
"SmartDNS响应模式,最快PING: 返回最早有ping结果的IP,速度适中;最快IP: "
|
||||
"返回最快IP,查询请求可能延长; 最快响应:返回最快响应的结果。查询请求时间短。"
|
||||
|
||||
msgid "Speed Check Mode"
|
||||
msgstr "测速模式"
|
||||
|
||||
|
||||
@@ -199,6 +199,16 @@ return view.extend({
|
||||
return true;
|
||||
}
|
||||
|
||||
// response mode;
|
||||
o = s.taboption("advanced", form.ListValue, "response_mode", _("Response Mode"),
|
||||
_("Smartdns response mode, First Ping: return the first ping IP, Fastest IP: return the fastest IP, Fastest Response: return the fastest DNS response."));
|
||||
o.rmempty = true;
|
||||
o.placeholder = "default";
|
||||
o.value("", _("default"));
|
||||
o.value("first-ping", _("First Ping"));
|
||||
o.value("fastest-ip", _("Fastest IP"));
|
||||
o.value("fastest-response", _("Fastest Response"));
|
||||
|
||||
// Enable TCP server;
|
||||
o = s.taboption("advanced", form.Flag, "tcp_server", _("TCP Server"), _("Enable TCP DNS Server"));
|
||||
o.rmempty = false;
|
||||
@@ -633,7 +643,7 @@ return view.extend({
|
||||
o.modalonly = true;
|
||||
o.optional = true;
|
||||
o.rempty = true;
|
||||
o.validate = function(section_id, value) {
|
||||
o.validate = function (section_id, value) {
|
||||
var flag = this.formvalue(section_id);
|
||||
if (flag == "0") {
|
||||
return true;
|
||||
@@ -651,7 +661,7 @@ return view.extend({
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
// other args
|
||||
o = s.taboption("advanced", form.Value, "addition_arg", _("Additional Server Args"),
|
||||
_("Additional Args for upstream dns servers"))
|
||||
|
||||
@@ -530,6 +530,9 @@ load_service()
|
||||
config_get log_file "$section" "log_file" ""
|
||||
[ -z "$log_file" ] || conf_append "log-file" "$log_file"
|
||||
|
||||
config_get response_mode "$section" "response_mode" ""
|
||||
[ -z "$response_mode" ] || conf_append "response-mode" "$response_mode"
|
||||
|
||||
config_get_bool enable_auto_update "$section" "enable_auto_update" "0"
|
||||
[ "$enable_auto_update" = "1" ] && enable_auto_update || disable_auto_update
|
||||
|
||||
|
||||
Reference in New Issue
Block a user