mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-02-13 02:51:50 +00:00
commit
8b4d73a1c6
4 changed files with 32 additions and 18 deletions
|
@ -24,11 +24,11 @@ _config_autorate() {
|
|||
config_get min_download "$1" min_download "0"
|
||||
config_get download "$1" download "0"
|
||||
config_get max_download "$1" max_download "0"
|
||||
[ "${min_download}" == "0" ] || [ "${max_download}" == "0" ] || [ "${download}" == "0" ] && return
|
||||
[ "${max_download}" == "0" ] || [ "${download}" == "0" ] && return
|
||||
config_get min_upload "$1" min_upload "0"
|
||||
config_get upload "$1" upload "0"
|
||||
config_get max_upload "$1" max_upload "0"
|
||||
[ "${min_upload}" == "0" ] || [ "${max_upload}" == "0" ] || [ "${upload}" == "0" ] && return
|
||||
[ "${max_upload}" == "0" ] || [ "${upload}" == "0" ] && return
|
||||
# config_get interface "$1" interface
|
||||
# cp /usr/share/sqm-autorate/cake-autorate_template.sh /usr/share/sqm-autorate/cake-autorate_config.${interface}.sh
|
||||
cp /usr/share/sqm-autorate/config_template.sh /usr/share/sqm-autorate/config.$1.sh
|
||||
|
|
|
@ -1298,7 +1298,7 @@ fi
|
|||
_log "Reload MPTCP config for $OMR_TRACKER_DEVICE"
|
||||
/etc/init.d/mptcp reload "$OMR_TRACKER_DEVICE"
|
||||
fi
|
||||
_log "Multipath $OMR_TRACKER_DEVICE switched to $multipath_config"
|
||||
_log "Multipath $OMR_TRACKER_DEVICE switched to $multipath_config (from $multipath_status)"
|
||||
multipath "$OMR_TRACKER_DEVICE" "$multipath_config"
|
||||
fi
|
||||
}
|
||||
|
@ -1610,13 +1610,20 @@ if [ -n "$OMR_TRACKER_INTERFACE" ] && [ -n "$OMR_TRACKER_DEVICE" ]; then
|
|||
fi
|
||||
|
||||
if [ "$(pgrep -f omr-test-speed-server)" = "" ] && [ "$(uci -q get openmptcprouter.${OMR_TRACKER_INTERFACE}.testspeed)" = "1" ] && [ -z "$(uci -q get openmptcprouter.${OMR_TRACKER_INTERFACE}.testspeed_lc)" ]; then
|
||||
download_speed=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest | tr -d '\n')
|
||||
download_speed2=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest | tr -d '\n')
|
||||
download_speed3=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest | tr -d '\n')
|
||||
download_speed=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest)
|
||||
download_speed2=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest)
|
||||
download_speed3=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest)
|
||||
[ "$download_speed2" -gt "$download_speed" ] && download_speed=${download_speed2}
|
||||
[ "$download_speed3" -gt "$download_speed" ] && download_speed=${download_speed3}
|
||||
download_speed=$((download_speed/1000))
|
||||
if [ -n "$download_speed" ] && [ "$download_speed" != "0" ]; then
|
||||
upload_speed=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload)
|
||||
upload_speed2=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload)
|
||||
upload_speed3=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload)
|
||||
[ "$upload_speed2" -gt "$upload_speed" ] && upload_speed=${upload_speed2}
|
||||
[ "$upload_speed3" -gt "$upload_speed" ] && upload_speed=${upload_speed3}
|
||||
|
||||
# Set Download speed settings
|
||||
if [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.autorate)" = "1" ]; then
|
||||
uci -q set sqm.${OMR_TRACKER_INTERFACE}.download=$((download_speed*65/100))
|
||||
uci -q set sqm.${OMR_TRACKER_INTERFACE}.max_download=${download_speed}
|
||||
|
@ -1626,11 +1633,8 @@ if [ "$(pgrep -f omr-test-speed-server)" = "" ] && [ "$(uci -q get openmptcprout
|
|||
fi
|
||||
_log "Calculated ${OMR_TRACKER_INTERFACE} download speed: ${download_speed}"
|
||||
uci -q set network.${OMR_TRACKER_INTERFACE}.downloadspeed=${download_speed}
|
||||
upload_speed=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload | tr -d '\n')
|
||||
upload_speed2=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload | tr -d '\n')
|
||||
upload_speed3=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload | tr -d '\n')
|
||||
[ "$upload_speed2" -gt "$upload_speed" ] && upload_speed=${upload_speed2}
|
||||
[ "$upload_speed3" -gt "$upload_speed" ] && upload_speed=${upload_speed3}
|
||||
|
||||
# Set Upload speed settings
|
||||
upload_speed=$((upload_speed/1000))
|
||||
if [ -n "$upload_speed" ] && [ "$upload_speed" != "0" ]; then
|
||||
if [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.autorate)" = "1" ]; then
|
||||
|
@ -1645,6 +1649,7 @@ if [ "$(pgrep -f omr-test-speed-server)" = "" ] && [ "$(uci -q get openmptcprout
|
|||
fi
|
||||
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.testspeed_lc=$(date +"%s")
|
||||
uci commit network
|
||||
uci commit sqm
|
||||
uci commit openmptcprouter
|
||||
fi
|
||||
sleep 5
|
||||
|
@ -1795,9 +1800,11 @@ if [ "$(pgrep -f openmptcprouter-vps)" = "" ] && ([ "$(uci -q show openmptcprout
|
|||
fi
|
||||
|
||||
if [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.enabled)" = "1" ] && [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.autorate)" = "1" ] && [ -n "$OMR_TRACKER_DEVICE" ] && [ -z $(pgrep -f "config.${OMR_TRACKER_INTERFACE}") ]; then
|
||||
_log "Restart SQM Autorate"
|
||||
/etc/init.d/sqm-autorate restart >/dev/null 2>&1
|
||||
sleep 5
|
||||
if [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.max_download)" != "0" ] && [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.download)" != "0" ] && [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.max_upload)" != "0" ] && [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.upload)" != "0" ]; then
|
||||
_log "Restart SQM Autorate"
|
||||
/etc/init.d/sqm-autorate restart >/dev/null 2>&1
|
||||
sleep 5
|
||||
fi
|
||||
fi
|
||||
|
||||
#if [ "$(uci -q show openmptcprouter | grep server)" != "" ] && [ "$(uci -q show openmptcprouter | grep password)" != "" ] && [ "$(pgrep -f openmptcprouter-vps)" = "" ] && [ "$(uci -q show openmptcprouter | grep admin_error=\'1\')" = "" ] && ([ "$(uci -q show openmptcprouter | grep set_firewall=\'1\')" != "" ] || (([ -f /usr/sbin/iptables-legacy-save ] && [ -z "$(iptables-save 2>/dev/null | grep omr_dst_bypass_${OMR_TRACKER_DEVICE})" ]) || [ -z "$(iptables-save 2>/dev/null | grep omr_dst_bypass_${OMR_TRACKER_DEVICE})" ])); then
|
||||
|
|
|
@ -43,7 +43,7 @@ trap : HUP INT TERM
|
|||
if [ -z "$INTERFACE" ]; then
|
||||
curl -4 -o /dev/null $HOST || echo
|
||||
else
|
||||
: /etc/init.d/sqm stop $INTERFACE
|
||||
/etc/init.d/sqm stop $INTERFACE
|
||||
domain=$(echo $HOST | awk -F/ '{print $3}')
|
||||
hostip=$(dig +nocmd +noall +answer A $domain | grep -v CNAME | awk '{print $5}' | tr '\n' ' ')
|
||||
if [ -n "$(ipset list 2>/dev/null | grep ss_rules)" ]; then
|
||||
|
@ -62,5 +62,5 @@ else
|
|||
ipset del ss_rules_dst_bypass_all $ip
|
||||
done
|
||||
fi
|
||||
: /etc/init.d/sqm start $INTERFACE
|
||||
/etc/init.d/sqm start $INTERFACE
|
||||
fi
|
||||
|
|
|
@ -13,7 +13,14 @@ MP=false
|
|||
if [ -n "$KEY" ] && [ -n "$HOST" ] && [ -n "$PORT" ]; then
|
||||
trap : HUP INT TERM
|
||||
[ -z "$FASTTEST" ] && echo "Disable SQM bandwidth limit on $INTERFACE"
|
||||
: /etc/init.d/sqm stop $INTERFACE 2>&1 >/dev/null
|
||||
[ -n "$(tc qdisc | grep $INTERFACE | grep bandwidth)" ] && {
|
||||
export SQM_VERBOSITY_MIN=10
|
||||
export SQM_VERBOSITY_MAX=0
|
||||
export SQM_SYSLOG=1
|
||||
/etc/init.d/sqm stop $INTERFACE 2>&1 >/dev/null
|
||||
#tc qdisc delete dev $INTERFACE root 2>&1 >/dev/null
|
||||
#tc qdisc delete dev ifb4$INTERFACE root 2>&1 >/dev/null
|
||||
}
|
||||
[ -z "$FASTTEST" ] && echo "Download test via server ${SERVER}:"
|
||||
if [ -n "$INTERFACE" ]; then
|
||||
#if [ "$(multipath ${INTERFACE} | grep default)" ]; then
|
||||
|
@ -44,5 +51,5 @@ if [ -n "$KEY" ] && [ -n "$HOST" ] && [ -n "$PORT" ]; then
|
|||
curl -k -o /dev/null -H "Authorization: Bearer ${KEY}" https://${HOST}:${PORT}/speedtest || echo
|
||||
fi
|
||||
[ -z "$FASTTEST" ] && echo "Restart SQM on $INTERFACE"
|
||||
: /etc/init.d/sqm start $INTERFACE 2>&1 >/dev/null
|
||||
/etc/init.d/sqm start $INTERFACE 2>&1 >/dev/null
|
||||
fi
|
Loading…
Reference in a new issue