Odpowiedzi:
Istnieje kilka sposobów - oto dwa:
cat /etc/resolv.conf
-lub-
scutil --dns
digani nslookupnie muszą dać realistyczny obraz tego, jak nazwy domen aplikacji MacOS postanowienie z systemu lokalnego, zwłaszcza gdy zostały skonfigurowane wielokrotne (specyficzne dla domeny) DNSes, takie jak przy użyciu klienta VPN dla wielokrotności jednoczesne połączenia. Zamiast nslookuplub digużyj dscacheutil -q host -a name somehostname.comdo przetestowania rozdzielczości DNS. Bierze pod uwagę wszystkie skonfigurowane serwery DNS, a także ich kolejność priorytetów.
cat /etc/resolv.confnie wydaje się już „niezawodnym” rozwiązaniem. To jest powiadomienie, które otrzymuję w macOS High Sierra podczas jego używania: (przepraszam za formatowanie - komentarze nie obsługują prostych podziałów linii) # powiadomienie macOS # # Ten plik nie jest sprawdzany w celu rozpoznania nazwy hosta DNS, adresu # rozdzielczości lub Mechanizm routingu zapytań DNS używany przez większość # procesów w tym systemie. # # Aby wyświetlić konfigurację DNS używaną przez ten system, użyj: # scutil --dns
scutil --dns | grep nameserverpo prostu dostać serwery DNS.
Następujące polecenie powłoki może być przydatne do wyświetlenia bieżących wpisów DNS:
grep nameserver <(scutil --dns)
Aby odfiltrować go dla skryptu, możesz przesłać dane wyjściowe do awk '{print $3}'lub grep -o "[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+"polecenia.
scutil --dns | grep nameserverpoprawna (tylko inna składnia)?
networksetup -getdnsserversnie działa na serwerach DNS przypisanych do DHCP. Zawsze o tym zapominamscutil. „Sc” oznacza konfigurację systemu? Na pewno nie konfiguruje dużej części systemu ...