Kiểm tra sức khỏe DNS
Kiểm tra DNS tên miền, hay xác thực tên miền cho DNS: ủy quyền tại cơ quan quản lý, từng nameserver được hỏi trực tiếp, SOA, DNSSEC và bản ghi email. 40 mục kiểm tra, mỗi mục kèm cách sửa.
Đi từ một máy chủ gốc đến cơ quan quản lý .nl, rồi hỏi trực tiếp từng nameserver của sidn.nl · 40 mục kiểm tra · khoảng 3 giâycơ quan quản lý .nl → từng nameserver · 40 mục kiểm tra
sidn.nl đạt mọi mục kiểm tra đã chạy, kể cả DNSSEC
đăng ký tại SIDN·2,9 giây
A+: không có gì trên mức thông tin. Mọi nameserver trả lời có thẩm quyền và thống nhất với nhau, các thông số thời gian nằm trong khoảng của Zonemaster, và Google Public DNS xác thực được chuỗi DNSSEC từ gốc.
Hỏi qua TCP từ máy chủ của chúng tôi tại edge của Cloudflare: máy chủ gốc, cơ quan quản lý .nl và trực tiếp từng nameserver; Google Public DNS và Cloudflare cho bản ghi email và việc xác thực. Chúng tôi không lưu nhật ký những gì bạn kiểm tra.
Kiểm tra DNS tên miền gồm những gì?
Bài kiểm tra sức khỏe DNS đi theo tên miền đúng như cách bộ phân giải tìm ra nó và kiểm tra từng bước: ủy quyền tại cơ quan quản lý, từng nameserver được hỏi trực tiếp, các máy chủ đó có thống nhất với nhau không, bản ghi SOA, DNSSEC và bản ghi email. Công cụ này chạy 40 mục kiểm tra trong bảy nhóm và chấm từng mục ở mức độ mà nguồn tham chiếu của nó quy định.
Hầu hết công cụ kiểm tra hỏi một bộ phân giải rồi chấm những gì nhận về. Cách đó che khuất các máy chủ phía sau: bộ phân giải trả lời từ bất kỳ nameserver nào còn chạy, nên một máy hỏng vẫn vô hình cho đến khi các máy khác cũng hỏng. Ở đây, mọi nameserver được hỏi qua TCP với đệ quy tắt, bản sao bản ghi NS tại cơ quan quản lý được đối chiếu với bản của chính vùng, và chuỗi DNSSEC được xác minh từ DS tại cơ quan quản lý đến các chữ ký trong vùng.
Hãy dùng nó như một lần kiểm toán DNS sau mỗi thay đổi: công cụ kiểm tra các bản ghi DNS mà tên miền phụ thuộc vào, không chỉ xem website có tải được không (việc đó thì Kiểm tra website sập xem xét chính website). Sao chép báo cáo biến kết quả thành một báo cáo DNS dạng văn bản thuần để bạn dán vào ticket.

