mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-03-09 15:40:03 +00:00
Fix SQM and QOS when an interface is added via wizard
This commit is contained in:
parent
c7ab0005dc
commit
38176e6d58
3 changed files with 61 additions and 11 deletions
|
@ -81,6 +81,29 @@ function wizard_add()
|
|||
ucic:set("network","wan" .. i,"defaultroute","0")
|
||||
ucic:save("network")
|
||||
ucic:commit("network")
|
||||
|
||||
ucic:set("qos","wan" .. i,"interface")
|
||||
ucic:set("qos","wan" .. i,"classgroup","Default")
|
||||
ucic:set("qos","wan" .. i,"enabled","0")
|
||||
ucic:set("qos","wan" .. i,"upload","4000")
|
||||
ucic:set("qos","wan" .. i,"download","100000")
|
||||
ucic:save("qos")
|
||||
ucic:commit("qos")
|
||||
|
||||
ucic:set("sqm","wan" .. i,"queue")
|
||||
ucic:set("sqm","wan" .. i,"interface",defif)
|
||||
ucic:set("sqm","wan" .. i,"qdisc","fq_codel")
|
||||
ucic:set("sqm","wan" .. i,"script","simple.qos")
|
||||
ucic:set("sqm","wan" .. i,"qdisc_advanced","0")
|
||||
ucic:set("sqm","wan" .. i,"linklayer","none")
|
||||
ucic:set("sqm","wan" .. i,"enabled","0")
|
||||
ucic:set("sqm","wan" .. i,"debug_logging","0")
|
||||
ucic:set("sqm","wan" .. i,"verbosity","5")
|
||||
ucic:set("sqm","wan" .. i,"download","0")
|
||||
ucic:set("sqm","wan" .. i,"upload","0")
|
||||
ucic:save("sqm")
|
||||
ucic:commit("sqm")
|
||||
|
||||
-- Dirty way to add new interface to firewall...
|
||||
luci.sys.call("uci -q add_list firewall.@zone[1].network=wan" .. i)
|
||||
luci.sys.call("uci -q commit firewall")
|
||||
|
@ -96,6 +119,12 @@ function wizard_add()
|
|||
ucic:delete("network",intf .. "_dev")
|
||||
ucic:save("network")
|
||||
ucic:commit("network")
|
||||
ucic:delete("sqm",intf)
|
||||
ucic:save("sqm")
|
||||
ucic:commit("sqm")
|
||||
ucic:delete("qos",intf)
|
||||
ucic:save("qos")
|
||||
ucic:commit("qos")
|
||||
end
|
||||
gostatus = false
|
||||
end
|
||||
|
@ -896,29 +925,45 @@ function mptcp_check_trace(iface)
|
|||
end
|
||||
|
||||
function set_ipv6_state(disable_ipv6)
|
||||
-- Disable/Enable IPv6 support
|
||||
luci.sys.exec("sysctl -w net.ipv6.conf.all.disable_ipv6=%s" % disable_ipv6)
|
||||
luci.sys.exec("sed -i 's:^net.ipv6.conf.all.disable_ipv6=[0-9]*:net.ipv6.conf.all.disable_ipv6=%s:' /etc/sysctl.d/zzz_openmptcprouter.conf" % disable_ipv6)
|
||||
luci.sys.exec("/etc/init.d/odhcpd stop >/dev/null 2>&1")
|
||||
luci.sys.exec("/etc/init.d/odhcpd disable >/dev/null 2>&1")
|
||||
|
||||
-- Disable/Enable IPv6 for firewall
|
||||
ucic:set("firewall",ucic:get_first("firewall","defaults"),"disable_ipv6",disable_ipv6)
|
||||
ucic:save("firewall")
|
||||
ucic:commit("firewall")
|
||||
|
||||
-- Disable/Enable IPv6 in OpenMPTCProuter settings
|
||||
ucic:set("openmptcprouter","settings","disable_ipv6",disable_ipv6)
|
||||
ucic:commit("openmptcprouter")
|
||||
|
||||
-- Disable/Enable route announce of IPv6
|
||||
if disable_ipv6 == "1" then
|
||||
ucic:set("dhcp","lan","ra_default","0")
|
||||
else
|
||||
ucic:set("dhcp","lan","ra_default","1")
|
||||
--else
|
||||
-- ucic:set("dhcp","lan","ra_default","1")
|
||||
end
|
||||
|
||||
-- Disable/Enable IPv6 DHCP and change Shadowsocks listen address
|
||||
if disable_ipv6 == "1" then
|
||||
luci.sys.call("uci -q del dhcp.lan.dhcpv6")
|
||||
luci.sys.call("uci -q del dhcp.lan.ra")
|
||||
luci.sys.call("uci -q del dhcp.lan.ra_default")
|
||||
ucic:set("shadowsocks-libev","hi","local_address","0.0.0.0")
|
||||
else
|
||||
ucic:set("dhcp","lan","dhcpv6","server")
|
||||
ucic:set("dhcp","lan","ra","server")
|
||||
ucic:set("dhcp","lan","ra_default","0")
|
||||
-- ucic:set("dhcp","lan","dhcpv6","server")
|
||||
-- ucic:set("dhcp","lan","ra","server")
|
||||
-- ucic:set("dhcp","lan","ra_default","0")
|
||||
ucic:set("shadowsocks-libev","hi","local_address","::")
|
||||
end
|
||||
ucic:save("dhcp")
|
||||
ucic:commit("dhcp")
|
||||
if disable_ipv6 == "1" then
|
||||
luci.sys.exec("/etc/init.d/odhcpd stop >/dev/null 2>&1")
|
||||
luci.sys.exec("/etc/init.d/odhcpd disable >/dev/null 2>&1")
|
||||
--else
|
||||
-- luci.sys.exec("/etc/init.d/odhcpd start >/dev/null 2>&1")
|
||||
-- luci.sys.exec("/etc/init.d/odhcpd enable >/dev/null 2>&1")
|
||||
end
|
||||
end
|
|
@ -15,6 +15,7 @@ omr_intf_set() {
|
|||
uci -q set openmptcprouter.settings.scaling_max_freq=800000
|
||||
}
|
||||
[ -z "$multipath" ] || [ "$multipath" = "off" ] && [ "$1" != "omrvpn" ] && [ "$1" != "glorytun" ] && return
|
||||
|
||||
uci -q set openmptcprouter.$1=interface
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
#!/bin/sh
|
||||
|
||||
if [ "$(uci -q get sqm.wan1)" = "" ]; then
|
||||
wan1="$(uci -q get network.wan1.ifname)"
|
||||
wan2="$(uci -q get network.wan2.ifname)"
|
||||
uci -q batch <<-EOF >/dev/null
|
||||
delete sqm.eth1
|
||||
set sqm.wan1=queue
|
||||
|
@ -9,7 +11,7 @@ if [ "$(uci -q get sqm.wan1)" = "" ]; then
|
|||
set sqm.wan1.qdisc_advanced='0'
|
||||
set sqm.wan1.linklayer='none'
|
||||
set sqm.wan1.enabled='0'
|
||||
set sqm.wan1.interface='wan1'
|
||||
set sqm.wan1.interface=$wan1
|
||||
set sqm.wan1.download=''
|
||||
set sqm.wan1.upload=''
|
||||
set sqm.wan1.debug_logging='0'
|
||||
|
@ -20,7 +22,7 @@ if [ "$(uci -q get sqm.wan1)" = "" ]; then
|
|||
set sqm.wan2.qdisc_advanced='0'
|
||||
set sqm.wan2.linklayer='none'
|
||||
set sqm.wan2.enabled='0'
|
||||
set sqm.wan2.interface='wan2'
|
||||
set sqm.wan2.interface=$wan2
|
||||
set sqm.wan2.download=''
|
||||
set sqm.wan2.upload=''
|
||||
set sqm.wan2.debug_logging='0'
|
||||
|
@ -28,6 +30,7 @@ if [ "$(uci -q get sqm.wan1)" = "" ]; then
|
|||
commit sqm
|
||||
EOF
|
||||
if [ "$(uci -q get network.wan3)" != "" ]; then
|
||||
wan3="$(uci -q get network.wan3.ifname)"
|
||||
uci -q batch <<-EOF >/dev/null
|
||||
set sqm.wan3=queue
|
||||
set sqm.wan3.qdisc="fq_codel"
|
||||
|
@ -35,7 +38,7 @@ if [ "$(uci -q get sqm.wan1)" = "" ]; then
|
|||
set sqm.wan3.qdisc_advanced='0'
|
||||
set sqm.wan3.linklayer='none'
|
||||
set sqm.wan3.enabled='0'
|
||||
set sqm.wan3.interface='wan3'
|
||||
set sqm.wan3.interface=$wan3
|
||||
set sqm.wan3.download=''
|
||||
set sqm.wan3.upload=''
|
||||
set sqm.wan3.debug_logging='0'
|
||||
|
@ -44,6 +47,7 @@ if [ "$(uci -q get sqm.wan1)" = "" ]; then
|
|||
EOF
|
||||
fi
|
||||
if [ "$(uci -q get network.wan4)" != "" ]; then
|
||||
wan4="$(uci -q get network.wan4.ifname)"
|
||||
uci -q batch <<-EOF >/dev/null
|
||||
set sqm.wan4=queue
|
||||
set sqm.wan4.qdisc="fq_codel"
|
||||
|
@ -51,7 +55,7 @@ if [ "$(uci -q get sqm.wan1)" = "" ]; then
|
|||
set sqm.wan4.qdisc_advanced='0'
|
||||
set sqm.wan4.linklayer='none'
|
||||
set sqm.wan4.enabled='0'
|
||||
set sqm.wan4.interface='wan4'
|
||||
set sqm.wan4.interface=$wan4
|
||||
set sqm.wan4.download=''
|
||||
set sqm.wan4.upload=''
|
||||
set sqm.wan4.debug_logging='0'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue