diff --git a/src/functions.sh b/src/functions.sh index 41b158d..4a4b8c1 100755 --- a/src/functions.sh +++ b/src/functions.sh @@ -6,3 +6,20 @@ DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) function pause(){ read -p "$*" } + +function printLocalDns(){ + if nc -z localhost 53 1>/dev/null 2>&1 + then + # port 53 is already bound, do not proceed: + return + fi + local ALL_DNS='8.8.8.8:53,8.8.4.4:53' + if [[ -r '/etc/resolv.conf' ]] + then + for dns in $( grep '^nameserver' '/etc/resolv.conf' | awk '{ print $2 }' ) + do + ALL_DNS="$dns:53,$ALL_DNS" + done + fi + echo "$ALL_DNS" +} diff --git a/src/start_corectld.command b/src/start_corectld.command index 82d48e5..99a0d98 100755 --- a/src/start_corectld.command +++ b/src/start_corectld.command @@ -13,5 +13,10 @@ sudo -k > /dev/null 2>&1 printf '%s\n' "$my_password" | sudo -Sv > /dev/null 2>&1 # start corectld -sudo nohup /usr/local/sbin/corectld start --user $(whoami) - +NAMESERVERS="" +DNS="$( printLocalDns )" +if [[ -n "$DNS" ]] +then + NAMESERVERS="--recursive-nameservers '$DNS'" +fi +sudo nohup /usr/local/sbin/corectld start --user $(whoami) $NAMESERVERS