Làm cách nào tôi có thể hiển thị các máy chủ DNS hiện tại từ dòng lệnh trong OS X?


50

Tôi muốn hiển thị các máy chủ DNS được sử dụng bởi thiết lập mạng hiện tại trên OS X, từ dòng lệnh.

Câu trả lời:


72

Có một số cách - đây là hai cách:

cat /etc/resolv.conf

-hoặc là-

scutil --dns

1
Nó cực kỳ khó chịu mà networksetup -getdnsserverskhông hoạt động cho các máy chủ DNS được gán DHCP. Tôi luôn quên về scutil. 'Sc' là viết tắt của Cấu hình hệ thống? Nó chắc chắn không cấu hình nhiều hệ thống ...
Geoff Nixon

1
Cũng cần lưu ý rằng dighoặc nslookupkhông nhất thiết phải đưa ra một bức tranh thực tế về cách các ứng dụng macOS phân giải tên miền khỏi hệ thống cục bộ, đặc biệt là khi nhiều DNS (dành riêng cho tên miền) đã được định cấu hình, chẳng hạn như khi sử dụng máy khách VPN cho nhiều người Kết nối đồng thời. Thay vì nslookuphoặc dig, sử dụng dscacheutil -q host -a name somehostname.comđể kiểm tra độ phân giải DNS. Nó tính đến tất cả các máy chủ DNS được cấu hình cũng như thứ tự ưu tiên của chúng.
Ville

3
cat /etc/resolv.confdường như không còn là một giải pháp "đáng tin cậy" nữa. Đây là thông báo tôi nhận được trong macOS High Sierra khi sử dụng: (xin lỗi vì định dạng - nhận xét không hỗ trợ ngắt dòng đơn giản) # macOS Thông báo # # Tệp này không được tư vấn cho độ phân giải tên máy chủ DNS, độ phân giải địa chỉ # hoặc Cơ chế định tuyến truy vấn DNS được sử dụng bởi hầu hết các quy trình # trên hệ thống này. # # Để xem cấu hình DNS được sử dụng bởi hệ thống này, hãy sử dụng: # scutil --dns
PatrikN

Tôi thích scutil --dns | grep nameserverđể chỉ có được các máy chủ DNS.
SamAndrew81

2

Lệnh shell sau đây có thể hữu ích để liệt kê các mục DNS hiện tại:

grep nameserver <(scutil --dns)

Để lọc nó ra cho tập lệnh, bạn có thể chuyển đầu ra thành awk '{print $3}'hoặc ra grep -o "[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+"lệnh.


2
Điều này giống như scutil --dns | grep nameserverđúng (chỉ khác cú pháp)?
SamAndrew81
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.