From 1b644691f59e44866311003ec6680e81864b4424 Mon Sep 17 00:00:00 2001 From: Ycarus Date: Tue, 21 May 2019 21:36:21 +0200 Subject: [PATCH] Check interface MTU more often --- .../usr/share/omr/post-tracking.d/post-tracking | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/mptcp/files/usr/share/omr/post-tracking.d/post-tracking b/mptcp/files/usr/share/omr/post-tracking.d/post-tracking index 54861b257..102ca73ad 100755 --- a/mptcp/files/usr/share/omr/post-tracking.d/post-tracking +++ b/mptcp/files/usr/share/omr/post-tracking.d/post-tracking @@ -410,22 +410,16 @@ if [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.lc)" = "" ] || [ $(($( ip link set dev $OMR_TRACKER_DEVICE mtu $mtu > /dev/null 2>&1 } uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s") - elif [ -z "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.mtu)" ]; then + else [ -n "$serverip" ] && [ "$serverip" != "127.0.0.1" ] && { - local mtu=$(omr-mtu $OMR_TRACKER_DEVICE $serverip) + local mtu=$(omr-mtu $OMR_TRACKER_DEVICE_IP $serverip) [ -n "$mtu" ] && { uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.mtu=$mtu ip link set dev $OMR_TRACKER_DEVICE mtu $mtu > /dev/null 2>&1 } - [ -n "$mtu" ] && [ -n "$asn" ] && { - uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s") - } - } || { - uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s") } - elif [ -n "$asn" ]; then - uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s") fi + uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.lc=$(date +"%s") } if [ "$(uci -q get shadowsocks-libev.sss0.server)" != "" ] && [ "$(uci -q get openmptcprouter.settings.external_check)" = "0" ]; then if ping -c 1 $(uci -q get shadowsocks-libev.sss0.server) &> /dev/null; then @@ -448,6 +442,8 @@ fi [ -n "$OMR_TRACKER_LATENCY" ] && { [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.latency)" != "" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.latency_previous="$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.latency)" uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.latency="$OMR_TRACKER_LATENCY" + [ -z "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.latency_max)" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.latency_max="$OMR_TRACKER_LATENCY" + [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.latency_max)" -lt "$OMR_TRACKER_LATENCY" ] && uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.latency_max="$OMR_TRACKER_LATENCY" if [ "$multipath_config" = "on" ] && [ "$(uci -q get network.$OMR_TRACKER_INTERFACE.multipath)" != "master" ] && ([ "$(uci -q get openmptcprouter.settings.master)" = "dynamic" ] || (([ "$(uci -q get openmptcprouter.settings.master)" = "change" ] || [ "$(uci -q get openmptcprouter.settings.master)" = "" ]) && [ "$(uci -q get openmptcprouter.settings.master_lcintf | grep $OMR_TRACKER_INTERFACE)" = "" ])); then masterintf="$(uci -q show network | grep multipath=\'master\' | cut -d'.' -f2)" masterlatency="$(uci -q get openmptcprouter.$masterintf.latency | tr -d '\n')"