diff --git a/mptcp/files/usr/share/omr/post-tracking.d/020-status b/mptcp/files/usr/share/omr/post-tracking.d/020-status index e917002a4..01e21a00e 100755 --- a/mptcp/files/usr/share/omr/post-tracking.d/020-status +++ b/mptcp/files/usr/share/omr/post-tracking.d/020-status @@ -65,7 +65,12 @@ if [ -n "$OMR_TRACKER_INTERFACE" ] && ([ "$(uci -q get openmptcprouter.$OMR_TRAC } fi [ -n "$ipaddr" ] && [ "$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.publicip)" != "$ipaddr" ] && { - _log "New public ip detected for $OMR_TRACKER_INTERFACE ($OMR_TRACKER_DEVICE): $ipaddr (previous: $(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.publicip))" + previousip="$(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.publicip)" + if [ -n "$previousip" ]; then + _log "New public ip detected for $OMR_TRACKER_INTERFACE ($OMR_TRACKER_DEVICE): $ipaddr (previous: $(uci -q get openmptcprouter.$OMR_TRACKER_INTERFACE.publicip))" + else + _log "New public ip detected for $OMR_TRACKER_INTERFACE ($OMR_TRACKER_DEVICE): $ipaddr (First public IP detected)" + fi uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.publicip="$ipaddr" /etc/init.d/mptcp enabled && { _log "Reload MPTCP for $OMR_TRACKER_DEVICE" diff --git a/omr-bypass/files/etc/init.d/omr-bypass-nft b/omr-bypass/files/etc/init.d/omr-bypass-nft index 9e67e216c..31a2162fc 100755 --- a/omr-bypass/files/etc/init.d/omr-bypass-nft +++ b/omr-bypass/files/etc/init.d/omr-bypass-nft @@ -922,6 +922,11 @@ reload_service() { stop start } +restart_service() { + RELOAD=1 + stop + start +} reload_rules() { #[ "$( ipset -n list | grep omr_ )" = "" ] && return 0 diff --git a/omr-schedule/files/usr/share/omr/schedule.d/010-services b/omr-schedule/files/usr/share/omr/schedule.d/010-services index b1976ba2a..ef220bfcd 100755 --- a/omr-schedule/files/usr/share/omr/schedule.d/010-services +++ b/omr-schedule/files/usr/share/omr/schedule.d/010-services @@ -202,7 +202,7 @@ fi if [ -f /etc/init.d/omr-bypass ] && (([ -e /usr/sbin/iptables-nft-save ] && [ "$(iptables-nft-save 2>/dev/null | grep omr-bypass)" = "" ]) || [ "$(iptables-save 2>/dev/null | grep omr-bypass)" = "" ]) && [ "$(pgrep -f omr-bypass)" = "" ]; then _log "Can't find omr-bypass rules, restart omr-bypass..." - /etc/init.d/omr-bypass 2>&1 >/dev/null + /etc/init.d/omr-bypass start 2>&1 >/dev/null sleep 5 fi diff --git a/openmptcprouter/files/etc/init.d/openmptcprouter-vps b/openmptcprouter/files/etc/init.d/openmptcprouter-vps index 7683774a9..8b7afd374 100755 --- a/openmptcprouter/files/etc/init.d/openmptcprouter-vps +++ b/openmptcprouter/files/etc/init.d/openmptcprouter-vps @@ -1939,7 +1939,7 @@ _set_config_from_vps() { set network.omr6in4.gateway="$omr6in4_vps_localip" commit network EOF - /etc/init.d/network restart + /etc/init.d/network reload sleep 6 fi diff --git a/openmptcprouter/files/etc/uci-defaults/2020-omr-vpn b/openmptcprouter/files/etc/uci-defaults/2020-omr-vpn index 334cf75d8..69c3632a7 100755 --- a/openmptcprouter/files/etc/uci-defaults/2020-omr-vpn +++ b/openmptcprouter/files/etc/uci-defaults/2020-omr-vpn @@ -46,6 +46,7 @@ if [ "$(uci -q get openvpn.omr.proto)" != "tcp-client" ]; then set openvpn.omr.rcvbuf=0 set openvpn.omr.route_delay=5 set openvpn.omr.disable_dco=1 + set openvpn.omr.ping_restart=60 commit openvpn EOF fi @@ -54,6 +55,12 @@ if [ -z "$(uci -q get openvpn.omr.disable_dco)" ]; then set openvpn.omr.disable_dco=1 commit openvpn EOF +fi +if [ -z "$(uci -q get openvpn.omr.ping_restart)" ]; then + uci -q batch <<-EOF >/dev/null + set openvpn.omr.ping_restart=60 + commit openvpn + EOF fi diff --git a/shadowsocks-libev/files/shadowsocks-libev.init-nft b/shadowsocks-libev/files/shadowsocks-libev.init-nft index 89cc846b2..0abc4855d 100755 --- a/shadowsocks-libev/files/shadowsocks-libev.init-nft +++ b/shadowsocks-libev/files/shadowsocks-libev.init-nft @@ -273,6 +273,16 @@ stop_service() { rm -rf "$ss_confdir" } +restart_service() { + stop + start +} + +reload_service() { + stop + start +} + service_triggers() { procd_add_reload_interface_trigger wan procd_add_reload_trigger shadowsocks-libev diff --git a/shadowsocks-rust/files/shadowsocks-rust.init-nft b/shadowsocks-rust/files/shadowsocks-rust.init-nft index eaa60035a..c5b77740e 100755 --- a/shadowsocks-rust/files/shadowsocks-rust.init-nft +++ b/shadowsocks-rust/files/shadowsocks-rust.init-nft @@ -228,6 +228,16 @@ stop_service() { rm -rf "$ss_confdir" } +restart_service() { + stop + start +} + +reload_service() { + stop + start +} + service_triggers() { procd_add_reload_interface_trigger wan procd_add_reload_trigger shadowsocks-rust diff --git a/v2ray-core/files/etc/init.d/v2ray-nft b/v2ray-core/files/etc/init.d/v2ray-nft index 110b3c6ff..006e1428f 100755 --- a/v2ray-core/files/etc/init.d/v2ray-nft +++ b/v2ray-core/files/etc/init.d/v2ray-nft @@ -2304,6 +2304,16 @@ stop_service() { test -d "$CONFIG_FOLDER" && rm -rf "$CONFIG_FOLDER" } +restart_service() { + stop + start +} + +reload_service() { + stop + start +} + service_triggers() { procd_add_reload_trigger "$NAME" } diff --git a/xray-core/files/etc/init.d/xray-nft b/xray-core/files/etc/init.d/xray-nft index a4033ad3a..76689de1c 100755 --- a/xray-core/files/etc/init.d/xray-nft +++ b/xray-core/files/etc/init.d/xray-nft @@ -2360,6 +2360,17 @@ stop_service() { test -d "$CONFIG_FOLDER" && rm -rf "$CONFIG_FOLDER" } +restart_service() { + stop + start +} + +reload_service() { + stop + start +} + + service_triggers() { procd_add_reload_trigger "$NAME" }