E-mail a domény
Zkontrolovat DMARC
Pokrytí: Funguje s doménami z jakékoli země. Záznam hledáme stejně jako přijímající servery: v samotné doméně, a pokud ho nemá, v jejích nadřazených doménách (až pět úrovní). Z adres pro reporty zobrazujeme jen doménu.
Otevřít nástrojNa této stránce
Účel
Zkontrolujte záznam DMARC domény: její zásady (none, quarantine nebo reject), zda pocházejí z nadřazené domény, na jakou část e-mailů se vztahují, zarovnání a kam chodí reporty.
Požadavky
Tyto návody může číst kdokoli, i bez účtu. Některé nástroje vyžadují Pro, jak uvádí příslušný návod.
DMARC říká přijímajícím serverům, co dělat s e-mailem, který tvrdí, že pochází z určité domény, ale neprojde jejími kontrolami: doručit ho, přesunout do spamu, nebo odmítnout. Zadejte doménu, e-mailovou adresu nebo odkaz a my vám ukážeme její zásady DMARC a co znamenají.
Jak používat
Zadejte doménu, kterou chcete zkontrolovat, nebo vložte e-mailovou adresu či odkaz: použijeme jen jeho doménu.
Stiskněte „Zkontrolovat DMARC“. Záznam hledáme v _dmarc, a pokud tam není, v nadřazených doménách, stejně jako přijímající servery.
Podívejte se na zásady: „reject“ nebo „quarantine“ pro 100 % e-mailů doménu chrání; „none“ jen sleduje.
Smyšlený příklad
Smyšlený příklad, nikoli skutečný dotaz. Nevolejte ani neotevírejte jeho odkazy.
v=DMARC1; p=reject; rua=mailto:[email protected]Jak chápat výsledek
Tato doména nemá DMARC: Nežádá příjemce, aby zastavili e-maily, které se za ni vydávají, takže je snazší ji zneužít.
Záznam DMARC obsahuje chyby: Příjemci ho mohou ignorovat, takže doména je na tom, jako by DMARC neměla. Signály níže ukazují, co je špatně.
DMARC jen sleduje: Zásady jsou „none“: doména dostává reporty, ale falešné e-maily jejím jménem se dál doručují.
DMARC chrání jen část e-mailů: Zásady platí jen pro část e-mailů, které neprojdou kontrolou; zbytek se doručí, jako by žádné zásady nebyly.
Falešné e-maily jdou do spamu: Zásady jsou „quarantine“: příjemci přesouvají e-maily, které neprojdou kontrolami, do složky se spamem.
Falešné e-maily se odmítají: Zásady jsou „reject“: příjemci odmítají e-maily, které se vydávají za tuto doménu. Je to nejsilnější ochrana.
none: jen sledovat
quarantine: přesunout do spamu
reject: odmítnout doručení
Omezení
Čteme veřejné záznamy DNS domény. Pokud zadáte e-mailovou adresu nebo odkaz, z vašeho prohlížeče odejde jen jeho doména. Doménu, kterou vyhledáváte, neukládáme.
Řešení potíží
To nevypadá jako veřejná doména. Zkuste něco jako example.com.
DNS neodpověděl včas. Zkuste to znovu za pár sekund.
Provedli jste mnoho kontrol za sebou. Počkejte minutu a zkuste to znovu.
Použít přes API
Vyžaduje API klíč a kredity. Každé dokončené volání stojí 1 kredit, i když nejsou k dispozici žádná data. Aktivní účet Pro zahrnuje 20 kreditů na kalendářní měsíc UTC, sdílených všemi cestami API a čerpaných jako první; nevyčerpané měsíční kredity se nepřevádějí. Kredity zakoupené na stránce vašeho účtu fungují i bez Pro a nikdy nevyprší.
Chyby se nikdy neúčtují: 401 invalid_api_key (chybějící nebo neplatný klíč), 403 pro_required (žádné kredity Pro ani zakoupené kredity), 422 neplatný vstup, 429 quota_exceeded (žádné zbývající kredity), rate_limit_exceeded nebo ai_busy (AI pro sms-check je plně vytížená), 503 tool_warming (data se teprve připravují) nebo tool či poskytovatel nedostupný. Po odpovědi 429 nebo 503 to zkuste znovu, až uplyne počet sekund z hlavičky Retry-After.
Zásady DMARC domény (RFC 7489, s vyhledáváním v nadřazených doménách podle DMARCbis): záznam, kde byl nalezen, účinné zásady (none, quarantine nebo reject), procento, zarovnání DKIM a SPF a domény, které dostávají reporty, nikdy celá adresa. Nic se neukládá.
Pošli tělo JSON na vlastní cestu toolu, nebo na POST /v2/tools s přidaným polem tool. Obě cesty vrátí stejný výsledek.
POST https://api.nocall.io/v2/dmarc-check
POST https://api.nocall.io/v2/tools {"tool":"dmarc-check","domain":"example.com"}Parametry
| Název | Typ | Povinný | Popis |
|---|---|---|---|
| domain | string (1–320) | Ano | Doména, nebo e-mailová adresa či odkaz, ze kterého se použije doména, až 320 znaků. Jen veřejné názvy: IP adresy, jednoúrovňové názvy a názvy pro zvláštní použití (.local, .internal, .test…) vracejí 422. |
REQUEST_ID="$(uuidgen)" && [ -n "$REQUEST_ID" ] &&
curl --request POST 'https://api.nocall.io/v2/dmarc-check' \
--header "Authorization: Bearer $NOCALL_API_KEY" \
--header 'Content-Type: application/json' \
--header "Idempotency-Key: $REQUEST_ID" \
--data '{"domain":"example.com"}'import json
import os
import urllib.request
import uuid
api_key = os.environ.get('NOCALL_API_KEY')
if not api_key:
raise SystemExit('Set NOCALL_API_KEY')
request = urllib.request.Request(
'https://api.nocall.io/v2/dmarc-check',
method='POST',
data=json.dumps({'domain': 'example.com'}).encode(),
headers={
'Authorization': 'Bearer ' + api_key,
'Content-Type': 'application/json',
'Idempotency-Key': str(uuid.uuid4()),
},
)
with urllib.request.urlopen(request, timeout=30) as response:
result = json.load(response)
print(result['data']['result'], result['meta']['unitsCharged'])import { randomUUID } from 'node:crypto';
const requestId = randomUUID();
const apiKey = process.env.NOCALL_API_KEY;
if (!apiKey) throw new Error('Set NOCALL_API_KEY');
const response = await fetch('https://api.nocall.io/v2/dmarc-check', {
method: 'POST',
headers: {
Authorization: 'Bearer ' + apiKey,
'Content-Type': 'application/json',
'Idempotency-Key': requestId,
},
body: JSON.stringify({ domain: 'example.com' }),
});
const result = await response.json();
if (!response.ok) throw new Error(result.error?.code ?? 'request_failed');
console.log(result.data.result, result.meta.unitsCharged);Ukázková odpověď (200)
Jde o zdokumentovaný příklad z reference API. Vyhledávání používají smyšlené číslo a agregace i odpovědi AI ukazují tvar výsledku, ne živá data.
{
"data": {
"tool": "dmarc-check",
"result": {
"domain": "example.com",
"domainAscii": "example.com",
"found": true,
"record": "v=DMARC1; p=none; rua=mailto:[email protected]",
"foundAt": "example.com",
"inherited": false,
"policy": "none",
"subdomainPolicy": null,
"effectivePolicy": "none",
"percentage": 100,
"alignment": {
"dkim": "relaxed",
"spf": "relaxed"
},
"reports": {
"aggregate": [
"example.com"
],
"failure": []
},
"signals": [
"policy_none"
],
"valid": true,
"attention": true
}
},
"meta": {
"requestId": "req_example",
"unitsCharged": 1,
"usage": {
"periodStart": "2026-10-01",
"unitLimit": 20,
"unitsUsed": 3,
"unitsRemaining": 17
}
}
}Pole výsledku (data.result)
| Pole | Typ | Popis |
|---|---|---|
| domain | string | Doména v Unicode. |
| domainAscii | string | Stejná doména v ASCII (punycode), jak ji vidí DNS. |
| found | boolean | Zda se na doménu vztahuje záznam DMARC (vlastní nebo nadřazené domény). |
| record | string | null | Záznam DMARC; null, pokud žádný není nebo jich je víc. |
| foundAt | string | null | Doména, jejíž záznam _dmarc platí (tato nebo nadřazená), v Unicode. |
| inherited | boolean | Zda jde o záznam nadřazené domény (vyhledávání ve stromu podle DMARCbis). |
| policy | "none" | "quarantine" | "reject" | null | Tag p=: none, quarantine nebo reject. |
| subdomainPolicy | "none" | "quarantine" | "reject" | null | Tag sp=, nebo null. |
| effectivePolicy | "none" | "quarantine" | "reject" | null | Co platí pro tuto doménu: p, nebo sp, pokud je záznam zděděný. |
| percentage | integer (0–100) | pct: podíl e-mailů, které neprojdou kontrolou, na který se zásady vztahují; 100, pokud chybí. |
| alignment | object | Zarovnání DKIM a SPF (adkim a aspf): relaxed nebo strict. |
| reports | object | Domény, které dostávají souhrnné reporty (rua) a reporty o selhání (ruf); nikdy celá adresa. |
| signals | array<"no_dmarc" | "multiple_records" | "syntax_error" | "policy_none" | "partial_percentage" | "no_aggregate_reports" | "inherited" | "weaker_subdomain_policy"> | no_dmarc, multiple_records, syntax_error, policy_none, partial_percentage, no_aggregate_reports, inherited nebo weaker_subdomain_policy. |
| valid | boolean | Zda lze záznam zpracovat a zda obsahuje zásady. |
| attention | boolean | Zda si výsledek zaslouží pozornost: žádný DMARC, neplatný záznam, zásady none nebo procento pod 100. |
Často kladené otázky
Co je DMARC?
Domain-based Message Authentication, Reporting and Conformance: záznam DNS, který příjemcům říká, co dělat s e-maily, které mají doménu v poli „Od“, ale neprojdou kontrolou SPF ani DKIM. Žádá také o reporty, aby vlastník viděl, kdo jménem jeho domény posílá e-maily.
Co znamenají none, quarantine a reject?
„none“ jen sleduje: e-maily se doručují jako obvykle a vlastník dostává reporty. „quarantine“ posílá e-maily, které neprojdou, do spamu. „reject“ je odmítá. Domény obvykle začínají s „none“, čtou reporty a postupně se propracují k „reject“.
Když má doména DMARC, jsou všechny její e-maily pravé?
Ne. DMARC ztěžuje použití přesně této domény v poli „Od“, ale podvodník si může zaregistrovat podobnou doménu s vlastním DMARC. Zkontrolujte doménu odesílatele písmeno po písmenu, nebo vložte hlavičky do nástroje „Je tento e-mail pravý?“.
Proč se píše, že je záznam zděděný?
Subdoména bez vlastního záznamu (mail.example.com) používá záznam své nadřazené domény (example.com), a to se zásadami pro subdomény (sp), pokud je záznam obsahuje.
