DNS-AID:基於DNS的AI代理發現層
DNS-AID利用現有DNS基礎設施實現AI代理的發現、釋出和驗證,無需新網路層,並透過DNSSEC提供信任保障。該協議支援MCP、A2A和HTTPS,可整合到現有DNS區域中。
DNS-AID(DNS-based Agent Identification and Discovery)是一個創新的AI代理發現協議,它巧妙地利用現有的域名系統(DNS)基礎設施,讓AI代理能夠像網站一樣被髮布和發現。這一方案無需建立新的覆蓋網路或集中式登錄檔,而是直接複用團隊已運營的DNS系統,實現了零新增基礎設施的代理互操作性。
該協議的核心在於透過SVCB(Service Binding)記錄將代理資訊釋出到DNS區域中,並結合DNSSEC對這些記錄進行數字簽名,從而確保消費者可以端到端地驗證代理的身份和資訊的完整性。代理的名稱空間遵循一個結構化的模式:_{agent-name}._{protocol}._agents.{your-domain}。其中,_agents標籤將名稱空間限定在代理領域,_{protocol}指定傳輸協議(例如_mcp表示Model Context Protocol,_a2a表示Agent-to-Agent協議,_https表示HTTPS),而_{agent-name}則是代理在您區域內的本地識別符號。
DNS-AID的工作流程簡潔而清晰,分為四個步驟:釋出、簽名、發現和驗證。首先,代理所有者將其SVCB記錄寫入DNS區域;然後,使用DNSSEC對整個區域進行簽名;接著,其他代理或客戶端透過解析上述格式的DNS名稱來發現目標代理;最後,在呼叫代理之前,驗證DNSSEC鏈、可選的JWS簽名以及DANE(DNS-based Authentication of Named Entities)策略,確保信任鏈的完整性。
專案提供了一個名為dns-aid-core的參考實現,包含Python SDK、命令列介面(CLI)和MCP伺服器。該實現基於IETF草案draft-mozleywilliams-dnsop-dnsaid,並計劃在Linux基金會下託管。隨著生態系統的成熟,未來還將推出更多倉庫,包括整合工具、策略編譯器以及針對客戶端、遞迴解析器和權威伺服器三種發現場景的參考服務。
目前,DNS-AID處於IETF草案的參考實現階段,協議級別的變更在IETF進行,而GitHub組織則負責實現和生態系統活動(如工具、示例、整合和文件)。該專案採用Apache-2.0許可證,社群參與透過GOVERNANCE和MAINTAINERS檔案進行管理。如果您是開發者,可以透過pip install dns-aid[cli,mcp]快速安裝SDK,並參照入門指南體驗代理發現功能。