mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
68 lines
2.8 KiB
Lua
68 lines
2.8 KiB
Lua
local kernel_version = luci.sys.exec("echo -n $(uname -r)")
|
|
|
|
m = Map("turboacc")
|
|
m.title = translate("Turbo ACC Acceleration Settings")
|
|
m.description = translate("Opensource Flow Offloading driver (Fast Path or Hardware NAT)")
|
|
|
|
m:append(Template("turboacc/turboacc_status"))
|
|
|
|
s = m:section(TypedSection, "turboacc", "")
|
|
s.addremove = false
|
|
s.anonymous = true
|
|
|
|
if nixio.fs.access("/lib/modules/" .. kernel_version .. "/xt_FLOWOFFLOAD.ko") then
|
|
sw_flow = s:option(Flag, "sw_flow", translate("Software flow offloading"))
|
|
sw_flow.default = 0
|
|
sw_flow.description = translate("Software based offloading for routing/NAT")
|
|
sw_flow:depends("sfe_flow", 0)
|
|
end
|
|
|
|
if luci.sys.call("cat /etc/openwrt_release | grep -q mt762") == 0 then
|
|
hw_flow = s:option(Flag, "hw_flow", translate("Hardware flow offloading"))
|
|
hw_flow.default = 0
|
|
hw_flow.description = translate("Requires hardware NAT support. Implemented at least for mt762x")
|
|
hw_flow:depends("sw_flow", 1)
|
|
end
|
|
|
|
if nixio.fs.access("/lib/modules/" .. kernel_version .. "/shortcut-fe-cm.ko") then
|
|
sfe_flow = s:option(Flag, "sfe_flow", translate("Shortcut-FE flow offloading"))
|
|
sfe_flow.default = 0
|
|
sfe_flow.description = translate("Shortcut-FE based offloading for routing/NAT")
|
|
sfe_flow:depends("sw_flow", 0)
|
|
end
|
|
|
|
if nixio.fs.access("/lib/modules/" .. kernel_version .. "/tcp_bbr.ko") then
|
|
bbr_cca = s:option(Flag, "bbr_cca", translate("BBR CCA"))
|
|
bbr_cca.default = 0
|
|
bbr_cca.description = translate("Using BBR CCA can improve TCP network performance effectively")
|
|
end
|
|
|
|
if nixio.fs.access("/lib/modules/" .. kernel_version .. "/xt_FULLCONENAT.ko") then
|
|
fullcone_nat = s:option(Flag, "fullcone_nat", translate("FullCone NAT"))
|
|
fullcone_nat.default = 0
|
|
fullcone_nat.description = translate("Using FullCone NAT can improve gaming performance effectively")
|
|
end
|
|
|
|
dns_caching = s:option(Flag, "dns_caching", translate("DNS Caching"))
|
|
dns_caching.default = 0
|
|
dns_caching.rmempty = false
|
|
dns_caching.description = translate("Enable DNS Caching and anti ISP DNS pollution")
|
|
|
|
dns_caching_mode = s:option(ListValue, "dns_caching_mode", translate("Resolve DNS Mode"), translate("DNS Program"))
|
|
dns_caching_mode:value("1", translate("Using PDNSD to query and cache"))
|
|
if nixio.fs.access("/usr/bin/dnsforwarder") then
|
|
dns_caching_mode:value("2", translate("Using DNSForwarder to query and cache"))
|
|
end
|
|
if nixio.fs.access("/usr/bin/dnsproxy") then
|
|
dns_caching_mode:value("3", translate("Using DNSProxy to query and cache"))
|
|
end
|
|
dns_caching_mode.default = 1
|
|
dns_caching_mode:depends("dns_caching", 1)
|
|
|
|
dns_caching_dns = s:option(Value, "dns_caching_dns", translate("Upsteam DNS Server"))
|
|
dns_caching_dns.default = "114.114.114.114,114.114.115.115,223.5.5.5,223.6.6.6,180.76.76.76,119.29.29.29,119.28.28.28,1.2.4.8,210.2.4.8"
|
|
dns_caching_dns.description = translate("Muitiple DNS server can saperate with ','")
|
|
dns_caching_dns:depends("dns_caching", 1)
|
|
|
|
return m
|