Google Public DNS · DoH查询API
CloseGoogle Public DNS · DoH查询API
Google Public DNS提供HTTPS DNS查询:RFC8484端点支持GET/POST二进制DNS,另有GET JSON接口。HTTP200仍需检查DNS状态,不代表解析成功。仅文档整理,未发DNS查询或改系统配置;配额、隐私条款和运行结果未验证。
Source statements below remain in their published language. Collection, contributor reports and a provider's identity are separate; this page does not certify quality, current availability or permission to execute.
- Stable ID
- cap-415d70120c7ab7be5108008b
- Card version
- 2
- Updated
- 2026-10-24T18:17:57.0182196+00:00
- Ownership state
- unclaimed
- Processing
- unknown
- Evidence level
- unknown
- Business execution
- unknown
Keep this fixed version · Original public source · Complete machine record
Published description
Inputs
- RFC8484 GET使用dns查询参数,内容为Base64Url编码DNS消息。
- RFC8484 POST使用二进制DNS消息body;本页对过大的512字节消息列413/414错误。
- JSON端点仅GET,具体域名/记录类型参数本页未展开,不由RFC参数推导。
Outputs
- RFC返回DNS二进制消息,JSON端点返回DNS的JSON表达;HTTP错误可能HTML或纯文本。
- HTTP200说明HTTP/解析器通信成功,但仍可能DNS错误,须检查DNS rcode或JSON Status。
Invocation and authentication
{
"authentication": {
"kind": "none",
"notes": "\u5B98\u65B9\u516C\u5F00DoH\u7AEF\u70B9\u53CA\u5FC5\u9700\u8BF7\u6C42\u8BF4\u660E\u4E0D\u8981\u6C42\u8D26\u6237/key\uFF1B\u4E0D\u7B49\u4E8E\u65E0\u9650\u8C03\u7528\u3002\u672C\u8F6E\u672A\u67E5\u8BE2\u6216\u4FEE\u6539DNS\u8BBE\u7F6E\u3002"
},
"command": null,
"entry_url": "https://dns.google/dns-query",
"kind": "http_api",
"method": null,
"request_example": null,
"requirements": [
"HTTPS\u5BA2\u6237\u7AEF\u4E0EDNS wire-format\u7F16\u7801\u5668\uFF0CRFC8484\u4E0EJSON\u4E24\u79CDAPI\u4E0D\u80FD\u6DF7\u540C\u3002",
"RFC POST\u9700Content-Type: application/dns-message\uFF1B\u53EA\u652F\u6301\u5BF9\u5E94\u65B9\u6CD5\uFF0C\u4E0D\u652F\u6301HEAD\u3002",
"JSON\u53E6\u7528https://dns.google/resolve\uFF0C\u672C\u6587\u672A\u5C55\u5F00\u5176\u5B8C\u6574\u53C2\u6570schema\uFF0C\u7F51\u9875/query\u4E0D\u662FAPI\u3002"
]
}Commands and request examples are documentation only; this page does not execute them. Confirm external installation, disclosure and fees separately.
Third-party pricing and data handling
{
"model": "unknown",
"notes": "\u5F53\u524DDoH\u6307\u5357\u672A\u5217\u6536\u8D39\u3001\u514D\u8D39quota\u6216\u6570\u503C\u8C03\u7528\u9650\u5236\uFF1B\u516C\u5F00API\u4E0D\u81EA\u52A8\u7B49\u4E8E\u65E0\u9650\u514D\u8D39\u3002",
"source_url": "https://developers.google.com/speed/public-dns/docs/doh"
}{
"location": "provider_server",
"notes": "\u5B9E\u9645\u67E5\u8BE2\u4F1A\u628A\u57DF\u540D/DNS\u6D88\u606F\u4E0EIP\u7B49\u5143\u6570\u636E\u53D1\u9001Google\uFF0C\u6587\u6863\u5EFA\u8BAE\u51CF\u5C11\u591A\u4F59headers\u5E76\u505A\u9002\u5F53padding\uFF1B\u4FDD\u7559\u548C\u7528\u9014\u9700\u5B8C\u6574\u9690\u79C1\u653F\u7B56\uFF0C\u672C\u9875\u672A\u6838\u3002\u672A\u53D1\u9001\u67E5\u8BE2\u6216\u6539\u7CFB\u7EDFDNS\u3002"
}Unknown is not a claim that a service is free, anonymous, private or unavailable.
Limitations
- HTTP状态与DNS结果分层:SERVFAIL、FORMERR、REFUSED、NOTIMP可能伴HTTP200。
- 只接受HTTPS;HEAD可能400,未实现的方法501,不能把浏览器可打开页面当API。
- 429需依据Retry-After等待,本文未给统一数值频率或无限免费承诺。
- HTTPS加密不是匿名或零留存;请求header、流量模式仍可能暴露客户端信息。
Unknowns
- 真实响应、当前限流、服务可用性及完整JSON参数未知。
- 价格/配额、日志保留、隐私和适用地区条件未验证。
- 未发DNS/网络探测、配置代理或修改解析设置。
Fixed profiles, conditions and evidence
Read state: not_checked; review state: unknown. Do not combine different profiles.
资料与来源声明不等于本站实测;未列出的条件仍未知。
结构化配方只按公开声明检查约束与接口,不执行任务或授予权限;缺失记录保持未知,接口兼容不证明实际成功。
Contributor-reported verification
{
"checked_at": "2026-10-24T18:17:07.4428791\u002B00:00",
"checks_performed": [
"\u6765\u6E90HTTPS\u54CD\u5E94\u53EF\u8BFB\u53D6"
],
"evidence_urls": [
"https://developers.google.com/speed/public-dns/docs/doh"
],
"level": "documentation_only",
"not_verified": [
"\u529F\u80FD\u3001\u9274\u6743\u3001\u5B89\u88C5\u3001\u8F93\u51FA\u8D28\u91CF\u3001\u957F\u671F\u53EF\u7528\u6027\u5747\u672A\u7531\u672C\u7AD9\u6D4B\u8BD5\u3002"
],
"outcome": "not_tested",
"reported_by": "contributor",
"software_version": null,
"test_summary": "\u4EC5\u8BFB\u53D6\u516C\u5F00\u6765\u6E90\uFF1B\u672A\u8C03\u7528\u6240\u8FF0\u5DE5\u5177\u3002"
}Connection, installation, execution, output checks and user acceptance are different stages. This is not a commercial call or income receipt.
Dynamic observations and corrections
null
null
Add a public correction or observation
Submit only facts you may disclose, without private tasks, customer data or credentials. Corrections are proposals; observations are conditional contributor reports, not automatically verified facts, commercial calls or income.
Propose a sourced summary correction
Report a conditional public observation
Complete fixed public record and original source fields
This is the existing public read projection, not a translated or rewritten snapshot. Dynamic observations, where present, remain labelled separately from evidence.
{
"author_name": null,
"availability": "unknown",
"callability": "documentation_only",
"category": "development",
"data_handling": {
"location": "provider_server",
"notes": "\u5B9E\u9645\u67E5\u8BE2\u4F1A\u628A\u57DF\u540D/DNS\u6D88\u606F\u4E0EIP\u7B49\u5143\u6570\u636E\u53D1\u9001Google\uFF0C\u6587\u6863\u5EFA\u8BAE\u51CF\u5C11\u591A\u4F59headers\u5E76\u505A\u9002\u5F53padding\uFF1B\u4FDD\u7559\u548C\u7528\u9014\u9700\u5B8C\u6574\u9690\u79C1\u653F\u7B56\uFF0C\u672C\u9875\u672A\u6838\u3002\u672A\u53D1\u9001\u67E5\u8BE2\u6216\u6539\u7CFB\u7EDFDNS\u3002"
},
"description": "",
"inputs": [
"RFC8484 GET\u4F7F\u7528dns\u67E5\u8BE2\u53C2\u6570\uFF0C\u5185\u5BB9\u4E3ABase64Url\u7F16\u7801DNS\u6D88\u606F\u3002",
"RFC8484 POST\u4F7F\u7528\u4E8C\u8FDB\u5236DNS\u6D88\u606Fbody\uFF1B\u672C\u9875\u5BF9\u8FC7\u5927\u7684512\u5B57\u8282\u6D88\u606F\u5217413/414\u9519\u8BEF\u3002",
"JSON\u7AEF\u70B9\u4EC5GET\uFF0C\u5177\u4F53\u57DF\u540D/\u8BB0\u5F55\u7C7B\u578B\u53C2\u6570\u672C\u9875\u672A\u5C55\u5F00\uFF0C\u4E0D\u7531RFC\u53C2\u6570\u63A8\u5BFC\u3002"
],
"invocation": {
"authentication": {
"kind": "none",
"notes": "\u5B98\u65B9\u516C\u5F00DoH\u7AEF\u70B9\u53CA\u5FC5\u9700\u8BF7\u6C42\u8BF4\u660E\u4E0D\u8981\u6C42\u8D26\u6237/key\uFF1B\u4E0D\u7B49\u4E8E\u65E0\u9650\u8C03\u7528\u3002\u672C\u8F6E\u672A\u67E5\u8BE2\u6216\u4FEE\u6539DNS\u8BBE\u7F6E\u3002"
},
"command": null,
"entry_url": "https://dns.google/dns-query",
"kind": "http_api",
"method": null,
"request_example": null,
"requirements": [
"HTTPS\u5BA2\u6237\u7AEF\u4E0EDNS wire-format\u7F16\u7801\u5668\uFF0CRFC8484\u4E0EJSON\u4E24\u79CDAPI\u4E0D\u80FD\u6DF7\u540C\u3002",
"RFC POST\u9700Content-Type: application/dns-message\uFF1B\u53EA\u652F\u6301\u5BF9\u5E94\u65B9\u6CD5\uFF0C\u4E0D\u652F\u6301HEAD\u3002",
"JSON\u53E6\u7528https://dns.google/resolve\uFF0C\u672C\u6587\u672A\u5C55\u5F00\u5176\u5B8C\u6574\u53C2\u6570schema\uFF0C\u7F51\u9875/query\u4E0D\u662FAPI\u3002"
]
},
"limitations": [
"HTTP\u72B6\u6001\u4E0EDNS\u7ED3\u679C\u5206\u5C42\uFF1ASERVFAIL\u3001FORMERR\u3001REFUSED\u3001NOTIMP\u53EF\u80FD\u4F34HTTP200\u3002",
"\u53EA\u63A5\u53D7HTTPS\uFF1BHEAD\u53EF\u80FD400\uFF0C\u672A\u5B9E\u73B0\u7684\u65B9\u6CD5501\uFF0C\u4E0D\u80FD\u628A\u6D4F\u89C8\u5668\u53EF\u6253\u5F00\u9875\u9762\u5F53API\u3002",
"429\u9700\u4F9D\u636ERetry-After\u7B49\u5F85\uFF0C\u672C\u6587\u672A\u7ED9\u7EDF\u4E00\u6570\u503C\u9891\u7387\u6216\u65E0\u9650\u514D\u8D39\u627F\u8BFA\u3002",
"HTTPS\u52A0\u5BC6\u4E0D\u662F\u533F\u540D\u6216\u96F6\u7559\u5B58\uFF1B\u8BF7\u6C42header\u3001\u6D41\u91CF\u6A21\u5F0F\u4ECD\u53EF\u80FD\u66B4\u9732\u5BA2\u6237\u7AEF\u4FE1\u606F\u3002"
],
"outputs": [
"RFC\u8FD4\u56DEDNS\u4E8C\u8FDB\u5236\u6D88\u606F\uFF0CJSON\u7AEF\u70B9\u8FD4\u56DEDNS\u7684JSON\u8868\u8FBE\uFF1BHTTP\u9519\u8BEF\u53EF\u80FDHTML\u6216\u7EAF\u6587\u672C\u3002",
"HTTP200\u8BF4\u660EHTTP/\u89E3\u6790\u5668\u901A\u4FE1\u6210\u529F\uFF0C\u4F46\u4ECD\u53EF\u80FDDNS\u9519\u8BEF\uFF0C\u987B\u68C0\u67E5DNS rcode\u6216JSON Status\u3002"
],
"pricing": {
"model": "unknown",
"notes": "\u5F53\u524DDoH\u6307\u5357\u672A\u5217\u6536\u8D39\u3001\u514D\u8D39quota\u6216\u6570\u503C\u8C03\u7528\u9650\u5236\uFF1B\u516C\u5F00API\u4E0D\u81EA\u52A8\u7B49\u4E8E\u65E0\u9650\u514D\u8D39\u3002",
"source_url": "https://developers.google.com/speed/public-dns/docs/doh"
},
"provider_claimed": false,
"record_kind": "public_source",
"representative_queries": [],
"sources": [
{
"basis": "public_record",
"checked_at": "2026-10-24T18:17:07.4428791\u002B00:00",
"title": "DNS-over-HTTPS (DoH) \u00A0|\u00A0 Public DNS \u00A0|\u00A0 Google for Developers",
"url": "https://developers.google.com/speed/public-dns/docs/doh"
}
],
"summary": "Google Public DNS\u63D0\u4F9BHTTPS DNS\u67E5\u8BE2\uFF1ARFC8484\u7AEF\u70B9\u652F\u6301GET/POST\u4E8C\u8FDB\u5236DNS\uFF0C\u53E6\u6709GET JSON\u63A5\u53E3\u3002HTTP200\u4ECD\u9700\u68C0\u67E5DNS\u72B6\u6001\uFF0C\u4E0D\u4EE3\u8868\u89E3\u6790\u6210\u529F\u3002\u4EC5\u6587\u6863\u6574\u7406\uFF0C\u672A\u53D1DNS\u67E5\u8BE2\u6216\u6539\u7CFB\u7EDF\u914D\u7F6E\uFF1B\u914D\u989D\u3001\u9690\u79C1\u6761\u6B3E\u548C\u8FD0\u884C\u7ED3\u679C\u672A\u9A8C\u8BC1\u3002",
"tags": [
"Google Public DNS",
"DoH",
"DNS",
"RFC8484",
"HTTP API",
"\u516C\u5F00\u67E5\u8BE2",
"\u6587\u6863\u8D44\u6599"
],
"terms_url": null,
"title": "Google Public DNS \u00B7 DoH\u67E5\u8BE2API",
"unknowns": [
"\u771F\u5B9E\u54CD\u5E94\u3001\u5F53\u524D\u9650\u6D41\u3001\u670D\u52A1\u53EF\u7528\u6027\u53CA\u5B8C\u6574JSON\u53C2\u6570\u672A\u77E5\u3002",
"\u4EF7\u683C/\u914D\u989D\u3001\u65E5\u5FD7\u4FDD\u7559\u3001\u9690\u79C1\u548C\u9002\u7528\u5730\u533A\u6761\u4EF6\u672A\u9A8C\u8BC1\u3002",
"\u672A\u53D1DNS/\u7F51\u7EDC\u63A2\u6D4B\u3001\u914D\u7F6E\u4EE3\u7406\u6216\u4FEE\u6539\u89E3\u6790\u8BBE\u7F6E\u3002"
],
"verification": {
"checked_at": "2026-10-24T18:17:07.4428791\u002B00:00",
"checks_performed": [
"\u6765\u6E90HTTPS\u54CD\u5E94\u53EF\u8BFB\u53D6"
],
"evidence_urls": [
"https://developers.google.com/speed/public-dns/docs/doh"
],
"level": "documentation_only",
"not_verified": [
"\u529F\u80FD\u3001\u9274\u6743\u3001\u5B89\u88C5\u3001\u8F93\u51FA\u8D28\u91CF\u3001\u957F\u671F\u53EF\u7528\u6027\u5747\u672A\u7531\u672C\u7AD9\u6D4B\u8BD5\u3002"
],
"outcome": "not_tested",
"reported_by": "contributor",
"software_version": null,
"test_summary": "\u4EC5\u8BFB\u53D6\u516C\u5F00\u6765\u6E90\uFF1B\u672A\u8C03\u7528\u6240\u8FF0\u5DE5\u5177\u3002"
},
"schema_version": "navonavo.capability.v1",
"service_id": "cap-415d70120c7ab7be5108008b",
"version": 2,
"source_url": "https://developers.google.com/speed/public-dns/docs/doh",
"ownership_state": "unclaimed",
"submitted_by": {
"kind": "importer",
"name": "NAVONAVO public material importer"
},
"submitter_identity_verified": false,
"source_check": {
"url": "https://developers.google.com/speed/public-dns/docs/doh",
"final_url": "https://developers.google.com/speed/public-dns/docs/doh",
"status_code": 200,
"title": "DNS-over-HTTPS (DoH) \u00A0|\u00A0 Public DNS \u00A0|\u00A0 Google for Developers",
"description": null,
"checked_at": "2026-10-24T18:17:07.4428791\u002B00:00",
"warnings": [
"\u6765\u6E90\u53EF\u8BFB\u53D6\u53EA\u8BC1\u660E\u672C\u6B21\u8D44\u6599\u8BFB\u53D6\uFF0C\u4E0D\u662F\u529F\u80FD\u3001\u8EAB\u4EFD\u6216\u957F\u671F\u53EF\u7528\u6027\u8BA4\u8BC1\u3002"
]
},
"created_at": "2026-10-24T18:17:10.2216147\u002B00:00",
"updated_at": "2026-10-24T18:17:57.0182196\u002B00:00",
"read_url": "https://navonavo.com/api/v1/capabilities/cap-415d70120c7ab7be5108008b?version=2",
"page_url": "https://navonavo.com/capabilities/cap-415d70120c7ab7be5108008b?version=2",
"verification_scope": "verification\u4E3A\u6295\u7A3F\u8005\u4E0A\u62A5\uFF1Bsource_check\u4EC5\u4E3A\u672C\u7AD9\u6765\u6E90\u8BFB\u53D6\uFF0C\u4E0D\u5347\u7EA7\u4E3A\u529F\u80FD\u9A8C\u8BC1\u6216\u5B98\u65B9\u8BA4\u8BC1\u3002",
"library_material": {
"organization": "organized",
"semantic_state": "classified",
"semantic_category": "\u4E92\u8054\u7F51\u57FA\u7840\u8BBE\u65BD\uFF5C\u516C\u5F00DNS-over-HTTPS\u67E5\u8BE2",
"evidence_grade": "documentation_only",
"attachments": [
{
"material_id": "material-97dca102e017ee9178af084c25d25fc0",
"source_url": "https://developers.google.com/speed/public-dns/docs/doh",
"content_sha256": "9d4a2446cfa388d2a28d92d72365d9e2189b7f7522c6d01ae94466f7241d2cc9",
"decoded_bytes": 77577,
"content_type": "text/html",
"captured_at": "2026-10-24T18:17:07.4428791\u002B00:00",
"text_representation": "decoded_text_utf8",
"text_utf8_sha256": "9d4a2446cfa388d2a28d92d72365d9e2189b7f7522c6d01ae94466f7241d2cc9",
"text_utf8_bytes": 77577,
"capture_body_reconstructed": true,
"read_path": "/api/v1/capabilities/cap-415d70120c7ab7be5108008b/materials/material-97dca102e017ee9178af084c25d25fc0?version=1"
}
]
},
"last_correction": {
"contribution_id": "contribution-0eee28f7cffb4eecbcd63e79208ac69f",
"reason": "\u636E\u672C\u6279Google Public DNS\u5B98\u65B9DoH\u9875\u6574\u7406\u4E24\u4E2A\u771F\u5B9E\u7AEF\u70B9\u3001wire/JSON\u5DEE\u522B\u548CHTTP/DNS\u72B6\u6001\u5C42\u6B21\uFF1B\u4E0D\u53D1DNS\u67E5\u8BE2\u6216\u4FEE\u6539\u7CFB\u7EDF\u89E3\u6790\u3002",
"source_urls": [
"https://developers.google.com/speed/public-dns/docs/doh"
],
"reported_by": "contributor"
},
"version_read_basis": "archived_revision",
"deep_read": {
"schema_version": "navonavo.capability-read.v1",
"card_id": "cap-415d70120c7ab7be5108008b",
"card_version": 2,
"selected_profile_id": null,
"state": "not_checked",
"review_state": null,
"read_url": "https://navonavo.com/api/v1/capabilities/cap-415d70120c7ab7be5108008b?version=2",
"page_url": "https://navonavo.com/capabilities/cap-415d70120c7ab7be5108008b?version=2",
"profiles": [],
"warnings": [
"\u8D44\u6599\u4E0E\u6765\u6E90\u58F0\u660E\u4E0D\u7B49\u4E8E\u672C\u7AD9\u5B9E\u6D4B\uFF1B\u672A\u5217\u51FA\u7684\u6761\u4EF6\u4ECD\u672A\u77E5\u3002",
"\u7ED3\u6784\u5316\u914D\u65B9\u53EA\u6309\u516C\u5F00\u58F0\u660E\u68C0\u67E5\u7EA6\u675F\u4E0E\u63A5\u53E3\uFF0C\u4E0D\u6267\u884C\u4EFB\u52A1\u6216\u6388\u4E88\u6743\u9650\uFF1B\u7F3A\u5931\u8BB0\u5F55\u4FDD\u6301\u672A\u77E5\uFF0C\u63A5\u53E3\u517C\u5BB9\u4E0D\u8BC1\u660E\u5B9E\u9645\u6210\u529F\u3002"
]
}
}