DNS-AID: tìm AI agent của một tổ chức qua DNS
DNS-AID dùng bản ghi SVCB tại _index._agents để công bố AI agent của tổ chức. Cách hoạt động, ai cần nó, và kết quả kiểm tra 10 tên miền.
Tác giả: — CTO, ERPFit

Câu trả lời ngắn: DNS-AID (DNS for AI Discovery) cho một tổ chức vận hành AI agent — một máy chủ MCP, một endpoint A2A — công bố các agent đó trong DNS. Điểm vào là bản ghi SVCB tại _index._agents.<tên miền>, trỏ tới máy chủ giữ danh sách agent của tổ chức. Đây mới là bản nháp cá nhân của IETF. Ngày 26/10/2026, chưa tên miền nào trong 10 tên miền chúng tôi kiểm tra có bản ghi này. Website không có agent thì không có gì để công bố.

DNS-AID là gì và vì sao dùng DNS
Bản nháp là draft-mozleywilliams-dnsop-dnsaid-02 (27/5/2026, hết hạn 28/11/2026). Phần Authors' Addresses (địa chỉ tác giả) liệt kê năm người: Jim Mozley và Nic Williams (Infoblox), Roland Schott (Deutsche Telekom), Jeffrey Damick (Amazon) và Behcet Sarikaya (không thuộc tổ chức nào). Nhóm công tác dnsop chưa chấp nhận (adopt) bản nháp này.
Có hai tệp khám phá khác mà CiteStat kiểm tra, và cả hai đều cần một yêu cầu HTTP trước: MCP Server Card nằm tại /.well-known/ai-catalog.json, llms.txt nằm ở gốc website. DNS-AID đặt con trỏ một bước sớm hơn, trong DNS, nơi client vẫn phải hỏi trước khi kết nối. Bản ghi SVCB (RFC 9460) vốn được thiết kế cho việc khám phá dịch vụ: nó mang tên máy chủ đích, cổng và giao thức (alpn). Khi vùng DNS được ký bằng DNSSEC và client kiểm tra chữ ký, client phát hiện được con trỏ bị giả mạo.
Bản ghi DNS-AID trông như thế nào
; chỉ mục của tổ chức (điểm vào cố định)
_index._agents.example.com. 3600 IN SVCB 1 agent-index.example.com. alpn="h2"
; từng agent, mỗi giao thức một bản ghi
agent-name.example.com. 3600 IN SVCB 1 . alpn="mcp,h2,h3"
agent-name.example.com. 3600 IN SVCB 1 . alpn="a2a,h2"
Năm quy tắc trong bản nháp:
- TargetName của chỉ mục phải là một tên máy chủ thật, không phải
., và không chứa dấu gạch dưới. Mục 3.2 của bản nháp: "The TargetName MUST be used and MUST not contain underscores as used in DNS-SD labels, as public x.509 certificates will be used in communications with the index." (TargetName bắt buộc phải có và không được chứa dấu gạch dưới như nhãn DNS-SD, vì việc giao tiếp với chỉ mục dùng chứng chỉ X.509 công khai.) - Mỗi giao thức agent nằm trong một bản ghi riêng. Gộp
alpn="mcp,a2a,h2"vào một bản ghi là điều bản nháp cấm (MUST NOT). - Nội dung của chỉ mục nằm ngoài phạm vi bản nháp: DNS-AID chỉ trỏ đường, còn định dạng danh sách agent do giao thức khác quy định.
- Bản ghi nên được ký DNSSEC (SHOULD). Nếu dùng bản ghi TLSA (DANE) để xác thực chứng chỉ, TLSA phải được ký (MUST).
- TXT chỉ là phương án dự phòng; bản nháp ghi là "not considered desirable" (không được xem là cách nên dùng).
Bản nháp còn đề xuất các khóa SvcParam mới, chưa được đăng ký với IANA, nên resolver có thể hiển thị chúng dạng keyNNNNN.
Client tìm agent qua DNS-AID theo hai đường
Nếu đã biết tên agent, client hỏi thẳng SVCB của agent-name.<tên miền>; bản nháp ghi rằng client "MUST try first" (bắt buộc thử trước) đường này. Nếu chưa biết, client hỏi _index._agents, kiểm tra chứng chỉ của máy chủ đích, tải danh sách agent (ví dụ qua HTTPS), chọn agent phù hợp, rồi hỏi SVCB của agent đó và kết nối.
Chúng tôi kiểm tra DNS-AID trên 10 tên miền
Ngày 26/10/2026, chúng tôi chạy bộ kiểm tra của bản quét CiteStat (packages/core/dns-aid.ts) qua DNS-over-HTTPS. Bộ kiểm tra hỏi SVCB, rồi TXT, tại _index._agents của tên miền chính (bỏ www.); nó không dò tên miền con.
| Tên miền | Bản ghi tại _index._agents | Kết quả |
|---|---|---|
| infoblox.com | Không có SVCB, không có TXT | Không áp dụng |
| telekom.com | Không có SVCB, không có TXT | Không áp dụng |
| telekom.de | Không có SVCB, không có TXT | Không áp dụng |
| amazon.com | Không có SVCB, không có TXT | Không áp dụng |
| google.com | Không có SVCB, không có TXT | Không áp dụng |
| github.com | Không có SVCB, không có TXT | Không áp dụng |
| cloudflare.com | Không có SVCB, không có TXT | Không áp dụng |
| vercel.com | Không có SVCB, không có TXT | Không áp dụng |
| citestat.com | Không có SVCB, không có TXT | Không áp dụng |
| erpfit.com | Không có SVCB, không có TXT | Không áp dụng |
Bốn tên miền đầu là tên miền chính của ba công ty trong danh sách tác giả. Bạn có thể tự kiểm tra một tên miền:
dig +short _index._agents.example.com SVCB
curl -s "https://dns.google/resolve?name=_index._agents.example.com&type=SVCB"
dig không trả về gì nghĩa là tên miền không công bố chỉ mục. Với DNS-over-HTTPS, kết quả tương ứng là "Status":3 (NXDOMAIN), hoặc "Status":0 mà không có Answer. Kết quả 0/10 là điều có thể đoán trước với một bản nháp cá nhân ở phiên bản 02. Vì bản nháp chưa phải là tiêu chuẩn, một công cụ đánh trượt website vì "thiếu DNS-AID" đang báo lỗi theo một điều mà chưa tiêu chuẩn nào yêu cầu.
Bản quét CiteStat đọc DNS-AID thế nào — và từng đọc sai ra sao
Bộ kiểm tra cũ của chúng tôi tìm bản ghi TXT tại _ai-discovery.<tên miền>. Không bản nháp nào định nghĩa tên đó. Mọi tên miền không có bản ghi TXT ấy đều bị báo lỗi mức thấp trong thẻ Agent Readiness, kể cả 10 tên miền trên; lỗi DNS thì bị nuốt trong một catch rỗng. Từ ngày 26/10/2026 bản quét đọc bản ghi SVCB của bản nháp. Tên miền không có bản ghi được ghi "Không áp dụng" và không nằm trong mẫu số, giống cách chúng tôi xử lý Web Bot Auth.
Điểm Agent Readiness của citestat.com tăng từ 8,6/10 (sau lần sửa bộ kiểm tra WebMCP ngày 25/10) lên 10/10: đạt 6/6 mục áp dụng, 3 mục không áp dụng. Lỗi duy nhất còn lại trước đó là bản ghi TXT không có trong bản nháp nào.
CiteStat có một máy chủ MCP từ xa thật (/api/mcp), được công bố qua MCP Server Card trong /.well-known/ai-catalog.json. Chúng tôi chưa công bố bản ghi DNS-AID cho nó: bản nháp có thể còn đổi tên khóa và quy tắc trước khi một nhóm công tác chấp nhận nó.
Cách bản quét đọc DNS-AID hiện nay, trong thẻ Agent Readiness:
- Bản ghi có TargetName dùng được: đạt, kèm máy chủ đích, cổng, alpn và trạng thái DNSSEC.
- TargetName là
.hoặc chứa dấu gạch dưới: trung bình. - Chỉ có TXT: thấp.
- Không có bản ghi: không áp dụng. DNS không trả lời: "Không kiểm tra được". Cả hai nằm ngoài mẫu số.
DNS-AID không làm đổi điểm SEO tổng. Tài khoản miễn phí có 10 credit mỗi ngày, mỗi lần quét SEO tốn 1 credit — xem bảng giá.
Khi nào nên công bố bản ghi DNS-AID
- Không vận hành agent thì không làm gì cả. Đừng tạo bản ghi chỉ để qua một công cụ kiểm tra.
- Có máy chủ MCP? Làm MCP Server Card trước. Đề xuất của nó, SEP-2127, được hợp nhất ngày 6/10/2026 và có trạng thái Final trong danh mục SEP của MCP; DNS-AID mới là bản nháp cá nhân.
- Nếu muốn thử DNS-AID: dùng SVCB, không dùng TXT; đặt TargetName là một tên máy chủ thật có chứng chỉ TLS công khai; mỗi giao thức một bản ghi; ký vùng DNS bằng DNSSEC.
- Theo dõi bản nháp. Phiên bản 02 hết hạn ngày 28/11/2026; tên khóa và quy tắc có thể đổi ở phiên bản sau.
Câu hỏi thường gặp
Website của tôi có cần bản ghi DNS-AID không?
Không, nếu tổ chức của bạn không vận hành AI agent. DNS-AID công bố agent (một máy chủ MCP, một endpoint A2A), không công bố trang web. Vì vậy bản quét CiteStat ghi "Không áp dụng" cho tên miền không có bản ghi và không trừ điểm.
Bản ghi TXT _ai-discovery có phải là DNS-AID không?
Không. Không bản nháp nào định nghĩa tên _ai-discovery. DNS-AID dùng bản ghi SVCB tại _index._agents.<tên miền>. Bản nháp chỉ nhắc TXT như phương án dự phòng và ghi là "not considered desirable" (không được xem là cách nên dùng).
DNS-AID khác gì MCP Server Card?
Server Card mô tả một máy chủ: tên, cách kết nối và những gì nó cung cấp. DNS-AID chỉ cho biết agent của tổ chức nằm ở đâu, phần mô tả để cho chỉ mục. Server Card là tệp JSON tìm qua /.well-known/ai-catalog.json, theo một đề xuất MCP đã được hợp nhất (SEP-2127); DNS-AID là bản nháp cá nhân của IETF. Nếu bạn chạy một máy chủ MCP, hãy làm Server Card trước.
Làm sao tự kiểm tra bản ghi DNS-AID của tên miền?
Chạy dig +dnssec _index._agents.<tên miền> SVCB. Phần ANSWER trống nghĩa là tên miền không công bố chỉ mục; nếu có bản ghi, cờ ad trong phần đầu nghĩa là resolver của bạn đã xác thực chữ ký DNSSEC. Không có dig thì hỏi DNS-over-HTTPS, ví dụ dns.google/resolve với type=SVCB: Status 3 (NXDOMAIN), hoặc Status 0 mà không có Answer, là không có bản ghi; "AD":true là đã xác thực.
Nguồn: draft-mozleywilliams-dnsop-dnsaid-02 (IETF, bản nháp cá nhân, 27/5/2026) · RFC 9460: SVCB và HTTPS · RFC 9364: DNSSEC. Dữ liệu 10 tên miền: tra ngày 26/10/2026.