Modul 6 · 6.1
Jak číst bounce zprávu
Modul 6: Chybová hlášení a řešení problémů · Doba čtení: 11 minut
Cíl lekce: Po této lekci dokážete rozebrat chybové hlášení o nedoručené poště (bounce): která server vydal chybu, pro jakou adresu, co znamená kód a zda jde o dočasný, nebo trvalý problém.
Klíčové pojmy: bounce, Mailer-Daemon, delivery status notification (DSN, RFC 3464), Reporting-MTA, Remote-MTA, Final-Recipient, Action (failed, delayed), Status, Diagnostic-Code, Will-Retry-Until, odpovědní kód (RFC 5321), rozšířený stavový kód X.Y.Z (RFC 3463), zpráva o odkladu, backscatter
Co je to bounce?
Pokud mailový server nemůže e-mail doručit, pošle zprávu zpět odesílateli. Tomu se říká bounce (nebo: non-delivery report, NDR). Přichází od odesílatele jako Mailer-Daemon@..., MAILER-DAEMON nebo Mail Delivery System, s předmětem například:
Mail delivery failed: returning message to senderUndelivered Mail Returned to SenderDelivery Status Notification (Failure)Warning: message ... delayed 24 hours(toto není bounce, ale zpráva o odkladu, viz dále)
Mnoho lidí takovou zprávu rovnou smaže nebo se lekne anglického textu. Škoda, protože bounce vám téměř vždy přesně řekne, co je špatně. Stačí vědět, kam se dívat.
Bounce má vždy prázdného odesílatele v obálce (Return-Path: <>). Je to záměr: bounce na bounce by jinak mohl vést k nekonečné smyčce (RFC 5321).
Kdo poštu odmítl?
E-mail prochází nejméně dvěma servery: serverem Vašeho poskytovatele a serverem příjemce. Bounce může vzniknout ve dvou situacích:
- Přijímající server poštu odmítne během SMTP komunikace (lekce 1.2), například po
RCPT TO(adresa neznámá) nebo po obsahu (spam nebo DMARC). Váš vlastní server toto odmítnutí obdrží a vytvoří z něj bounce pro Vás. Chyba tedy pochází od příjemce, bounce od Vašeho vlastního serveru. - Váš vlastní server to vzdá, například protože příjemce byl několik dní nedostupný, nebo protože jste sami dosáhli nějakého limitu.
Toto rozlišení je důležité: v prvním případě potřebujete vědět, co se příjemci nelíbilo, ve druhém případě je problém blíž u Vás doma.
Čitelná část
Nahoře je text pro lidi. Ten se liší podle mailového softwaru, ale téměř vždy obsahuje stejné prvky:
A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:
pieter.devries@example.net
host mx1.example.net [198.51.100.20]
SMTP error from remote mail server after RCPT TO:<pieter.devries@example.net>:
550 5.1.1 <pieter.devries@example.net>: Recipient address rejected: User unknownČtěte to takto:
| Část | Co říká |
|---|---|
permanent error | Trvalá chyba: server to nebude zkoušet znovu |
pieter.devries@example.net | Adresa, u které se to nepovedlo (při více příjemcích: pouze tato) |
host mx1.example.net [198.51.100.20] | Server příjemce, se kterým se komunikovalo |
SMTP error from remote mail server | Chyba přišla od příjemce, ne od Vašeho vlastního serveru |
after RCPT TO | V jakém okamžiku komunikace: zde při uvedení příjemce |
550 5.1.1 ... User unknown | Kód a text od příjemce: tato adresa neexistuje |
Strojová část: DSN
Pod textem bývá obvykle část určená pro programy, delivery status notification (RFC 3464). Ta je vždy stejně strukturovaná, což usnadňuje čtení:
Reporting-MTA: dns; mail.hosting.example
Action: failed
Final-Recipient: rfc822;pieter.devries@example.net
Status: 5.1.1
Remote-MTA: dns; mx1.example.net
Diagnostic-Code: smtp; 550 5.1.1 <pieter.devries@example.net>: Recipient address rejected: User unknown| Pole | Význam |
|---|---|
Reporting-MTA | Server, který tento bounce napsal (obvykle Váš vlastní odesílací server) |
Final-Recipient | Adresa, o kterou jde |
Action | failed (neúspěšné, trvalé), delayed (odloženo, stále se zkouší), někdy delivered nebo relayed |
Status | Rozšířený stavový kód, viz níže |
Remote-MTA | Server na druhé straně, který dal odpověď |
Diagnostic-Code | Doslovná odpověď daného serveru: zde je skutečný důvod |
Will-Retry-Until | U delayed: do kdy to server bude dál zkoušet |
Úplně dole je původní e-mail, nebo alespoň jeho hlavičky. Tam uvidíte, o jakou poštu šlo a jaká adresa odesílatele a jaký Return-Path byly použity. To je někdy klíč k řešení (viz případ s DMARC v úkolu).
Čtení kódů
Existují dva druhy kódů a většinou jsou v bounce zprávě oba.
Odpovědní kód (RFC 5321): tři číslice, například 550 nebo 451. První číslice je nejdůležitější:
| Začíná na | Význam | Co odesílající server dělá |
|---|---|---|
2 | Úspěch | Nic víc, pošta byla přijata |
4 | Dočasná chyba | Uloží poštu a později to zkusí znovu |
5 | Trvalá chyba | Vzdá to a pošle bounce |
Rozšířený stavový kód (RFC 3463): tři čísla oddělená tečkami, například 5.1.1 nebo 4.7.500. První číslo je opět 2, 4 nebo 5. Druhé číslo říká, kde je problém:
| Druhé číslo | Téma | Příklady |
|---|---|---|
X.1 | Adresa | 5.1.1 adresa neexistuje, 5.1.2 doména neexistuje |
X.2 | Schránka | 5.2.2 / 4.2.2 schránka plná, 5.2.1 schránka deaktivována |
X.3 | Mailový systém | 5.3.4 zpráva příliš velká |
X.4 | Síť a trasa | 4.4.1 žádná odpověď, 4.4.7 příliš dlouho ve frontě, 5.4.4 žádná trasa |
X.5 | Protokol | 5.5.1 neplatný příkaz |
X.6 | Obsah | 5.6.0 problém s obsahem nebo kódováním |
X.7 | Bezpečnost a zásady | 5.7.1 odmítnuto, 5.7.26 neověřeno (Gmail), 5.7.509 DMARC (Microsoft) |
Třetí číslo udává přesný důvod. Velcí příjemci na to používají vlastní čísla, například Gmail s kódy 5.7.25 až 5.7.30 a Microsoft s 4.7.500 a 5.7.509. Ty najdete v jejich vlastní dokumentaci (lekce 6.2).
Základní pravidlo: kód začínající na 5 s 7 uprostřed (5.7.x) je téměř vždy záležitost zásad: autentizace, reputace nebo spam. Opakované odeslání v takovém případě nepomůže, je třeba něco změnit.
Odloženo ještě neznamená neúspěch
Při dočasné chybě (4xx) Váš server poštu uloží a zkusí to znovu. RFC 5321 doporučuje vydržet to minimálně čtyři až pět dní, s odstupem minimálně půl hodiny mezi pokusy. Mnoho serverů posílá po několika hodinách nebo po dni zprávu o odkladu:
Action: delayed
Status: 4.7.500
Diagnostic-Code: smtp; 451 4.7.500 Server busy. Please try again later from [203.0.113.25].
Will-Retry-Until: Thu, 12 Nov 2026 08:58:40 +0100To znamená: neodesílejte to znovu, server to sám ještě zkouší. Pokud byste to přesto odeslali znovu, příjemce to možná dostane dvakrát. Pokud se to nakonec nepovede před datem u Will-Retry-Until, přijde nakonec skutečný bounce, často s kódem 4.4.7 (zpráva vypršela ve frontě).
Falešné bounce zprávy: backscatter
Dostáváte najednou desítky bounce zpráv na e-maily, které jste nikdy neodeslali? Podívejte se do původní zprávy úplně dole. Pokud tam vidíte odesílatele z Vaší domény, ale server a text, který neznáte, pak nějaký spammer použil Vaši adresu jako odesílatele. Příjemci posílají své bounce zprávy Vám. Tomu se říká backscatter.
Vaše schránka přitom obvykle není napadena (rozdíl viz lekce 3.4). Co pomáhá: zásady DMARC, které se postupně zpřísňují krok za krokem (lekce 4.4), aby příjemci falzifikovanou poštu odmítli dřív, než vznikne bounce. Zkontrolujte ale ve své odeslané poště a u svého poskytovatele, zda ze Vaší schránky skutečně nic odesláno nebylo.
V praxi: jak to vypadá
U WebOké kromě bounce zprávy vidíte také v sekci E-mailové sledování v DirectAdmin, co server se zprávou dělal: Doručeno, Odložené, nebo Selhání, včetně odpovědi od přijímajícího serveru. Jiné panely mívají podobný maillog nebo „stopu zprávy“; u Microsoft 365 se tomu například říká sledování zpráv. Je vhodné se tam nejprve podívat, pokud bounce nemáte, nebo pokud Vám někdo řekl, že Vaše pošta nedorazila.
Shrnutí
- Bounce přichází od Mailer-Daemon a má prázdný Return-Path. Čtěte ho, většinou přesně říká, co je špatně.
- Nejprve zjistěte, kdo vydal chybu (
SMTP error from remote mail server= příjemce) a pro jakou adresu. - Ve strojové části:
Action,Status,Remote-MTAa předevšímDiagnostic-Code. - První číslice: 4 = dočasné, 5 = trvalé. Druhé číslo: 1 adresa, 2 schránka, 3 systém, 4 trasa, 5 protokol, 6 obsah, 7 zásady.
- Zpráva o odkladu (
delayed): neodesílejte znovu. Bounce zprávy na poštu, kterou jste neodeslali: backscatter.
Kvíz
Úkol
Úkol Z6.1: Rozbor tří bounce zpráv. Dostanete tři vzorové bounce zprávy (bounce-1.txt, bounce-2.txt a bounce-3.txt). U každé bounce zprávy vyplňte: adresu, u které se to nepovedlo, server, který vydal chybu (Remote-MTA), stavový kód, zda je dočasný, nebo trvalý, a co má odesílatel udělat (vyberte ze seznamu). Program to zkontroluje podle pevného klíče a ke každému poli poskytne vysvětlení.
Další čtení
Postupy v těchto článcích platí pro panely WebOké; u jiných poskytovatelů to funguje podobně.
- Mail delivery failed: jak číst chybové hlášení a co jednotlivé kódy znamenají
- Chybová zpráva: 550 5.5.0 Requested action not taken: mailbox unavailable
- Kontrola doručení e-mailu pomocí sledování e-mailů v DirectAdmin
- Příručka k DirectAdmin 9.3: E-mailové sledování: kam zmizela moje zpráva?
- RFC 3464 (struktura DSN), RFC 3463 (rozšířené stavové kódy), RFC 5321 odstavec 4.2 (odpovědní kódy) a 4.5.4.1 (opakování pokusů)