ĐiểmChỉ dựa trên mức độ: không có vấn đề nghiêm trọng, không có lỗi, hai cảnh báo cho điểm A. Vòng tròn thể hiện điểm số, 90 trên 100.40 mục kiểm tra, mỗi mục một ôĐược nhóm theo thứ tự trên trang. Ô màu hổ phách và xanh lam là cảnh báo và lưu ý; ô gạch chéo là mục không chạy được.Vấn đề trước tiênCác nhóm có điều cần sửa được mở ở trên cùng, mỗi dòng kèm nguồn tham chiếu và cách sửa.Đường điMột máy chủ gốc, cơ quan quản lý .com do Verisign vận hành, rồi từng nameserver được hỏi trực tiếp: câu trả lời, serial và EDNS của nó.Chuỗi tin cậyDải DNSSEC bên cạnh đường đi: xanh lá nơi chuỗi còn nguyên, nét đứt nơi chuỗi dừng, đỏ nơi chuỗi bị đứt.Điểm được tính như thế nào?
Chữ cái chỉ đến từ mức độ của những gì không đạt, không bao giờ từ bảng cộng điểm: bất kỳ vấn đề nghiêm trọng nào là F, từ hai lỗi trở lên là D, một lỗi hoặc từ năm cảnh báo trở lên là C, ba hoặc bốn cảnh báo là B, một hoặc hai cảnh báo (hoặc chỉ có lưu ý) là A, và không có gì trên mức thông tin là A+.
Các mức độ là của chính nguồn tham chiếu được trích dẫn: hồ sơ mặc định của Zonemaster khi Zonemaster định nghĩa bài kiểm tra đó, MUST hoặc SHOULD của RFC khi không có. Con số trên thang 100 chỉ dùng để xếp hạng các tên miền trong cùng một chữ cái (100 − 30 mỗi vấn đề nghiêm trọng, 12 mỗi lỗi, 4 mỗi cảnh báo, 1 mỗi lưu ý). Các mục máy chủ của chúng tôi không chạy được không bao giờ bị tính cho tên miền; khi từ một phần tư số mục trở lên không chạy được, điểm sẽ ghi một phần.
- A+100không có gì trên mức thông tinINFO “chắc chắn không cho thấy vấn đề nào”sidn.nl100
- A90–991–2 cảnh báo, hoặc chỉ có lưu ýNOTICE “quản trị viên vùng nên biết, nhưng không nhất thiết là vấn đề”github.com90example.com95bücher.de90
- B75–893–4 cảnh báoWARNING “trong một số trường hợp sẽ là vấn đề, nhưng người dùng thông thường khó nhận ra”cloudflare.com87google.com83
- C60–741 lỗi, hoặc từ 5 cảnh báo trở lênERROR “rất có thể (hoặc gần như chắc chắn) ảnh hưởng xấu đến hoạt động của vùng”không có trong mẫu
- D45–59từ 2 lỗi trở lêndnssec-failed.org55
- F0–44bất kỳ vấn đề nghiêm trọng nàoCRITICAL “có thể coi một cách hợp lý là không tồn tại”một tên miền .com44
điểm số = 100 − 30 × nghiêm trọng − 12 × lỗi − 4 × cảnh báo − 1 × lưu ý, giữ trong khoảng của chữ cái
một phầntừ một phần tư số mục kiểm tra trở lên không chạy được từ máy chủ của chúng tôi, nên điểm ghi rõ điều đó
Bản ghi NS ở vùng cha và vùng con có khớp nhau không?
Chúng nên khớp: cơ quan quản lý (vùng cha) và vùng DNS (vùng con) đều công bố một bộ NS, và RFC 1912 §2.8 yêu cầu giữ chúng giống nhau. Khi cơ quan quản lý trỏ tới một máy chủ không trả lời cho vùng, đó là ủy quyền lame: máy chủ trả lời REFUSED, hoặc trả lời mà không có cờ có thẩm quyền (AA).
Bộ phân giải chuyển sang máy chủ tiếp theo, nên một máy chủ lame làm mất thời gian; khi mọi máy chủ được liệt kê đều lame, tên miền ngừng phân giải. Zonemaster xếp các tên chỉ cơ quan quản lý liệt kê là lỗi (EXTRA_NAME_PARENT), các tên chỉ vùng DNS liệt kê là lưu ý, và việc không có máy chủ nào hoạt động là nghiêm trọng.
github.comkhớp
- ns-520.awsdns-01.net
- ns-421.awsdns-52.com
- ns-1707.awsdns-21.co.uk
- ns-1283.awsdns-32.org
- dns1–4.p08.nsone.net
- cùng 8 tên
8 trên 8 trả lời có AA
một tên miền .netlệch
- ns1.domaindirect.com
- ns2.domaindirect.comREFUSED
- ns3.domaindirect.com
- ns1.hover.com
- ns2.hover.com
không có tên chung · ns2.domaindirect.com REFUSED · 2 lỗi
một tên miền .comủy quyền lame
- ns63.domaincontrol.comREFUSED
- ns64.domaincontrol.comREFUSED
- không ai trả lờiSERVFAIL
mọi máy chủ đều REFUSED · bộ phân giải trả lời SERVFAIL · CRITICAL
Một tên miền cần bao nhiêu nameserver?
Ít nhất hai, và khuyến nghị là ba. RFC 1034 §4.1 yêu cầu mọi vùng phải có mặt trên ít nhất hai máy chủ, và RFC 2182 §5 khuyến nghị ba cho hầu hết các vùng cấp tổ chức. Một nameserver là lỗi trong Zonemaster; hai thì đạt kèm một ghi chú thông tin.
Vị trí của chúng quan trọng hơn số lượng, nên bài kiểm tra nameserver cũng xem xét mạng của chúng. Các máy chủ trong một mạng hỏng cùng nhau: Zonemaster cảnh báo khi mọi địa chỉ nằm trong một hệ thống tự trị (IPV4_ONE_ASN), kể cả với các máy chủ anycast như Google, Cloudflare hay Akamai, nơi mỗi địa chỉ trả lời từ nhiều địa điểm. Anycast phân tán tải; nó vẫn chỉ là một nhà vận hành.
- google.com4 NS · 1 mạngmột mạng
- github.com8 NS · 2 mạngphân tán
- sidn.nl3 NS · 2 mạngphân tán
- cloudflare.com5 NS · 1 mạngmột mạng
- nasa.gov6 NS · 1 mạngmột mạng
- example.com2 NS · 1 mạngmột mạng
AS1921 ipcomAS13335 CloudflareAS15169 GoogleAS16509 AmazonAS21342 AkamaiAS48283 SIDNAS62597 NS1
“Khuyến nghị cung cấp ba máy chủ cho hầu hết các vùng cấp tổ chức, với ít nhất một máy phải đặt ở xa hẳn các máy còn lại.” RFC 2182 §5
Giá trị bản ghi SOA của bạn có đúng không?
Nếu một nhà cung cấp DNS lớn đặt chúng, gần như chắc chắn chúng ổn, kể cả khi một công cụ kiểm tra gắn cờ. Refresh, retry và expire chỉ điều khiển các máy chủ phụ sao chép vùng bằng chuyển vùng. Minimum là TTL lưu đệm phủ định (RFC 2308): khoảng thời gian bộ phân giải nhớ rằng một tên không tồn tại.
RIPE-203 (1999) khuyến nghị refresh 86400, retry 7200, expire 3600000 và minimum 172800, giá trị cuối có từ trước RFC 2308. Zonemaster đặt các ngưỡng tối thiểu thấp hơn: refresh 14400 và retry 3600 (lưu ý), expire 604800 (cảnh báo duy nhất), minimum trong khoảng 300 đến 86400 (lưu ý). Giá trị mặc định của Cloudflare, Route 53 và Azure nằm dưới ngưỡng refresh và retry; expire 3 ngày của Google Cloud DNS là cảnh báo duy nhất trong số các nhà cung cấp lớn.
| refreshZonemaster ≥ 4 giờ · ◆ 1 ngày | retryZonemaster ≥ 1 giờ · ◆ 2 giờ | expireZonemaster ≥ 7 ngày · ◆ 41,7 ngày | minimumZonemaster 5 phút – 1 ngày · ◆ 2 ngày | ||
|---|---|---|---|---|---|
| Cloudflare | 2,8 giờ | 40 phút | 7 ngày | 30 phút | 2 lưu ý |
| Amazon Route 53 | 2 giờ | 15 phút | 14 ngày | 1 ngày | 2 lưu ý |
| Google Cloud DNS | 6 giờ | 1 giờ | 3 ngày | 5 phút | 1 cảnh báo |
| Azure DNS | 1 giờ | 5 phút | 28 ngày | 5 phút | 2 lưu ý |
| GoDaddy | 8 giờ | 2 giờ | 7 ngày | 1 giờ | đạt |
| Namecheap BasicDNS | 12 giờ | 1 giờ | 7 ngày | 1 giờ | đạt |
| google.com (tự vận hành) | 15 phút | 15 phút | 30 phút | 1 phút | 1 cảnh báo · 3 lưu ý |
dưới ngưỡng của Zonemasterđạtlưu ýcảnh báoRIPE-203 (1999)
Kiểm tra DNSSEC: DS, DNSKEY và chữ ký
Kiểm tra DNSSEC đi theo chuỗi tin cậy: bản ghi DS tại cơ quan quản lý phải là digest của một khóa (DNSKEY) trong vùng, khóa đó phải ký bộ khóa của vùng, và mọi chữ ký (RRSIG) phải xác minh được và còn trong thời hạn hiệu lực. Công cụ này tự tính digest và tự xác minh từng chữ ký, rồi hỏi Google Public DNS xem vùng có xác thực được không.
Chỉ cần đứt một mắt xích, các bộ phân giải có xác thực sẽ trả lời SERVFAIL: tên miền biến mất với mọi người dùng phía sau chúng. dnssec-failed.org, một vùng thử nghiệm cố ý để hỏng, cho thấy hai chỗ đứt cùng lúc. Thuật toán được đánh giá theo sổ đăng ký của IANA (RFC 9904): 8, 13 và 15 được khuyến nghị, còn 5 và 7, vốn ký bằng SHA-1, không được dùng nữa (RFC 9905) và bị Zonemaster xếp là lỗi.
cloudflare.coman toàn
- DS 2371 tại .comthuật toán 13 · SHA-256 · 329968…26F2B9
- digest khớp với khóa 2371
- DNSKEY 2371 · KSKcờ 257 · ECDSA P-256 (13)
- ký bộ khóa · còn 50,8 ngày trên tổng 61 ngày
- DNSKEY 34505 · ZSKcờ 256 · ECDSA P-256 (13)
- ký các bản ghi · SOA: còn 1 ngày trên tổng 2 ngày
- Google Public DNSđã bật cờ AD: an toàn
dnssec-failed.orgkhông hợp lệ
- DS 42069 tại .orgthuật toán 13 · SHA-256
- không có khóa 42069 trong vùng
- DNSKEY 50719 · KSKkhóa ký khóa (KSK) thật của vùng
- chữ ký của nó trên bộ khóa đã hết hạn cách đây 112 ngày
- DNSKEY 32784 · ZSKký SOA: hợp lệ, còn 5,7 ngày trên tổng 7 ngày
- không có gì đáng tin cậy dẫn tới nó
- Google Public DNSSERVFAIL; có câu trả lời khi bật CD: không hợp lệ
Thuật toán ký (sổ đăng ký IANA, RFC 9904)
- RECOMMENDED8 RSASHA256 · 13 ECDSAP256SHA256 · 15 ED25519nên dùng
- MAY14 ECDSAP384SHA384 · 16 ED448được phép
- NOT RECOMMENDED10 RSASHA512Zonemaster WARNING
- MUST NOT5 RSASHA1 · 7 RSASHA1-NSEC3-SHA1 · 1 · 3 · 6 · 12RFC 9905 · Zonemaster ERROR
cả hai chuỗi ở trên đều ký bằng 13
DNS email: MX, SPF và DMARC
Các mục kiểm tra email đọc đúng những gì máy chủ nhận thư đọc: bản ghi MX (hoặc null MX cho biết tên miền không nhận thư, RFC 7505), một bản ghi SPF trong giới hạn 10 lượt tra cứu DNS của RFC 7208, và một chính sách DMARC (RFC 9989, thay thế RFC 7489 từ tháng 5 năm 2026).
SPF được đánh giá, không chỉ được tìm thấy: mọi include đều được lần theo và đếm. Bản ghi của github.com cần đúng 10 lượt tra cứu cộng một lượt tra cứu rỗng: hợp lệ, nhưng không còn chỗ trống. Một tên miền không bao giờ gửi thư nên nói rõ điều đó: example.com công bố bộ bản ghi cho tên miền để trống (parked), gồm null MX, v=spf1 -all và p=reject. Để xem chi tiết, Kiểm tra SPF và Kiểm tra DMARC đi sâu hơn.
github.comgửi và nhận thư
example.combộ bản ghi tên miền để trống
Kiểm tra DNS bằng dòng lệnh (dig)
Bốn bước với dig và delv lặp lại phần cốt lõi của bài kiểm tra này: lần theo ủy quyền từ gốc, hỏi trực tiếp một nameserver với đệ quy tắt, đối chiếu DS tại cơ quan quản lý với các khóa của vùng, và để một bộ phân giải có xác thực đánh giá chuỗi.
Thêm +tcp để thấy những gì máy chủ của chúng tôi thấy; bỏ nó đi để kiểm tra UDP, điều mà một công cụ web trên mạng của Cloudflare không làm được. Trong phần header của câu trả lời, aa đánh dấu câu trả lời có thẩm quyền; REFUSED, hoặc không có cờ aa từ một máy chủ mà cơ quan quản lý liệt kê, là ủy quyền lame.
Terminal · dig 9.20
$ dig +trace +tcp github.com NS ;; (đã rút gọn) com. 172800 IN NS a.gtld-servers.net. ;; từ h.root-servers.net 1 github.com. 172800 IN NS ns-520.awsdns-01.net. ;; từ h.gtld-servers.net: 8 NS 2 $ dig @ns-421.awsdns-52.com github.com SOA +norec +tcp ;; flags: qr aa; QUERY: 1, ANSWER: 1 3 github.com. 900 IN SOA ns-1707.awsdns-21.co.uk. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400 4 $ dig @a.gtld-servers.net github.com DS +norec ;; status: NOERROR, ANSWER: 0 ;; không có DS: chưa ký 5 $ delv @8.8.8.8 cloudflare.com SOA ; fully validated 6 cloudflare.com. 300 IN SOA ns3.cloudflare.com. dns.cloudflare.com. 2417999975 10000 2400 604800 300
- Máy chủ gốc chỉ .com tới 13 máy chủ của nó
- Bộ NS của cơ quan quản lý cho github.com, giữ 2 ngày
- aa: một câu trả lời có thẩm quyền, không phải bộ nhớ đệm
- SOA: serial 1, rồi refresh, retry, expire, minimum
- Không có DS tại .com: không có gì để DNSSEC xác minh
- delv đã xác thực chuỗi từ gốc
Vì sao các công cụ kiểm tra DNS cho kết quả khác nhau?
Vì chúng chấm theo những con số khác nhau. Các công cụ kiểu cũ gắn cờ giá trị mặc định của nhà cung cấp: intoDNS gọi expire 1800 giây của google.com là “NOT OK” và báo lỗi với hai serial của github.com, vốn bình thường khi dùng hai nhà cung cấp DNS. Zonemaster xếp hai serial đó là cảnh báo và nhận ra null MX; phiên bản đầu tiên của chính chúng tôi đã sai ở cả hai.
Và chúng nhìn mạng từ những vị trí khác nhau. Zonemaster (AFNIC và Swedish Internet Foundation) hỏi qua UDP và TCP, trên IPv4 và IPv6. Bài kiểm tra này chạy trên edge của Cloudflare: nó chỉ hỏi qua TCP, không dùng IPv6 và không kết nối được tới các địa chỉ của chính Cloudflare, nên những máy chủ đó được đọc qua 1.1.1.1 và các mục kiểm tra của chúng được đánh dấu chưa kiểm tra, không bao giờ là không đạt. Là một lựa chọn thay thế intoDNS, công cụ cho thấy nguồn tham chiếu đứng sau mỗi mức độ thay vì chỉ một chữ OK hay NOT OK.
| Trường hợp | intoDNS | Zonemaster | DNS Robot v1 | Bài kiểm tra này |
|---|---|---|---|---|
| github.comhai serial SOA (hai nhà cung cấp DNS) | lỗi“Looks like your nameservers do not agree on the SOA serial.” | cảnh báoMULTIPLE_ | không đạt“Serial mismatch detected: 1656468023 vs 1.” | cảnh báocó giải thích: mỗi nhà cung cấp DNS một serial |
| google.comexpire SOA 1.800 giây | không ổn“Your SOA EXPIRE number is: 1800. That is NOT OK” | cảnh báoEXPIRE_ | không đạt“too low (min recommended: 14 days)” | cảnh báokèm những gì expire ảnh hưởng |
| example.comnull MX (0 .) | lỗi“0 No A Record (no glue either)” | thông tinZ09_ | đạt“Found 1 MX record(s)” | đạtnhận ra null MX |
| cloudflare.comretry SOA 2.400 giây | —không trích dẫn | lưu ýRETRY_ | không đạt“too high (max recommended: 15min)” | lưu ýgiá trị mặc định của Cloudflare |
| cloudflare.comđã ký DNSSEC | không kiểm trakhông kiểm tra DNSSEC | đạtDNSSEC02 · 05 · 08: chuỗi đã được xác minh | chú ý“DNSSEC does not appear to be enabled for this domain.” | đạtDS → KSK → RRSIG đã xác minh, Google xác thực |
Kiểm tra sức khỏe DNS: câu hỏi thường gặp
Kiểm tra sức khỏe DNS là gì?
Xác thực tên miền có giống kiểm tra sức khỏe DNS không?
Ủy quyền lame là gì và sửa thế nào?
Nhà cung cấp DNS của tôi dùng anycast. Sao vẫn bị cảnh báo một mạng?
Thông số thời gian SOA của tôi bị gắn cờ. Có cần đổi không?
Vì sao một số mục được đánh dấu “chưa kiểm tra”?
Vì sao các nameserver của tôi báo serial SOA khác nhau?
Đây có phải công cụ kiểm tra DNSSEC không, và không có DNSSEC có bị trừ điểm không?
Nên kiểm tra DNS tên miền bao lâu một lần?
Các bạn có lưu những tên miền tôi kiểm tra không?
Công cụ liên quan
Tra Cứu NS
Khám phá nameserver cho bất kỳ tên miền nào với phát hiện nhà cung cấp
Tra Cứu DNS
Mọi bản ghi DNS từ máy chủ của chính tên miền, cạnh bộ nhớ đệm của Google và Cloudflare
Tra Cứu MX
Tìm bản ghi trao đổi thư và chi tiết máy chủ thư
Tra Cứu WHOIS
Tra cứu đăng ký tên miền, nhà đăng ký và chi tiết chủ sở hữu qua RDAP
Kiểm Tra Bản Ghi SPF
Xác thực bản ghi SPF và kiểm tra số lượng tra cứu DNS theo RFC 7208
Kiểm Tra DMARC
Kiểm tra chính sách DMARC và cài đặt căn chỉnh cho bất kỳ tên miền nào
Tra Cứu DNS Ngược
Tìm hostname liên kết với bất kỳ địa chỉ IP nào qua bản ghi PTR
Kiểm Tra Tên Miền
Kiểm tra tên miền còn trống không và giá thật trong 3 năm


