INTEGRITY Dokumentace

Použití JSON

Koncový bod Cloudflare DNS over HTTPS podporuje také formát JSON pro dotazování na údaje DNS. V rámci Internet Engineering Task Force (IETF) neexistuje pro DNS over HTTPS žádné jednotné schéma JSON, proto se Cloudflare rozhodl řídit se stejným schématem jako resolver DNS over HTTPS společnosti Google.

Dotazy ve formátu JSON se odesílají pomocí GET požadavek. Při vytváření požadavků pomocí GET, je DNS dotaz zakódován do URL. Přidejte hlavičku HTTP Accept v hlavičce požadavku s typem MIME application/dns-json aby bylo zřejmé, že klient dokáže přijmout odpověď ve formátu JSON.

Podporované parametry

Pole Povinné? Popis Výchozí
name Ano Název dotazu. -
type Ne Typ dotazu (buď číselná hodnota nebo text ↗). A
do Ne DO bit, zda klient chce data DNSSEC (buď prázdný, nebo jeden z 0, false, 1, nebo true). false
cd Ne CD bit, zakázat ověřování (buď prázdný, nebo jeden z 0, false, 1, nebo true). false

Příklady

Příklad požadavku a odpovědi:

curl --header "accept: application/dns-json" "https://cloudflare-dns.com/dns-query?name=example.com&type=AAAA"
{
	"Status": 0,
	"TC": false,
	"RD": true,
	"RA": true,
	"AD": true,
	"CD": false,
	"Question": [
		{
			"name": "example.com.",
			"type": 28
		}
	],
	"Answer": [
		{
			"name": "example.com.",
			"type": 28,
			"TTL": 1726,
			"data": "2606:2800:220:1:248:1893:25c8:1946"
		}
	]
}

V případě neplatného požadavku se vrátí 400 Bad Request se vrátí chyba:

curl --header "accept: application/dns-json" "https://cloudflare-dns.com/dns-query?name=example.com&cd=2"
{
	"error": "Invalid CD flag `2`. Expected to be empty or one of `0`, `false`, `1`, or `true`."
}

Pole odpovědi

Následující tabulky obsahují další informace o jednotlivých polích odpovědi.

Úspěšná odpověď

Pole Popis
Status Kód odpovědi DNS dotazu. Kódy jsou definovány zde: https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-6 ↗.
TC Pokud TC pole je true, byl nastaven bit zkrácení. K tomu dochází, když odpověď DNS přesáhne velikost jediného paketu UDP nebo TCP. U Cloudflare DNS over HTTPS je TC pole je téměř vždy false, protože Cloudflare podporuje maximální velikost odpovědi.
RD Pokud je hodnota true, znamená to, že byl nastaven bit Recursive Desired. U Cloudflare DNS over HTTPS je vždy nastaven na true.
RA Pokud je hodnota true, znamená to, že byl nastaven bit Recursion Available. U Cloudflare DNS over HTTPS je vždy nastaven na true.
AD Pokud je hodnota true, znamená to, že každý záznam v odpovědi byl ověřen pomocí DNSSEC.
CD Pokud je hodnota true, znamená to, že klient požádal o vypnutí ověřování DNSSEC. Cloudflare v takovém případě záznamy související s DNSSEC i nadále načítá, ale nepokouší se je ověřit.
Question: name Požadovaný název záznamu.
Question: type Požadovaný typ záznamu DNS. Definice najdete zde: https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4 ↗.
Answer: name Vlastník záznamu.
Answer: type Typ záznamu DNS. Definice najdete zde: https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4 ↗.
Answer: TTL Počet sekund, po které lze odpověď uchovávat v mezipaměti, než je považována za zastaralou.
Answer: data Hodnota záznamu DNS pro daný název a typ. U standardizovaných typů záznamů budou data v textovém formátu, u neznámých typů v hexadecimálním.
Authority: name Vlastník záznamu.
Authority: type Typ záznamu DNS. Definice najdete zde: https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4 ↗.
Authority: TTL Počet sekund, po které lze odpověď uchovávat v mezipaměti, než je považována za zastaralou.
Authority: data Hodnota záznamu DNS pro daný název a typ. U standardizovaných typů záznamů budou data v textovém formátu, u neznámých typů v hexadecimálním.
Additional: name Vlastník záznamu.
Additional: type Typ záznamu DNS. Definice najdete zde: https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4 ↗.
Additional: TTL Počet sekund, po které lze odpověď uchovávat v mezipaměti, než je považována za zastaralou.
Additional: data Hodnota záznamu DNS pro daný název a typ. U standardizovaných typů záznamů budou data v textovém formátu, u neznámých typů v hexadecimálním.
Comment Seznam zpráv EDE. Viz Rozšířené chybové kódy DNS s dalšími informacemi.

Chybová odpověď

Pole Popis
error Vysvětlení chyby, ke které došlo.