[applications]: multiwan: Added Fast Balancer Option, added mini menu
This commit is contained in:
parent
b2254ac625
commit
dc217653e2
5 changed files with 82 additions and 1 deletions
|
@ -10,4 +10,9 @@ function index()
|
||||||
page.i18n = "multiwan"
|
page.i18n = "multiwan"
|
||||||
page.dependent = true
|
page.dependent = true
|
||||||
|
|
||||||
|
local page = entry({"mini", "network", "multiwan"}, cbi("multiwan/multiwanmini", {autoapply=true}), "Multi-WAN")
|
||||||
|
page.i18n = "multiwan"
|
||||||
|
page.dependent = true
|
||||||
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -21,6 +21,7 @@ end
|
||||||
|
|
||||||
default_route = s:option(ListValue, "default_route", translate("Default Route"))
|
default_route = s:option(ListValue, "default_route", translate("Default Route"))
|
||||||
luci.tools.webadmin.cbi_add_networks(default_route)
|
luci.tools.webadmin.cbi_add_networks(default_route)
|
||||||
|
default_route:value("fastbalancer", translate("Fast Balancer"))
|
||||||
default_route:value("balancer", translate("Load Balancer"))
|
default_route:value("balancer", translate("Load Balancer"))
|
||||||
default_route.default = "balancer"
|
default_route.default = "balancer"
|
||||||
default_route.optional = false
|
default_route.optional = false
|
||||||
|
@ -102,6 +103,7 @@ recovery.rmempty = false
|
||||||
failover_to = s:option(ListValue, "failover_to", translate("Failover Traffic Destination"))
|
failover_to = s:option(ListValue, "failover_to", translate("Failover Traffic Destination"))
|
||||||
failover_to:value("disable", translate("None"))
|
failover_to:value("disable", translate("None"))
|
||||||
luci.tools.webadmin.cbi_add_networks(failover_to)
|
luci.tools.webadmin.cbi_add_networks(failover_to)
|
||||||
|
failover_to:value("fastbalancer", translate("Fast Balancer"))
|
||||||
failover_to:value("balancer", translate("Load Balancer"))
|
failover_to:value("balancer", translate("Load Balancer"))
|
||||||
failover_to.default = "balancer"
|
failover_to.default = "balancer"
|
||||||
failover_to.optional = false
|
failover_to.optional = false
|
||||||
|
@ -142,8 +144,9 @@ ports:value("", translate("all", translate("all")))
|
||||||
|
|
||||||
wanrule = s:option(ListValue, "wanrule", translate("WAN Uplink"))
|
wanrule = s:option(ListValue, "wanrule", translate("WAN Uplink"))
|
||||||
luci.tools.webadmin.cbi_add_networks(wanrule)
|
luci.tools.webadmin.cbi_add_networks(wanrule)
|
||||||
|
wanrule:value("fastbalancer", translate("Fast Balancer"))
|
||||||
wanrule:value("balancer", translate("Load Balancer"))
|
wanrule:value("balancer", translate("Load Balancer"))
|
||||||
wanrule.default = "balancer"
|
wanrule.default = "fastbalancer"
|
||||||
wanrule.optional = false
|
wanrule.optional = false
|
||||||
wanrule.rmempty = false
|
wanrule.rmempty = false
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,65 @@
|
||||||
|
require("luci.tools.webadmin")
|
||||||
|
|
||||||
|
m = Map("multiwan", translate("Multi-WAN"),
|
||||||
|
translate("Multi-WAN allows for the use of multiple uplinks for load balancing and failover."))
|
||||||
|
|
||||||
|
s = m:section(NamedSection, "config", "multiwan", "")
|
||||||
|
e = s:option(Flag, "enabled", translate("Enable"))
|
||||||
|
e.rmempty = false
|
||||||
|
|
||||||
|
function e.write(self, section, value)
|
||||||
|
local cmd = (value == "1") and "enable" or "disable"
|
||||||
|
if value ~= "1" then
|
||||||
|
os.execute("/etc/init.d/multiwan stop")
|
||||||
|
end
|
||||||
|
os.execute("/etc/init.d/multiwan " .. cmd)
|
||||||
|
end
|
||||||
|
|
||||||
|
function e.cfgvalue(self, section)
|
||||||
|
return (os.execute("/etc/init.d/multiwan enabled") == 0) and "1" or "0"
|
||||||
|
end
|
||||||
|
|
||||||
|
default_route = s:option(ListValue, "default_route", translate("Default Route"))
|
||||||
|
luci.tools.webadmin.cbi_add_networks(default_route)
|
||||||
|
default_route:value("fastbalancer", translate("Fast Balancer"))
|
||||||
|
default_route:value("balancer", translate("Load Balancer"))
|
||||||
|
default_route.default = "balancer"
|
||||||
|
default_route.optional = false
|
||||||
|
default_route.rmempty = false
|
||||||
|
|
||||||
|
s = m:section(TypedSection, "mwanfw", translate("Multi-WAN Traffic Rules"),
|
||||||
|
translate("Configure rules for directing outbound traffic through specified WAN Uplinks."))
|
||||||
|
s.template = "cbi/tblsection"
|
||||||
|
s.anonymous = true
|
||||||
|
s.addremove = true
|
||||||
|
|
||||||
|
src = s:option(Value, "src", translate("Source Address"))
|
||||||
|
src.rmempty = true
|
||||||
|
src:value("", translate("all"))
|
||||||
|
luci.tools.webadmin.cbi_add_knownips(src)
|
||||||
|
|
||||||
|
dst = s:option(Value, "dst", translate("Destination Address"))
|
||||||
|
dst.rmempty = true
|
||||||
|
dst:value("", translate("all"))
|
||||||
|
luci.tools.webadmin.cbi_add_knownips(dst)
|
||||||
|
|
||||||
|
proto = s:option(ListValue, "proto", translate("Protocol"))
|
||||||
|
proto:value("", translate("all"))
|
||||||
|
proto:value("tcp", "TCP")
|
||||||
|
proto:value("udp", "UDP")
|
||||||
|
proto:value("icmp", "ICMP")
|
||||||
|
proto.rmempty = true
|
||||||
|
|
||||||
|
ports = s:option(Value, "ports", translate("Ports"))
|
||||||
|
ports.rmempty = true
|
||||||
|
ports:value("", translate("all", translate("all")))
|
||||||
|
|
||||||
|
wanrule = s:option(ListValue, "wanrule", translate("WAN Uplink"))
|
||||||
|
luci.tools.webadmin.cbi_add_networks(wanrule)
|
||||||
|
wanrule:value("fastbalancer", translate("Fast Balancer"))
|
||||||
|
wanrule:value("balancer", translate("Load Balancer"))
|
||||||
|
wanrule.default = "fastbalancer"
|
||||||
|
wanrule.optional = false
|
||||||
|
wanrule.rmempty = false
|
||||||
|
|
||||||
|
return m
|
|
@ -119,3 +119,8 @@ msgstr "DNS Server(s)"
|
||||||
msgid "Enable"
|
msgid "Enable"
|
||||||
msgstr "Enable"
|
msgstr "Enable"
|
||||||
|
|
||||||
|
#: /tmp/i18n/luasrc/i18n/multiwan.en.lua:24
|
||||||
|
#. Fast Balancer
|
||||||
|
msgid "Fast Balancer"
|
||||||
|
msgstr "Fast Balancer"
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,9 @@ msgstr ""
|
||||||
msgid "Failover Traffic Destination"
|
msgid "Failover Traffic Destination"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Fast Balancer"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Health Monitor ICMP Host(s)"
|
msgid "Health Monitor ICMP Host(s)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue