1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-02-14 11:31:51 +00:00

Fix issue when server use IPv6

This commit is contained in:
Ycarus (Yannick Chabanois) 2023-11-10 10:13:08 +01:00
parent 6a4820663f
commit f358304707
2 changed files with 20 additions and 3 deletions

View file

@ -25,7 +25,7 @@ _check_server() {
local port=$2
local k=0
while [ "$server_ping" = false ] && [ "$k" -le "$retry" ]; do
ret=$(curl -4 \
ret=$(curl \
--max-time "$OMR_TRACKER_TIMEOUT" \
-s \
-k \
@ -66,7 +66,12 @@ _check_master() {
set_ip() {
local ip=$1
ipresolve="$(resolveip -4 $ip | head -n 1)"
[ -n "$ipresolve" ] && ip="$ipresolve"
if [ -n "$ipresolve" ]; then
ip="$ipresolve"
else
ip6resolve="$(resolveip -6 $ip | head -n 1)"
[ -n "$ip6resolve" ] && ip="$ip6resolve"
fi
#_ping_server $ip
_check_server $ip $port
if [ "$server_ping" = true ]; then
@ -191,7 +196,12 @@ _check_backup() {
set_ip() {
local ip=$1
ipresolve="$(resolveip -4 $ip | head -n 1)"
[ -z "$ipresolve" ] && ip="$ipresolve"
if [ -n "$ipresolve" ]; then
ip="$ipresolve"
else
ip6resolve="$(resolveip -6 $ip | head -n 1)"
[ -n "$ip6resolve" ] && ip="$ip6resolve"
fi
#_ping_server $ip
_check_server $ip $port
#[ "$server_ping" = true ] && [ "$(uci -q get shadowsocks-libev.sss${count}.server | tr -d '\n')" = "$ip" ] && break

View file

@ -501,6 +501,13 @@ _get_vps_config() {
fi
fi
vpsip="$(uci -q get openmptcprouter.${servername}.ip | awk '{print $1}')"
ipresolve="$(resolveip -4 $vpsip | head -n 1)"
if [ -n "$ipresolve" ]; then
vpsip="$ipresolve"
else
ip6resolve="$(resolveip -6 $vpsip | head -n 1)"
[ -n "$ip6resolve" ] && vpsip="$ip6resolve"
fi
if [ "$(uci -q get shadowsocks-libev.sss0.server)" != "127.0.0.1" ] && [ "$(uci -q get shadowsocks-libev.sss0.server)" != "$vpsip" ] && [ "$(uci -q get openmptcprouter.settings.ha)" != "1" ]; then
config_foreach _set_ss_server server "server" $vpsip
uci -q batch <<-EOF >/dev/null