Chcę wyświetlić serwery DNS, które są używane przez bieżącą konfigurację sieci w systemie OS X, z wiersza polecenia.
command-line
dns
sorin
źródło
źródło
networksetup -getdnsservers
nie 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 ...dig
aninslookup
nie 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. Zamiastnslookup
lubdig
użyjdscacheutil -q host -a name somehostname.com
do przetestowania rozdzielczości DNS. Bierze pod uwagę wszystkie skonfigurowane serwery DNS, a także ich kolejność priorytetów.cat /etc/resolv.conf
nie 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 --dnsscutil --dns | grep nameserver
po prostu dostać serwery DNS.Następujące polecenie powłoki może być przydatne do wyświetlenia bieżących wpisów DNS:
Aby odfiltrować go dla skryptu, możesz przesłać dane wyjściowe do
awk '{print $3}'
lubgrep -o "[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+"
polecenia.źródło
scutil --dns | grep nameserver
poprawna (tylko inna składnia)?