1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-03-09 15:40:03 +00:00

Add a timeout on all resolveip requests

This commit is contained in:
Ycarus (Yannick Chabanois) 2024-08-27 09:33:23 +02:00
parent f2546261fe
commit bf8cc3b4db
15 changed files with 26 additions and 26 deletions

View file

@ -166,11 +166,11 @@ _check_master() {
local ipd=$1
server_ping=false
#[ -n "$serverip" ] && [ "$server_ping" = true ] && return
ipresolve="$(resolveip -4 $ipd | head -n 1)"
ipresolve="$(resolveip -t 5 -4 $ipd | head -n 1)"
if [ -n "$ipresolve" ]; then
serverip="$ipresolve"
else
ip6resolve="$(resolveip -6 $ipd | head -n 1)"
ip6resolve="$(resolveip -t 5 -6 $ipd | head -n 1)"
[ -n "$ip6resolve" ] && serverip="$ip6resolve"
fi
[ -z "$serverip" ] && return
@ -374,11 +374,11 @@ _check_backup() {
local ipd=$1
server_ping=false
#[ -n "$serverip" ] && [ "$server_ping" = true ] && return
ipresolve="$(resolveip -4 $ipd | head -n 1)"
ipresolve="$(resolveip -t 5 -4 $ipd | head -n 1)"
if [ -n "$ipresolve" ]; then
serverip="$ipresolve"
else
ip6resolve="$(resolveip -6 $ipd | head -n 1)"
ip6resolve="$(resolveip -t 5 -6 $ipd | head -n 1)"
[ -n "$ip6resolve" ] && serverip="$ip6resolve"
fi
[ -z "$serverip" ] && return

View file

@ -902,7 +902,7 @@ function interfaces_status()
local master = uci:get("openmptcprouter",s[".name"],"master") or "1"
local current = uci:get("openmptcprouter",s[".name"],"current") or "0"
for key, value in pairs(serverips) do
serverip = sys.exec('resolveip ' .. value .. ' | head -n 1 | tr -d "\n"')
serverip = sys.exec('resolveip -t 1 ' .. value .. ' | head -n 1 | tr -d "\n"')
if serverip ~= "" and (current == "1" or mArray.openmptcprouter["wan_addr"] == serverip or mArray.openmptcprouter["wan_addr6"] == serverip) and mArray.openmptcprouter["vps_admin"] == false then
mArray.openmptcprouter["vps_omr_version"] = uci:get("openmptcprouter", s[".name"], "omr_version") or ""
mArray.openmptcprouter["vps_kernel"] = uci:get("openmptcprouter",s[".name"],"kernel") or ""
@ -1511,9 +1511,9 @@ function interfaces_status()
serverip = mArray.openmptcprouter["wan_addr"]
end
if gateway ~= "" then
serverip = sys.exec('resolveip -4 ' .. value .. ' | head -n 1')
serverip = sys.exec('resolveip -t 1 -4 ' .. value .. ' | head -n 1')
elseif gateway6 ~= "" then
serverip = sys.exec('resolveip -6 ' .. value .. ' | head -n 1')
serverip = sys.exec('resolveip -t 1 -6 ' .. value .. ' | head -n 1')
end
if serverip == "" then
serverip = value

View file

@ -44,7 +44,7 @@ _login() {
login_on_server() {
server=$1
#auth=`curl --max-time 10 -s -k -H "Content-Type: application/json" -X POST -d '{"username":"'$username'","password":"'$password'"}' https://$server:$serverport/login`
resolve="$(resolveip $server)"
resolve="$(resolveip -t 5 $server)"
valid_ip6=$(valid_subnet6 $server)
if [ "$resolve" != "$server" ] || [ "$valid_ip6" != "ok" ]; then
auth=`curl --max-time 10 -s -k -H "accept: application/json" -H "Content-Type: application/x-www-form-urlencoded" -X POST -d 'username='$username'&password='$password https://$server:$serverport/token`
@ -72,7 +72,7 @@ _get_json() {
route=$1
[ -z "$token" ] && _login
[ -n "$token" ] && {
resolve="$(resolveip $server)"
resolve="$(resolveip -t 5 $server)"
valid_ip6=$(valid_subnet6 $server)
if [ "$resolve" != "$server" ] || [ "$valid_ip6" != "ok" ]; then
result=`curl --max-time 10 -s -k -H "accept: application/json" -H "Authorization: Bearer $token" https://$server:$serverport/$route`
@ -94,7 +94,7 @@ _set_json() {
settings="$2"
[ -z "$token" ] && _login
[ -n "$token" ] && {
resolve="$(resolveip $server)"
resolve="$(resolveip -t 5 $server)"
valid_ip6=$(valid_subnet6 $server)
if [ "$resolve" != "$server" ] || [ "$valid_ip6" != "ok" ]; then
result=`curl --max-time 10 -s -k -H "Authorization: Bearer $token" -H "Content-Type: application/json" -X POST -d "$settings" https://$server:$serverport/$route`
@ -507,11 +507,11 @@ _get_vps_config() {
fi
fi
vpsip="$(uci -q get openmptcprouter.${servername}.ip | awk '{print $1}')"
ipresolve="$(resolveip -4 $vpsip | head -n 1)"
ipresolve="$(resolveip -t 5 -4 $vpsip | head -n 1)"
if [ -n "$ipresolve" ]; then
vpsip="$ipresolve"
else
ip6resolve="$(resolveip -6 $vpsip | head -n 1)"
ip6resolve="$(resolveip -t 5 -6 $vpsip | head -n 1)"
[ -n "$ip6resolve" ] && vpsip="$ip6resolve"
fi
if [ -n "$(uci -q get shadowsocks-libev.sss0)" ] && [ "$(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
@ -941,7 +941,7 @@ _set_lan_ip() {
local settings
[ -z "$vps_config" ] && vps_config=$(_get_json "config")
[ -z "$vps_config" ] && return
lanip_current="$(echo "$vps_config" | jsonfilter -q -e '@.lan.ips' | sed -e 's:\\::g' -e 's:\[::g' -e 's:\]::g')"
lanip_current="$(echo "$vps_config" | jsonfilter -q -e '@.lan.ips' | sed -e 's:\\::g' -e 's:\[::g' -e 's:\]::g' -e 's/^[[:blank:]]*//;s/[[:blank:]]*$//')"
if [ "$lanips" != "" ] && [ "$lanip_current" != "$lanips" ]; then
#if [ "$lanips" != "" ]; then
settings='{"lanips" : ['$lanips']}'
@ -2189,7 +2189,7 @@ _get_token() {
port="$(uci -q get openmptcprouter.${servername}.port)"
api_test() {
server="$1"
resolve="$(resolveip $server)"
resolve="$(resolveip -t 5 $server)"
valid_ip6=$(valid_subnet6 $server)
if [ "$resolve" != "$server" ] || [ "$valid_ip6" != "ok" ]; then
if [ "$(curl -k -m 3 https://${server}:${port}/)" = "" ]; then

View file

@ -222,7 +222,7 @@ ss_rules_nft_gen() {
[ -z "$remote_servers" ] && remote_servers="$(echo $ss_redir_servers \
| tr ' ' '\n' \
| sort -u \
| xargs -n 1 resolveip \
| xargs -n 1 resolveip -t 5 \
| sort -u)"
local tmp="/tmp/ssrules"

View file

@ -127,7 +127,7 @@ ss_rules_parse_args() {
__errmsg "Please install iptables-mod-conntrack-extra with opkg"
return 1
fi
o_remote_servers="$(for s in $o_remote_servers; do resolveip -4 "$s"; done)"
o_remote_servers="$(for s in $o_remote_servers; do resolveip -t 5 -4 "$s"; done)"
}
ss_rules_flush() {

View file

@ -111,7 +111,7 @@ ss_rules6_parse_args() {
__errmsg "Please install ip6tables-mod-conntrack-extra with opkg"
return 1
fi
o_remote_servers="$(for s in $o_remote_servers; do resolveip -6 "$s"; done)"
o_remote_servers="$(for s in $o_remote_servers; do resolveip -t 5 -6 "$s"; done)"
}
ss_rules6_flush() {

View file

@ -194,7 +194,7 @@ ss_rules_nft_gen() {
[ -z "$remote_servers" ] && remote_servers="$(echo $ss_redir_servers \
| tr ' ' '\n' \
| sort -u \
| xargs -n 1 resolveip \
| xargs -n 1 resolveip -t 5 \
| sort -u)"
local tmp="/tmp/ssrrules"

View file

@ -127,7 +127,7 @@ ss_rules_parse_args() {
__errmsg "Please install iptables-mod-conntrack-extra with opkg"
return 1
fi
o_remote_servers="$(for s in $o_remote_servers; do resolveip -4 "$s"; done)"
o_remote_servers="$(for s in $o_remote_servers; do resolveip -t 5 -4 "$s"; done)"
}
ss_rules_flush() {

View file

@ -111,7 +111,7 @@ ss_rules6_parse_args() {
__errmsg "Please install ip6tables-mod-conntrack-extra with opkg"
return 1
fi
o_remote_servers="$(for s in $o_remote_servers; do resolveip -6 "$s"; done)"
o_remote_servers="$(for s in $o_remote_servers; do resolveip -t 5 -6 "$s"; done)"
}
ss_rules6_flush() {

View file

@ -468,7 +468,7 @@ add_v2ray_redirect_rules() {
remote_servers="$(echo $OUTBOUND_SERVERS \
| tr ' ' '\n' \
| sort -u \
| xargs -n 1 resolveip \
| xargs -n 1 resolveip -t 5 \
| sort -u)"
[ "$(uci -q get v2ray.main_transparent_proxy.redirect_udp)" = "1" ] && [ "$(uci -q get v2ray.omrout.protocol)" != "socks" ] && portudp="$port"

View file

@ -128,7 +128,7 @@ v2r_rules_parse_args() {
__errmsg "Please install iptables-mod-conntrack-extra with opkg"
return 1
fi
o_remote_servers="$(for s in $o_remote_servers; do resolveip -4 "$s"; done)"
o_remote_servers="$(for s in $o_remote_servers; do resolveip -t 5 -4 "$s"; done)"
}
v2r_rules_flush() {

View file

@ -111,7 +111,7 @@ v2ray_rules6_parse_args() {
__errmsg "Please install ip6tables-mod-conntrack-extra with opkg"
return 1
fi
o_remote_servers="$(for s in $o_remote_servers; do resolveip -6 "$s"; done)"
o_remote_servers="$(for s in $o_remote_servers; do resolveip -t 5 -6 "$s"; done)"
}
v2ray_rules6_flush() {

View file

@ -480,7 +480,7 @@ add_xray_redirect_rules() {
remote_servers="$(echo $OUTBOUND_SERVERS \
| tr ' ' '\n' \
| sort -u \
| xargs -n 1 resolveip \
| xargs -n 1 resolveip -t 5 \
| sort -u)"
[ "$(uci -q get xray.main_transparent_proxy.redirect_udp)" = "1" ] && [ "$(uci -q get xray.omrout.protocol)" != "socks" ] && portudp="$port"

View file

@ -128,7 +128,7 @@ xr_rules_parse_args() {
__errmsg "Please install iptables-mod-conntrack-extra with opkg"
return 1
fi
o_remote_servers="$(for s in $o_remote_servers; do resolveip -4 "$s"; done)"
o_remote_servers="$(for s in $o_remote_servers; do resolveip -t 5 -4 "$s"; done)"
}
xr_rules_flush() {

View file

@ -111,7 +111,7 @@ xray_rules6_parse_args() {
__errmsg "Please install ip6tables-mod-conntrack-extra with opkg"
return 1
fi
o_remote_servers="$(for s in $o_remote_servers; do resolveip -6 "$s"; done)"
o_remote_servers="$(for s in $o_remote_servers; do resolveip -t 5 -6 "$s"; done)"
}
xray_rules6_flush() {