diff --git a/omr-tracker/files/bin/omr-tracker-server b/omr-tracker/files/bin/omr-tracker-server index 940c119b8..cff94206b 100755 --- a/omr-tracker/files/bin/omr-tracker-server +++ b/omr-tracker/files/bin/omr-tracker-server @@ -66,7 +66,7 @@ _check_master() { set_ip() { local ip=$1 ipresolve="$(resolveip -4 $ip | head -n 1)" - [ -z "$ipresolve" ] && ip="$ipresolve" + [ -n "$ipresolve" ] && ip="$ipresolve" #_ping_server $ip _check_server $ip $port if [ "$server_ping" = true ]; then diff --git a/omr-tracker/files/etc/init.d/omr-tracker b/omr-tracker/files/etc/init.d/omr-tracker index 31be2a0d5..1b7699ea7 100755 --- a/omr-tracker/files/etc/init.d/omr-tracker +++ b/omr-tracker/files/etc/init.d/omr-tracker @@ -9,6 +9,7 @@ START=90 STOP=10 USE_PROCD=1 + EXTRA_COMMAND="start_interface" } . /usr/lib/unbound/iptools.sh @@ -331,9 +332,16 @@ _launch_xray_tracker() { sleep 1 } +_dns_server() { + local ip=$1 + resolv=$(resolveip -4 ${ip} | head -n 1) + [ -n "${resolv}" ] && [ "${resolv}" != "${ip}" ] && multiserver=true +} + _multi_server() { config_get backup $1 backup [ "$backup" = "1" ] && multiserver=true + config_list_foreach $1 ip _dns_server } _gre_tunnel() { @@ -341,6 +349,11 @@ _gre_tunnel() { [ "$proto" = "gre" ] && gretunnel=true } +start_interface() { + [ -z "$1" ] && return + _launch_tracker $1 +} + start_service() { local ss_enable=0 local ss_rust_enable=0