Cách kiểm tra DNS trên Windows và macOS chi tiết, dễ thực hiện
DNS (Domain Name System) là hệ thống phân giải tên miền, đóng vai trò quan trọng trong quá trình kết nối Internet. Khi bạn truy cập một website như Google, trình duyệt cần xác định địa chỉ IP tương ứng với tên miền đó. DNS sẽ đảm nhiệm công việc chuyển đổi tên miền thành địa chỉ IP để thiết bị có thể tìm đúng máy chủ cần kết nối. Nếu DNS hoạt động không ổn định, bạn có thể gặp tình trạng không truy cập được website, tải trang chậm hoặc xuất hiện thông báo lỗi phân giải tên miền.
Biết cách kiểm tra DNS trên Windows và macOS giúp bạn xác định máy tính đang sử dụng máy chủ DNS nào, kiểm tra khả năng phân giải tên miền và tìm nguyên nhân gây ra sự cố mạng. Trong bài viết này, kiemtranhanh.com sẽ hướng dẫn các phương pháp kiểm tra DNS đơn giản, phù hợp cho cả người dùng phổ thông lẫn người cần chẩn đoán mạng chuyên sâu.
1. Khi nào cần kiểm tra DNS trên máy tính?
Kiểm tra DNS là bước chẩn đoán hữu ích khi kết nối mạng gặp vấn đề nhưng nguyên nhân chưa rõ ràng. Một số dấu hiệu phổ biến cho thấy bạn nên kiểm tra hệ thống DNS bao gồm:
- Máy tính đã kết nối Wi-Fi hoặc Ethernet nhưng không truy cập được một số website.
- Trình duyệt hiển thị thông báo DNS_PROBE_FINISHED_NXDOMAIN hoặc DNS server not responding.
- Một website không thể mở bằng tên miền nhưng có thể kết nối đến một địa chỉ IP đã biết.
- Quá trình tải trang diễn ra chậm bất thường dù tốc độ Internet vẫn ổn định.
- Bạn vừa thay đổi DNS sang Google DNS, Cloudflare DNS hoặc máy chủ DNS của tổ chức.
- Cần xác định sự cố xuất phát từ máy tính, bộ định tuyến, nhà cung cấp Internet hay máy chủ DNS.
Cần lưu ý rằng những dấu hiệu trên không phải lúc nào cũng do DNS. Sự cố cũng có thể liên quan đến kết nối Internet, tường lửa, VPN, cấu hình proxy hoặc chính website đang gặp lỗi.
2. Cách kiểm tra DNS trên Windows
Windows cung cấp nhiều công cụ tích hợp giúp xem cấu hình DNS và kiểm tra khả năng phân giải tên miền. Bạn có thể sử dụng Command Prompt hoặc Windows Terminal mà không cần cài đặt phần mềm bổ sung.
Cách 1: Kiểm tra địa chỉ DNS bằng lệnh ipconfig /all
Đây là phương pháp đơn giản để xem máy tính đang sử dụng máy chủ DNS nào trên từng giao diện mạng.
- Nhấn tổ hợp phím Windows + R để mở hộp thoại Run.
- Nhập cmd rồi nhấn Enter để mở Command Prompt.
- Nhập lệnh sau và nhấn Enter:
ipconfig /all
Trong kết quả hiển thị, tìm giao diện mạng đang hoạt động, chẳng hạn Wireless LAN adapter Wi-Fi hoặc Ethernet adapter. Tiếp theo, tìm dòng DNS Servers để xem địa chỉ máy chủ DNS được cấu hình.
Ví dụ, địa chỉ 8.8.8.8 thường được sử dụng bởi Google Public DNS, còn 1.1.1.1 thuộc Cloudflare DNS. Nếu bạn nhìn thấy địa chỉ IP nội bộ như 192.168.1.1, máy tính có thể đang sử dụng bộ định tuyến làm máy chủ DNS trung gian.
Lưu ý rằng địa chỉ DNS hiển thị có thể khác nhau giữa các giao diện mạng. Hãy kiểm tra đúng kết nối đang được sử dụng để tránh nhầm lẫn giữa Wi-Fi, Ethernet và các bộ điều hợp ảo.
Cách 2: Kiểm tra DNS bằng lệnh nslookup
nslookup là công cụ dòng lệnh dùng để truy vấn hệ thống DNS. Công cụ này giúp kiểm tra tên miền có được phân giải thành địa chỉ IP hay không, đồng thời cho biết máy chủ DNS đang trả lời truy vấn.
Mở Command Prompt hoặc Windows Terminal, sau đó nhập:
nslookup google.com
Nếu truy vấn thành công, kết quả thường hiển thị tên máy chủ DNS, địa chỉ máy chủ và một hoặc nhiều địa chỉ IP của tên miền. Điều này cho thấy truy vấn DNS đã nhận được phản hồi, nhưng chưa khẳng định website chắc chắn truy cập được vì kết nối đến máy chủ web vẫn có thể gặp lỗi.
Bạn cũng có thể kiểm tra một tên miền cụ thể của website đang gặp sự cố:
nslookup kiemtranhanh.com
Thay tên miền trong lệnh bằng địa chỉ website bạn muốn kiểm tra. Nếu nhận được thông báo như Non-existent domain, hãy kiểm tra lại tên miền hoặc xác minh bản ghi DNS có tồn tại hay không. Nếu xuất hiện Request timed out, truy vấn chưa nhận được phản hồi đúng thời hạn; nguyên nhân có thể là máy chủ DNS không phản hồi, mạng bị gián đoạn hoặc truy vấn bị chặn.
Cách 3: Truy vấn bằng một máy chủ DNS cụ thể
Để xác định sự cố có liên quan đến máy chủ DNS hiện tại hay không, bạn có thể yêu cầu nslookup sử dụng một máy chủ DNS khác.
nslookup google.com 8.8.8.8
Lệnh trên gửi truy vấn đến máy chủ Google Public DNS có địa chỉ 8.8.8.8. Bạn cũng có thể thử Cloudflare DNS bằng lệnh:
nslookup google.com 1.1.1.1
Nếu truy vấn đến máy chủ DNS hiện tại thất bại nhưng truy vấn đến máy chủ khác thành công, hãy kiểm tra cấu hình DNS, khả năng kết nối đến máy chủ và các quy tắc mạng đang áp dụng. Phương pháp này không phải lúc nào cũng hoạt động vì mạng nội bộ hoặc nhà cung cấp Internet có thể chặn một số truy vấn DNS bên ngoài.
Cách 4: Kiểm tra DNS bằng giao diện Windows Settings
Nếu không quen sử dụng dòng lệnh, bạn có thể kiểm tra cấu hình mạng trực tiếp trong Windows.
- Mở Settings bằng tổ hợp phím Windows + I.
- Chọn Network & internet.
- Chọn Wi-Fi hoặc Ethernet tùy theo kết nối đang sử dụng.
- Mở thuộc tính mạng hoặc phần thông tin chi tiết của kết nối.
- Tìm mục DNS server assignment hoặc thông tin DNS để kiểm tra cấu hình hiện tại.
Tên gọi và vị trí các mục có thể thay đổi tùy phiên bản Windows. Nếu DNS được đặt ở chế độ tự động, máy tính thường nhận cấu hình từ DHCP của bộ định tuyến hoặc mạng đang kết nối.
3. Cách kiểm tra DNS trên macOS
Trên macOS, bạn có thể sử dụng ứng dụng Terminal để kiểm tra DNS hoặc mở System Settings để xem cấu hình mạng. Các phương pháp này phù hợp với nhiều phiên bản macOS, dù tên mục cài đặt có thể khác nhau đôi chút.
Cách 1: Xem DNS bằng lệnh scutil --dns
Lệnh scutil --dns hiển thị thông tin cấu hình DNS mà hệ thống macOS đang sử dụng, bao gồm các bộ phân giải tên miền và những quy tắc phân giải liên quan.
- Mở Spotlight bằng tổ hợp phím Command + Space.
- Nhập Terminal và nhấn Enter.
- Nhập lệnh dưới đây:
scutil --dns
Terminal sẽ hiển thị danh sách cấu hình DNS. Tìm mục nameserver để xem các địa chỉ máy chủ DNS. Trên một số hệ thống, kết quả có thể chứa nhiều bộ phân giải cho những giao diện hoặc miền khác nhau, vì vậy không nên mặc định rằng địa chỉ đầu tiên luôn là máy chủ được dùng cho mọi truy vấn.
Cách 2: Kiểm tra DNS bằng lệnh networksetup
macOS hỗ trợ lệnh networksetup để xem cấu hình DNS của một dịch vụ mạng cụ thể. Với kết nối Wi-Fi mặc định, hãy chạy:
networksetup -getdnsservers Wi-Fi
Nếu máy Mac sử dụng kết nối Ethernet hoặc dịch vụ có tên khác, bạn cần thay Wi-Fi bằng tên dịch vụ tương ứng. Để liệt kê các dịch vụ mạng có sẵn, sử dụng:
networksetup -listallnetworkservices
Nếu kết quả cho biết chưa có máy chủ DNS được cấu hình thủ công, điều đó không nhất thiết có nghĩa là máy tính không sử dụng DNS. Hệ thống có thể nhận DNS tự động từ DHCP hoặc áp dụng cấu hình thông qua VPN hay hồ sơ quản lý mạng.
Cách 3: Kiểm tra khả năng phân giải tên miền bằng nslookup
Tương tự Windows, macOS có thể sử dụng nslookup để kiểm tra một tên miền. Mở Terminal rồi nhập:
nslookup apple.com
Nếu nhận được phản hồi chứa địa chỉ IP, quá trình phân giải tên miền đã hoạt động đối với truy vấn đó. Để kiểm tra bằng một máy chủ DNS cụ thể, bạn có thể dùng:
nslookup apple.com 1.1.1.1
So sánh kết quả giữa máy chủ DNS mặc định và máy chủ được chỉ định giúp xác định liệu sự cố có thể liên quan đến cấu hình DNS hiện tại hay không. Kết quả khác nhau giữa các máy chủ không nhất thiết là lỗi vì bản ghi DNS có thể thay đổi theo vị trí, thời gian hoặc cơ chế phân phối nội dung.
Cách 4: Xem DNS trong System Settings
Để kiểm tra DNS bằng giao diện đồ họa, bạn thực hiện theo các bước sau:
- Mở menu Apple và chọn System Settings.
- Chọn Network.
- Chọn kết nối Wi-Fi hoặc Ethernet đang sử dụng.
- Mở Details, sau đó tìm mục DNS nếu phiên bản macOS hỗ trợ giao diện này.
- Kiểm tra danh sách máy chủ DNS được cấu hình.
Nếu bạn sử dụng VPN, phần mềm bảo mật hoặc mạng doanh nghiệp, cấu hình DNS có thể được điều chỉnh tự động. Trong trường hợp đó, hãy kiểm tra thêm cấu hình của ứng dụng liên quan trước khi thay đổi DNS thủ công.
4. Cách xử lý khi kiểm tra DNS phát hiện lỗi
Sau khi kiểm tra DNS trên Windows hoặc macOS, bạn có thể áp dụng một số biện pháp dưới đây để xác định và khắc phục sự cố.
Xóa bộ nhớ đệm DNS
Bộ nhớ đệm DNS lưu thông tin phân giải tên miền trong một khoảng thời gian nhất định. Nếu dữ liệu đã cũ hoặc không còn phù hợp, việc xóa cache có thể giúp hệ thống thực hiện truy vấn mới.
Trên Windows, mở Command Prompt với quyền phù hợp và chạy:
ipconfig /flushdns
Trên macOS, nhiều phiên bản hiện đại hỗ trợ lệnh sau trong Terminal:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
macOS có thể yêu cầu mật khẩu quản trị viên. Lệnh này không hiển thị ký tự khi bạn nhập mật khẩu là hành vi bình thường. Cơ chế cache DNS có thể khác nhau tùy phiên bản hệ điều hành và ứng dụng.
Khởi động lại thiết bị mạng
Hãy thử khởi động lại bộ định tuyến và modem theo hướng dẫn của nhà cung cấp Internet. Sau khi thiết bị kết nối trở lại, kiểm tra DNS một lần nữa. Nếu nhiều thiết bị trong cùng mạng đều gặp lỗi phân giải tên miền, nguyên nhân có thể nằm ở bộ định tuyến, cấu hình DNS chung hoặc hệ thống của nhà cung cấp.
Thử máy chủ DNS khác
Bạn có thể cân nhắc sử dụng Google Public DNS với địa chỉ IPv4 8.8.8.8 và 8.8.4.4 hoặc Cloudflare DNS với địa chỉ IPv4 1.1.1.1 và 1.0.0.1. Trước khi thay đổi, hãy ghi lại cấu hình ban đầu để có thể khôi phục khi cần. Với mạng công ty, trường học hoặc hệ thống có tên miền nội bộ, không nên tự ý thay DNS vì việc này có thể khiến các dịch vụ nội bộ không hoạt động.
Kiểm tra VPN, proxy và tường lửa
Một số ứng dụng VPN, phần mềm bảo mật và cấu hình proxy có thể thay đổi đường đi của truy vấn DNS hoặc giới hạn truy cập đến máy chủ DNS bên ngoài. Nếu sự cố bắt đầu sau khi cài đặt ứng dụng mới, hãy kiểm tra cài đặt liên quan và tuân thủ chính sách bảo mật của mạng đang sử dụng.
5. Phân biệt lỗi DNS với lỗi kết nối Internet
Để chẩn đoán chính xác, bạn nên kết hợp kiểm tra DNS với các phép thử mạng khác. Nếu nslookup trả về địa chỉ IP nhưng trình duyệt vẫn không mở được website, nguyên nhân có thể nằm ở kết nối đến máy chủ web, chứng chỉ bảo mật, tường lửa hoặc cấu hình trình duyệt.
Ngược lại, nếu nhiều tên miền đều không phân giải được nhưng thiết bị vẫn kết nối Wi-Fi, hãy kiểm tra cấu hình DNS và khả năng liên lạc với máy chủ DNS. Bạn có thể sử dụng lệnh ping để kiểm tra kết nối đến một địa chỉ IP, nhưng cần nhớ rằng nhiều máy chủ chặn ICMP nên ping thất bại không đồng nghĩa với việc máy chủ không hoạt động.
Đặc biệt, việc phân giải thành công một tên miền không đảm bảo toàn bộ hệ thống DNS đang hoạt động hoàn hảo. Một số tên miền có thể dùng máy chủ DNS khác, bản ghi riêng hoặc cơ chế phân giải đặc biệt.
6. Những lưu ý khi kiểm tra và thay đổi DNS
- Kiểm tra đúng giao diện mạng đang sử dụng, nhất là khi máy tính có cả Wi-Fi, Ethernet và VPN.
- Không chia sẻ thông tin cấu hình mạng nội bộ nhạy cảm lên các diễn đàn công khai nếu không cần thiết.
- Không tùy tiện thay đổi DNS trên mạng doanh nghiệp hoặc mạng có yêu cầu phân giải tên miền nội bộ.
- Thử nghiệm nhiều tên miền đáng tin cậy để tránh kết luận dựa trên một truy vấn duy nhất.
- Ghi lại cấu hình ban đầu trước khi sửa đổi để có thể khôi phục nếu phát sinh lỗi.
Kết luận
Cách kiểm tra DNS trên Windows và macOS không phức tạp nếu bạn biết sử dụng đúng công cụ. Trên Windows, lệnh ipconfig /all giúp xem máy chủ DNS đang được cấu hình, trong khi nslookup hỗ trợ kiểm tra khả năng phân giải tên miền. Trên macOS, bạn có thể dùng scutil --dns, networksetup hoặc nslookup để thu thập thông tin tương tự.
Khi gặp sự cố, hãy kiểm tra DNS mặc định, so sánh với một máy chủ DNS đáng tin cậy, xóa bộ nhớ đệm và xác minh kết nối Internet trước khi thay đổi cấu hình. Thực hiện lần lượt từng bước sẽ giúp bạn xác định nguyên nhân nhanh hơn, hạn chế những thay đổi không cần thiết và duy trì kết nối mạng ổn định.
Truy cập kiemtranhanh.com để tìm hiểu thêm các hướng dẫn kiểm tra tốc độ Internet, chẩn đoán lỗi mạng và tối ưu kết nối trên máy tính.