1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-03-09 15:40:03 +00:00

Add multi IPs server support

This commit is contained in:
Ycarus (Yannick Chabanois) 2021-01-21 18:59:55 +01:00
parent ac0cd9dcd2
commit 5bdb3ada85

View file

@ -68,8 +68,9 @@ set_route6() {
set_server_default_route() { set_server_default_route() {
local server=$1 local server=$1
server_route() {
local serverip multipath_config_route local serverip multipath_config_route
config_get serverip $server ip serverip=$1
[ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')"
config_get disabled $server disabled config_get disabled $server disabled
[ "$disabled" = "1" ] && return [ "$disabled" = "1" ] && return
@ -84,11 +85,14 @@ set_server_default_route() {
ip route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric 1 ip route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric 1
fi fi
} }
config_list_foreach $server ip server_route
}
set_server_default_route6() { set_server_default_route6() {
local server=$1 local server=$1
server_route() {
local serverip multipath_config_route local serverip multipath_config_route
config_get serverip $server ip serverip=$1
[ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')"
config_get disabled $server disabled config_get disabled $server disabled
[ "$disabled" = "1" ] && return [ "$disabled" = "1" ] && return
@ -103,11 +107,13 @@ set_server_default_route6() {
ip -6 route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric 1 ip -6 route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric 1
fi fi
} }
config_list_foreach $server ip server_route
}
delete_server_default_route() { delete_server_default_route() {
local server=$1 local server=$1
local serverip delete_route() {
config_get serverip $server ip local serverip=$1
[ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')"
config_get disabled $server disabled config_get disabled $server disabled
[ "$disabled" = "1" ] && return [ "$disabled" = "1" ] && return
@ -116,11 +122,13 @@ delete_server_default_route() {
ip route del $serverip metric 1 >/dev/null 2>&1 ip route del $serverip metric 1 >/dev/null 2>&1
fi fi
} }
config_list_foreach $server ip delete_route
}
delete_server_default_route6() { delete_server_default_route6() {
local server=$1 local server=$1
local serverip delete_route() {
config_get serverip $server ip local serverip=$1
[ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')"
config_get disabled $server disabled config_get disabled $server disabled
[ "$disabled" = "1" ] && return [ "$disabled" = "1" ] && return
@ -129,6 +137,8 @@ delete_server_default_route6() {
ip -6 route del $serverip metric 1 >/dev/null 2>&1 ip -6 route del $serverip metric 1 >/dev/null 2>&1
fi fi
} }
config_list_foreach $server ip delete_route
}
set_routes_intf() { set_routes_intf() {
local multipath_config_route local multipath_config_route
@ -316,8 +326,9 @@ set_route_balancing6() {
set_server_all_routes() { set_server_all_routes() {
local server=$1 local server=$1
server_route() {
local serverip multipath_config_route local serverip multipath_config_route
config_get serverip $server ip serverip=$1
[ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')"
config_get disabled $server disabled config_get disabled $server disabled
[ "$disabled" = "1" ] && return [ "$disabled" = "1" ] && return
@ -351,11 +362,14 @@ set_server_all_routes() {
fi fi
fi fi
} }
config_list_foreach $server ip server_route
}
set_server_all_routes6() { set_server_all_routes6() {
local server=$1 local server=$1
server_route() {
local serverip multipath_config_route local serverip multipath_config_route
config_get serverip $server ip serverip=$1
[ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')"
config_get disabled $server disabled config_get disabled $server disabled
[ "$disabled" = "1" ] && return [ "$disabled" = "1" ] && return
@ -389,13 +403,16 @@ set_server_all_routes6() {
fi fi
fi fi
} }
config_list_foreach $server ip server_route
}
set_server_route() { set_server_route() {
local server=$1 local server=$1
server_route() {
local serverip multipath_config_route local serverip multipath_config_route
config_get serverip $server ip serverip=$1
[ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')"
config_get disabled $server disabled config_get disabled $server disabled
[ "$disabled" = "1" ] && return [ "$disabled" = "1" ] && return
@ -415,6 +432,8 @@ set_server_route() {
[ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) route via $OMR_TRACKER_DEVICE_GATEWAY metric $metric" [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) route via $OMR_TRACKER_DEVICE_GATEWAY metric $metric"
ip route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric $metric ip route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric $metric
fi fi
}
config_list_foreach $server ip server_route
if [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && [ "$(ip route show dev $OMR_TRACKER_DEVICE metric $metric | grep default | grep $OMR_TRACKER_DEVICE_GATEWAY)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_current_config" = "up" ] && [ "$interface_up" = "true" ]; then if [ "$OMR_TRACKER_DEVICE_GATEWAY" != "" ] && [ "$(ip route show dev $OMR_TRACKER_DEVICE metric $metric | grep default | grep $OMR_TRACKER_DEVICE_GATEWAY)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_current_config" = "up" ] && [ "$interface_up" = "true" ]; then
ip route replace default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric $metric ip route replace default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE metric $metric
fi fi
@ -422,8 +441,9 @@ set_server_route() {
set_server_route6() { set_server_route6() {
local server=$1 local server=$1
server_route() {
local serverip multipath_config_route local serverip multipath_config_route
config_get serverip $server ip serverip=$1
[ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')"
config_get disabled $server disabled config_get disabled $server disabled
[ "$disabled" = "1" ] && return [ "$disabled" = "1" ] && return
@ -443,6 +463,8 @@ set_server_route6() {
[ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) route via $OMR_TRACKER_DEVICE_GATEWAY metric $metric" [ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] && _log "Set server $server ($serverip) route via $OMR_TRACKER_DEVICE_GATEWAY metric $metric"
ip -6 route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric $metric ip -6 route replace $serverip via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric $metric
fi fi
}
config_list_foreach $server ip server_route
if [ "$OMR_TRACKER_DEVICE_GATEWAY6" != "" ] && [ "$(ip -6 route show dev $OMR_TRACKER_DEVICE metric $metric | grep default | grep $OMR_TRACKER_DEVICE_GATEWAY6)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_current_config" = "up" ] && [ "$interface_up" = "true" ]; then if [ "$OMR_TRACKER_DEVICE_GATEWAY6" != "" ] && [ "$(ip -6 route show dev $OMR_TRACKER_DEVICE metric $metric | grep default | grep $OMR_TRACKER_DEVICE_GATEWAY6)" = "" ] && [ "$multipath_config_route" != "off" ] && [ "$interface_current_config" = "up" ] && [ "$interface_up" = "true" ]; then
ip -6 route replace default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric $metric ip -6 route replace default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE metric $metric
fi fi
@ -450,14 +472,16 @@ set_server_route6() {
del_server_route() { del_server_route() {
local server=$1 local server=$1
local serverip remove_route() {
config_get serverip $server ip local serverip="$1"
[ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -4 -t 5 $serverip | head -n 1 | tr -d '\n')"
[ -n "$serverip" ] && _log "Delete default route via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE" [ -n "$serverip" ] && _log "Delete default route via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE"
local metric local metric
metric=$(uci -q get network.$OMR_TRACKER_INTERFACE.metric) metric=$(uci -q get network.$OMR_TRACKER_INTERFACE.metric)
ip route del $serverip dev $OMR_TRACKER_DEVICE metric $metric >/dev/null 2>&1 ip route del $serverip dev $OMR_TRACKER_DEVICE metric $metric >/dev/null 2>&1
ip route del $serverip dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 ip route del $serverip dev $OMR_TRACKER_DEVICE >/dev/null 2>&1
}
config_list_foreach $server ip remove_route
if [ -n "$OMR_TRACKER_DEVICE_GATEWAY" ]; then if [ -n "$OMR_TRACKER_DEVICE_GATEWAY" ]; then
ip route del default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 ip route del default via $OMR_TRACKER_DEVICE_GATEWAY dev $OMR_TRACKER_DEVICE >/dev/null 2>&1
else else
@ -467,14 +491,16 @@ del_server_route() {
del_server_route6() { del_server_route6() {
local server=$1 local server=$1
local serverip remove_route() {
config_get serverip $server ip local serverip="$1"
[ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')" [ -n "$serverip" ] && serverip="$(resolveip -6 -t 5 $serverip | head -n 1 | tr -d '\n')"
[ -n "$serverip" ] && _log "Delete default route via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE" [ -n "$serverip" ] && _log "Delete default route via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE"
local metric local metric
metric=$(uci -q get network.$OMR_TRACKER_INTERFACE.metric) metric=$(uci -q get network.$OMR_TRACKER_INTERFACE.metric)
ip route del $serverip dev $OMR_TRACKER_DEVICE metric $metric >/dev/null 2>&1 ip -6 route del $serverip dev $OMR_TRACKER_DEVICE metric $metric >/dev/null 2>&1
ip route del $serverip dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 ip -6 route del $serverip dev $OMR_TRACKER_DEVICE >/dev/null 2>&1
}
config_list_foreach $server ip remove_route
if [ -n "$OMR_TRACKER_DEVICE_GATEWAY6" ]; then if [ -n "$OMR_TRACKER_DEVICE_GATEWAY6" ]; then
ip -6 route del default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE >/dev/null 2>&1 ip -6 route del default via $OMR_TRACKER_DEVICE_GATEWAY6 dev $OMR_TRACKER_DEVICE >/dev/null 2>&1
else else
@ -801,25 +827,25 @@ if [ "$multipath_config" = "master" ]; then
config_foreach set_route_balancing interface config_foreach set_route_balancing interface
config_foreach set_route_balancing6 interface config_foreach set_route_balancing6 interface
[ -n "$routesbalancing" ] && { [ -n "$routesbalancing" ] && {
([ "$nbintf" -gt "1" ] && [ "$(ip r show default metric 0 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancing " ]) || ([ "$nbintf" = "1" ] && [ "$(ip r show default metric 0 | grep $OMR_TRACKER_DEVICE)" = "" ]) && { ([ "$nbintf" -gt "1" ] && [ "$(ip r show default metric 0 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancing " ]) || ([ "$nbintf" = "1" ] && [ "$(ip r show default metric 0 | grep $OMR_TRACKER_DEVICE)" = "" ] && [ -n "$OMR_TRACKER_DEVICE_IP" ]) && {
_log "Set ip route replace default scope global $routesbalancing" _log "Set ip route replace default scope global $routesbalancing"
ip route replace default scope global metric 0 $routesbalancing ip route replace default scope global metric 0 $routesbalancing
} }
} }
[ -n "$routesbalancing6" ] && { [ -n "$routesbalancing6" ] && {
([ "$nbintf6" -gt "1" ] && [ "$(ip -6 r show default metric 1 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancing6 " ]) || ([ "$nbintf6" = "1" ] && [ "$(ip -6 r show default metric 1 | grep $OMR_TRACKER_DEVICE)" = "" ]) && { ([ "$nbintf6" -gt "1" ] && [ "$(ip -6 r show default metric 1 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancing6 " ]) || ([ "$nbintf6" = "1" ] && [ "$(ip -6 r show default metric 1 | grep $OMR_TRACKER_DEVICE)" = "" ] && [ -n "$OMR_TRACKER_DEVICE_IP6" ]) && {
_log "Set ip -6 route replace default scope global metric 1 $routesbalancing6" _log "Set ip -6 route replace default scope global metric 1 $routesbalancing6"
ip -6 route replace default scope global metric 1 $routesbalancing6 ip -6 route replace default scope global metric 1 $routesbalancing6
} }
} }
[ -n "$routesbalancingbackup" ] && { [ -n "$routesbalancingbackup" ] && {
([ "$nbintf" -gt "1" ] && [ "$(ip r show default metric 999 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancingbackup " ]) || ([ "$nbintf" = "1" ] && [ "$(ip r show default metric 999 | grep $OMR_TRACKER_DEVICE)" = "" ]) && { ([ "$nbintf" -gt "1" ] && [ "$(ip r show default metric 999 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancingbackup " ]) || ([ "$nbintf" = "1" ] && [ "$(ip r show default metric 999 | grep $OMR_TRACKER_DEVICE)" = "" ] && [ -n "$OMR_TRACKER_DEVICE_IP" ]) && {
_log "Set backup ip route replace default scope global $routesbalancingbackup" _log "Set backup ip route replace default scope global $routesbalancingbackup"
ip route replace default scope global metric 999 $routesbalancingbackup ip route replace default scope global metric 999 $routesbalancingbackup
} }
} }
[ -n "$routesbalancingbackup6" ] && { [ -n "$routesbalancingbackup6" ] && {
([ "$nbintf6" -gt "1" ] && [ "$(ip -6 r show default metric 999 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancingbackup6 " ]) || ([ "$nbintf6" = "1" ] && [ "$(ip -6 r show default metric 999 | grep $OMR_TRACKER_DEVICE)" = "" ]) && { ([ "$nbintf6" -gt "1" ] && [ "$(ip -6 r show default metric 999 | tr -d '\t' | tr -d '\n')" != "default via $routesbalancingbackup6 " ]) || ([ "$nbintf6" = "1" ] && [ "$(ip -6 r show default metric 999 | grep $OMR_TRACKER_DEVICE)" = "" ] && [ -n "$OMR_TRACKER_DEVICE_IP6" ]) && {
_log "Set backup ip -6 route replace default scope global $routesbalancingbackup6" _log "Set backup ip -6 route replace default scope global $routesbalancingbackup6"
ip -6 route replace default scope global metric 999 $routesbalancingbackup6 ip -6 route replace default scope global metric 999 $routesbalancingbackup6
} }
@ -967,16 +993,19 @@ if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.lc)" = "" ] || [ $(($(
uci -q set openmptcprouter.latest_versions.lc=$(date +"%s") uci -q set openmptcprouter.latest_versions.lc=$(date +"%s")
} }
fi fi
local serverip=$(uci -q get shadowsocks-libev.sss0.server)
[ -n "$serverip" ] && [ "$serverip" != "127.0.0.1" ] && [ "$(pgrep tracebox)" = "" ] && [ "$(uci -q get openmptcprouter.settings.tracebox)" != "0" ] && {
omrtracebox="$(omr-tracebox-mptcp $serverip $OMR_TRACKER_DEVICE)"
[ -n "$omrtracebox" ] && [ -z "$(echo $omrtracebox | grep error)" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.mptcp_status="$omrtracebox"
}
[ -n "$ipaddr" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.publicip="$ipaddr" [ -n "$ipaddr" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.publicip="$ipaddr"
[ -n "$OMR_TRACKER_LATENCY" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.latency="$OMR_TRACKER_LATENCY" [ -n "$OMR_TRACKER_LATENCY" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.latency="$OMR_TRACKER_LATENCY"
[ -n "$asn" ] && { [ -n "$asn" ] && {
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.asn="$asn" uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.asn="$asn"
} }
local omrtracebox
traceboxmtutest() {
omr_tracebox_mtu() {
local serverip=$1
[ -n "$serverip" ] && [ "$serverip" != "127.0.0.1" ] && [ "$(pgrep tracebox)" = "" ] && [ "$(uci -q get openmptcprouter.settings.tracebox)" != "0" ] && {
omrtracebox="$(omr-tracebox-mptcp $serverip $OMR_TRACKER_DEVICE)"
[ -n "$omrtracebox" ] && [ -z "$(echo $omrtracebox | grep error)" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.mptcp_status="$omrtracebox"
}
if [ "$OMR_TRACKER_INTERFACE" != "omrvpn" ] && [ "$(uci -q get glorytun.vpn.enable)" != "1" ] && [ "$(uci -q get glorytun-udp.vpn.enable)" != "1" ]; then if [ "$OMR_TRACKER_INTERFACE" != "omrvpn" ] && [ "$(uci -q get glorytun.vpn.enable)" != "1" ] && [ "$(uci -q get glorytun-udp.vpn.enable)" != "1" ]; then
if [ -n "$(uci -q get network.$OMR_TRACKER_INTERFACE.mtu)" ]; then if [ -n "$(uci -q get network.$OMR_TRACKER_INTERFACE.mtu)" ]; then
mtu=$(uci -q get network.$OMR_TRACKER_INTERFACE.mtu) mtu=$(uci -q get network.$OMR_TRACKER_INTERFACE.mtu)
@ -1000,6 +1029,11 @@ if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.lc)" = "" ] || [ $(($(
} }
fi fi
fi fi
}
config_list_foreach $1 ip omr_tracebox_mptcp
}
config_load openmptcprouter
config_foreach traceboxmtutest server
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.state='up' uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.state='up'
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s") uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s")
} }
@ -1019,16 +1053,19 @@ if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.lc)" = "" ] || [ $(($(
uci -q set openmptcprouter.latest_versions.lc=$(date +"%s") uci -q set openmptcprouter.latest_versions.lc=$(date +"%s")
} }
fi fi
local serverip=$(uci -q get shadowsocks-libev.sss0.server)
[ -n "$serverip" ] && [ "$serverip" != "127.0.0.1" ] && [ "$(pgrep tracebox)" = "" ] && [ "$(uci -q get openmptcprouter.settings.tracebox)" != "0" ] && {
omrtracebox="$(omr-tracebox-mptcp $serverip $OMR_TRACKER_DEVICE)"
[ -n "$omrtracebox" ] && [ -z "$(echo $omrtracebox | grep error)" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.mptcp_status="$omrtracebox"
}
[ -n "$ipaddr" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.publicip6="$ip6addr" [ -n "$ipaddr" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.publicip6="$ip6addr"
[ -n "$OMR_TRACKER_LATENCY" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.latency="$OMR_TRACKER_LATENCY" [ -n "$OMR_TRACKER_LATENCY" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.latency="$OMR_TRACKER_LATENCY"
[ -n "$asn" ] && { [ -n "$asn" ] && {
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.asn="$asn" uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.asn="$asn"
} }
local omrtracebox
traceboxmtutest() {
omr_tracebox_mtu() {
local serverip=$1
[ -n "$serverip" ] && [ "$serverip" != "127.0.0.1" ] && [ "$(pgrep tracebox)" = "" ] && [ "$(uci -q get openmptcprouter.settings.tracebox)" != "0" ] && {
omrtracebox="$(omr-tracebox-mptcp $serverip $OMR_TRACKER_DEVICE)"
[ -n "$omrtracebox" ] && [ -z "$(echo $omrtracebox | grep error)" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.mptcp_status="$omrtracebox"
}
if [ "$OMR_TRACKER_INTERFACE" != "omrvpn" ] && [ "$(uci -q get glorytun.vpn.enable)" != "1" ] && [ "$(uci -q get glorytun-udp.vpn.enable)" != "1" ]; then if [ "$OMR_TRACKER_INTERFACE" != "omrvpn" ] && [ "$(uci -q get glorytun.vpn.enable)" != "1" ] && [ "$(uci -q get glorytun-udp.vpn.enable)" != "1" ]; then
if [ -n "$(uci -q get network.$OMR_TRACKER_INTERFACE.mtu)" ]; then if [ -n "$(uci -q get network.$OMR_TRACKER_INTERFACE.mtu)" ]; then
mtu=$(uci -q get network.$OMR_TRACKER_INTERFACE.mtu) mtu=$(uci -q get network.$OMR_TRACKER_INTERFACE.mtu)
@ -1052,6 +1089,11 @@ if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.lc)" = "" ] || [ $(($(
} }
fi fi
fi fi
}
config_list_foreach $1 ip omr_tracebox_mptcp
}
config_load openmptcprouter
config_foreach traceboxmtutest server
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.state='up' uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.state='up'
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s") uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s")
} }