Chẩn đoán NXDOMAIN mà không đánh đồng mọi lỗi DNS
Phân biệt NXDOMAIN với thiếu loại bản ghi, lỗi máy chủ và timeout. Kiểm tra chính tả, delegation, negative cache và cách sửa an toàn nhất.
Tác giảYiyao
NXDOMAIN là phản hồi lỗi tên DNS
NXDOMAIN nghĩa là phản hồi DNS cho biết tên được truy vấn không tồn tại. Khi có alias, tên bị thiếu có thể là target đạt được qua chuỗi liên kết. Hãy bắt đầu bằng hostname và phản hồi chính xác thay vì giả định toàn bộ domain đã đăng ký biến mất.
Thông báo lỗi của trình duyệt chỉ là triệu chứng ban đầu, chưa phải chẩn đoán đầy đủ. Giữ lại URL, sau đó chỉ trích xuất hostname để tra cứu DNS. Subdomain bị gõ sai, tên chỉ dùng nội bộ hoặc alias đã ngừng hoạt động có thể cần những cách sửa rất khác nhau.
Phân biệt bốn kết quả
| Quan sát | Ý nghĩa cần điều tra | Hành động đầu tiên |
|---|---|---|
| NXDOMAIN | Tên được truy vấn hoặc target alias được báo là không tồn tại | Kiểm tra chính tả chính xác và dữ liệu authoritative |
| NOERROR nhưng không có loại được yêu cầu | Tên có thể tồn tại nhưng thiếu loại đó | Kiểm tra các loại bản ghi cần thiết |
| SERVFAIL | Resolver không thể hoàn tất xử lý | Kiểm tra delegation, khả năng hoạt động và validation |
| Timeout | Không có phản hồi dùng được trong giới hạn thời gian | Kiểm tra khả năng truy cập resolver và đường mạng được phép |
Đừng phân loại mọi câu trả lời trống là NXDOMAIN. Trạng thái và các bản ghi xung quanh rất quan trọng. Phản hồi phủ định có thể bao gồm thông tin SOA dùng cho việc cache; một kết nối truyền tải có vẻ đang hoạt động không làm thay đổi mã phản hồi DNS.

Kiểm tra chính tả và đối tượng sử dụng dự kiến
So sánh hostname lỗi với liên kết thực tế đã công bố. Xóa khoảng trắng và dấu câu vô tình, đồng thời kiểm tra xem có cần www hoặc subdomain khác không. Khi kiểm tra vấn đề tên DNS, đừng thay đổi path của trang; DNS không nhận phần đó của URL.
Nếu tên thuộc môi trường làm việc hoặc phát triển riêng tư, hãy dùng network và resolver được phê duyệt. Công cụ DNS công cộng có thể báo chính xác rằng một dịch vụ nội bộ không có bản ghi công khai. Đừng gửi hostname nội bộ nhạy cảm tới công cụ tra cứu bên ngoài chỉ để có thêm ý kiến.
So sánh bằng chứng recursive và authoritative
nslookup -type=A example.com
Với hostname công khai, ghi lại kết quả từ resolver thông thường của thiết bị bị ảnh hưởng. Sau đó dùng một lần tra cứu độc lập được phép và, nếu có, trace authoritative. So sánh đúng cùng tên và loại; nếu không, hai phép thử đang trả lời các câu hỏi khác nhau.
Arcvenza NSLookup có thể trace delegation công khai từ máy chủ kiểm tra riêng. Nếu phía authoritative có bản ghi dự kiến nhưng một recursive resolver trả NXDOMAIN, hãy ghi lại resolver và thời gian. Nếu phía authoritative cũng báo không tồn tại, hãy điều tra zone và owner name chính xác trước khi xóa cache cục bộ.
Theo dõi alias và các thay đổi gần đây
Dùng CNAME lookup khi tên là alias. Alias hợp lệ với target bị thiếu vẫn có thể lỗi dù bản ghi đầu tiên còn trên control panel. Cùng chủ sở hữu được ủy quyền, xem lại các dịch vụ vừa xóa, subdomain vừa đổi tên và yêu cầu xác minh của nhà cung cấp.
Negative caching nghĩa là phản hồi lỗi tên trước đó có thể còn trong cache trong một thời gian giới hạn. RFC 2308 định nghĩa TTL của phản hồi phủ định bằng thông tin SOA. Tạo bản ghi ngay bây giờ không lập tức vô hiệu hóa phản hồi phủ định cũ của mọi resolver.
Chọn cách sửa nhỏ nhất nhưng hữu ích
Trong một sự cố minh họa, bản ghi authoritative cho notes.example.com được thêm sau khi sửa lỗi gõ sai, nhưng một máy trạm vẫn lỗi. Kiểm tra resolver thực tế và hành vi cache của nó. Chỉ flush cache resolver cục bộ nếu kết quả cũ cục bộ là nguyên nhân hợp lý, sau đó lặp lại cùng requestFlush the local resolver cache ghi authoritative cho notes.example.com được thêm sau khi sửa lỗi gõ sai, nhưng một máy trạm vẫn lỗi. Kiểm tra resolver thực tế và hành vi cache của nó. Chỉ flush cache resolver cục bộ nếu kết quả cũ cục bộ là nguyên nhân hợp lý, sau đó lặp lại cùng request.
Nếu dữ liệu authoritative vẫn sai, sửa bản ghi đó thông qua chủ sở hữu DNS. Nếu chỉ dịch vụ nội bộ lỗi khi ở ngoài mạng, khôi phục đường truy cập được phê duyệt. Nếu nhiều tên không liên quan đều timeout, hãy dùng hướng dẫn resolver không phản hồi. Tránh thay đổi registrar, firewall, nhà cung cấp DNS và cài đặt trình duyệt cùng lúcresolver-not-responding guiden sai, sửa bản ghi đó thông qua chủ sở hữu DNS. Nếu chỉ dịch vụ nội bộ lỗi khi ở ngoài mạng, khôi phục đường truy cập được phê duyệt. Nếu nhiều tên không liên quan đều timeout, hãy dùng hướng dẫn resolver không phản hồi. Tránh thay đổi registrar, firewall, nhà cung cấp DNS và cài đặt trình duyệt cùng lúc.
Xác minh và lưu hồ sơ sự cố
Việc hoàn tất yêu cầu bản ghi đúng cho hostname chính xác và một request ứng dụng hoạt động từ môi trường ban đầu bị ảnh hưởng. Lưu trạng thái trước và sau, resolver, timestamp và thay đổi được phê duyệt. Đừng coi riêng một lần tra cứu công khai thành việc khôi phục cục bộ.
Có nên tiếp tục retry liên tục không? Không. Tôn trọng cache và thực hiện kiểm tra lại có giới hạn sau thay đổi liên quan. Nếu vấn đề còn tồn tại, cung cấp bằng chứng chính xác cho người phụ trách DNS hoặc mạng thay vì thay bằng một homepage không liên quan.
Tài liệu kỹ thuật
RFC 2308: Negative caching · Microsoft: nslookup
RFC 2308: negative caching · Microsoft: nslookup
