Електронний лист виглядає як миттєве повідомлення, але насправді проходить крізь десяток серверів і декілька протоколів, перш ніж потрапити до вхідних отримувача. Ця стаття розбирає шлях листа по кроках: від натискання «Надіслати» до появи у поштовому клієнті, і пояснює, яку роль відіграють поштовий домен, MX-записи та перевірки автентичності. Розуміння цього ланцюга допомагає швидше знаходити причину, коли лист не доходить або потрапляє у спам.
Шлях листа від відправника до отримувача
Коли ви надсилаєте лист, поштовий клієнт не передає його напряму адресату. Повідомлення проходить крізь ланцюг серверів, кожен з яких відповідає за свою ділянку маршруту, і на кожному кроці є своя точка, де доставка може затриматися чи перерватися.
- Поштовий клієнт передає лист вихідному серверу відправника (MTA).
- Вихідний сервер запитує у DNS поштового домену отримувача MX-запис.
- Лист передається протоколом SMTP на сервер отримувача, вказаний у MX-записі.
- Сервер отримувача перевіряє автентичність і кладе лист у поштову скриньку адресата.
Поштовий домен та MX-записи
Поштовий домен — це частина адреси після символу «@»: для адреси info@example.com поштовим доменом є example.com. У кожного поштового домену в DNS-зоні є один або декілька MX-записів — вони вказують, який сервер приймає пошту для цього домену, і в якому порядку сервери пробують у разі недоступності основного. Без MX-запису домен може приймати веб-трафік, але пошта до нього доходити не буде. Докладний порядок налаштування описано у статті як налаштувати MX-записи для пошти.
Протокол SMTP: передавання між серверами
Передавання листа між серверами відбувається протоколом SMTP (Simple Mail Transfer Protocol). Сервер-відправник відкриває з'єднання із сервером-отримувачем і обмінюється з ним командами відкритим текстом: хто відправник, хто отримувач, і, нарешті, сам вміст листа.
HELO mail.example.com
MAIL FROM: sender@example.com
RCPT TO: recipient@example.org
DATA
Subject: Тема листа
Текст листа.
.
QUIT
Для приймання пошти сервер слухає порт 25, а для відправлення з перевіркою автентичності клієнти частіше використовують порт 587 із шифруванням STARTTLS. Налаштування власного сервера на основі Postfix описано у статті налаштування Postfix для SMTP.
Перевірки автентичності: SPF, DKIM, DMARC та PTR
Перед тим як покласти лист у скриньку, сервер-отримувач перевіряє, чи не підроблений відправник, і ця перевірка сьогодні важливіша за фільтр за ключовими словами у темі листа. SPF-запис у DNS перелічує сервери, яким дозволено надсилати пошту від імені домену. DKIM додає до листа цифровий підпис, який можна перевірити публічним ключем із DNS. DMARC пояснює, що робити з листом, якщо перевірки SPF чи DKIM не пройшли. Окремо перевіряється зворотний DNS-запис (PTR) IP-адреси сервера, що надсилає пошту, — він повинен збігатися з іменем сервера, інакше багато поштових служб вважають лист підозрілим. Порядок налаштування зворотної зони — у статті налаштування зворотного запису PTR.
Порівняння етапів доставки листа
| Етап | Що відбувається | Технологія |
|---|---|---|
| Надсилання | Клієнт передає лист вихідному серверу | SMTP, порт 587 |
| Пошук маршруту | Сервер запитує MX-запис домену отримувача | DNS, запис MX |
| Передавання між серверами | Лист переходить на сервер отримувача | SMTP, порт 25 |
| Перевірка автентичності | Звіряються SPF, DKIM, DMARC та PTR | DNS-записи |
Що робити, якщо листи не доходять
- Перевірте, що MX-запис домену вказує на чинний поштовий сервер.
- Переконайтеся, що в DNS є коректний SPF-запис із вашим сервером відправлення.
- Перевірте, чи підписуються вихідні листи DKIM-ключем.
- Погляньте, чи збігається зворотний запис PTR IP-адреси сервера з його іменем.
- Перевірте чергу на вихідному сервері — лист може застрягти через тимчасову помилку отримувача.
Часті питання
Чому лист доходить із затримкою у декілька хвилин?
Між серверами лист може тимчасово затримуватися у черзі, якщо приймаючий сервер недоступний або відповідає повільно: відправник робить повторні спроби за розкладом, і затримка у декілька хвилин — звичайна поведінка, а не помилка.
Чи можна приймати пошту без власного поштового сервера?
Так, MX-запис домену можна спрямувати на зовнішній поштовий сервіс, і тоді всю обробку листів візьме на себе стороння платформа, а домен залишиться вашим.
Чим відрізняється SPF від DKIM?
SPF перевіряє, з якої IP-адреси прийшов лист, звіряючи її зі списком дозволених серверів, а DKIM перевіряє, що вміст листа не змінився у дорозі, за допомогою цифрового підпису.