Browse Source

blockcheck: mdig dns cache

pull/193/head
bol-van 10 months ago
parent
commit
4c11274508
  1. 26
      blockcheck.sh

26
blockcheck.sh

@ -48,6 +48,8 @@ PF_RULES_SAVE=/tmp/pf-zapret-save.conf
unset ALL_PROXY
setup_md5
killwait()
{
# $1 - signal (-9, -2, ...)
@ -193,8 +195,28 @@ mdig_resolve()
# $1 - ip version 4/6
# $2 - hostname
# windows version of mdig outputs 0D0A line ending. remove 0D.
echo "$2" | "$MDIG" --family=$1 | head -n 1 | tr -d '\r'
local hostvar=$(echo $2 | sed -e 's/[\.-]/_/g')
local cachevar=DNSCACHE_${hostvar}_$1
local countvar=${cachevar}_COUNT
local count n ip ips
eval count=\$${countvar}
if [ -n "$count" ]; then
n=$(random 0 $(($count-1)))
eval ip=\$${cachevar}_$n
echo $ip
return 0
else
# windows version of mdig outputs 0D0A line ending. remove 0D.
ips="$(echo $2 | "$MDIG" --family=$1 | tr -d '\r' | xargs)"
[ -n "$ips" ] || return 1
count=0
for ip in $ips; do
eval ${cachevar}_$count=$ip
count=$(($count+1))
done
eval $countvar=$count
mdig_resolve "$@"
fi
}
check_system()

Loading…
Cancel
Save