Files
lemana-vpn/libexec/lemana-vpn-dns-cleanup

24 lines
635 B
Bash
Executable File

#!/bin/sh
set -eu
SERVICES="${LEMANA_VPN_DNS_SERVICES:-Wi-Fi
USB 10/100/1000 LAN
Ethernet}"
printf '%s\n' "$SERVICES" | while IFS= read -r service; do
[ -n "$service" ] || continue
dns="$(/usr/sbin/networksetup -getdnsservers "$service" 2>/dev/null || true)"
printf '%s\n' "$dns" | grep -q '^10\.' || continue
/usr/sbin/networksetup -setdnsservers "$service" empty >/dev/null 2>&1 || {
printf 'Failed to reset DNS for %s\n' "$service" >&2
exit 1
}
printf 'DNS reset for %s\n' "$service"
done
/usr/bin/dscacheutil -flushcache >/dev/null 2>&1 || true
/usr/bin/killall -HUP mDNSResponder >/dev/null 2>&1 || true