Тема «Адрес электронной почты часть 12226» выглядит как обращение к конкретному фрагменту документации, спецификации (например, RFC) или внутренней нумерации системы․ Однако в общепринятых интернет-стандартах (RFC 5322, RFC 6531, RFC 5321) нумерация «частей» адреса не используется․ Адрес электронной почты — это единая строка, состоящая из двух главных логических блоков, разделенных символом @ (коммерческое «эт»):
- Локальная часть (Local-part) — то, что стоит до символа @․
- Доменная часть (Domain) — то, что стоит после символа @․
В данной статье мы подробно разберем анатомию email-адреса, правила формирования каждой части, частые ошибки и современные стандарты интернационализации․
Локальная часть (Local Part) — «Имя пользователя»
Локальная часть идентифицирует конкретный почтовый ящик внутри домена․ Максимальная длина — 64 октета (символа)․
Допустимые символы (согласно RFC 5322)
В локальной части могут использоваться:
- Буквы латинского алфавита:
a–z, A–Z(регистрозависимы технически, но большинство провайдеров приводят к нижнему регистру)․ - Цифры:
0–9․ - Специальные символы:
! # $ % & ' * + ー / = ? ^ _ ` { | } ~․ - Точка (․), с ограничениями (см․ ниже)․
Критические правила использования точки (․)
- Точка не может быть первым или последним символом локальной части․
- Неправильно:
․ivan@domain․com,ivan․@domain․com
- Неправильно:
- Две точки не могут идти подряд․
- Неправильно:
ivan․․petrov@domain․com
- Неправильно:
Кавыченные строки (Quoted Strings)
Стандарт позволяет использовать любые символы (включая пробелы, скобки, двоеточия), если локальная часть взята в двойные кавычки․ Внутри кавычек спецсимволы экранируются обратным слешем․
"ivan petrov"@domain․com (валидно, но крайне не рекомендуется)
"special"char"@domain․com (валидно)
Практика: Почти ни один современный почтовый сервис не позволяет регистрировать такие адреса, а спам-фильтры часто блокируют письма на них․ Избегайте кавычек․
Чувствительность к регистру (Case Sensitivity)
Согласно стандарту RFC 5321, локальная часть может быть чувствительна к регистру (Ivan@domain․com ≠ ivan@domain․com)․ Однако на практике 99․9% почтовых серверов (Gmail, Yandex, Outlook, корпоративные Exchange/Postfix) игнорируют регистр и нормализуют его к нижнему․
Субадресация (Plus Addressing / Subaddressing)
Многие провайдеры (Gmail, Outlook, Fastmail, Yandex 360) поддерживают тег после знака +:
ivan+newsletter@domain․com
ivan+shopping@domain․com
Письма придут на ivan@domain․com, но тег позволяет фильтровать входящие и отслеживать утечки баз данных․ Важно: не все сайты принимают + в формах регистрации (хотя стандарт это разрешает)․
Доменная часть (Domain Part) — «Адрес сервера»
Доменная часть указывает на почтовый сервер (MX-запись), который принимает почту․ Максимальная длина — 255 октетов (в сумме с локальной частью общий лимит адреса, по RFC 3696 / 320 по RFC 5321)․
Структура домена
Домен состоит из меток (labels), разделенных точками․ Например: mail․example․com․
- TLD (Top Level Domain):
com,ru,org,online․ - Second Level Domain:
example․ - Subdomain:
mail․
Правила написания меток (LDH Rule — Letters, Digits, Hyphen)
- Длина каждой метки: 1–․
- Допустимые символы: латинские буквы (a-z), цифры (0-9), дефис (-)․
- Метка не может начинаться или заканчиваться дефисом․
- Неправильно:
-example․com,example-․com
- Неправильно:
- Регистр не важен:
EXAMPLE․COM=example․com․
Интернационализированные доменные имена (IDN / EAI)
Современные стандарты (RFC 6531, RFC 6532) позволяют использовать в домене нативные алфавиты (кириллицу, иероглифы, арабскую графику)․
- Пример:
иван@пример;рф - Для передачи в DNS и SMTP протоколах используется кодировка Punycode (префикс
xn--)․пример․рф→xn--e1afmkfd․xn--p1ai
- Поддержка IDN (Email Address Internationalization) требуется и у отправителя, и у получателя․ Старые системы могут не поддерживать такие адреса․
IP-адрес вместо домена (Domain Literal)
Стандарт позволяет указывать IP-адрес сервера в квадратных скобках:
user@[192․168․1․1]
user@[IPv6:2001:db8::1]
Это используется крайне редко (внутренние системы, тестирование) и часто блокируется антиспам-фильтрами․
Общая длина и ограничения
| Параметр | Лимит (RFC 5321/3696) | Примечание |
|---|---|---|
| Локальная часть | 64 октета | До @ |
| Доменная часть | 255 октетов | После @ |
| 64 + 1 (@) + 255 = 320 теоретический макс, но путь возврата (Return Path) ограничивает 254 |
Валидация email-адресов: Регулярные выражения vs Реальность
Написание идеального RegEx для RFC 5322 — задача крайне сложная (регулярка на сотни строк)․ Для веб-форм лучше использовать простой, прагматичный подход:
<input type="email" name="email" required>
Браузер использует встроенную валидацию (упрощенную по сравнению с RFC, но покрывающую 99․9% реальных кейсов)․
Пример простого RegEx для бэкенда (проверка формата, а не существования)
^[a-zA-Z0-9․!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:․[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$ Единственный надежный способ проверки — Верификация
Никакой RegEx не подтвердит, что ящик существует и принимает почту․ Необходимо отправить письмо с кодом подтверждения (OTP) или ссылкой․
Частые ошибки и мифы
- Миф: «Точка в Gmail создает новый ящик»․ Реальность: Gmail игнорирует точки в локальной части (
i․van@gmail․com=ivan@gmail․com)․ Это фича конкретного провайдера, не стандарт․ - Ошибка: Блокировка знака «+» в формах․ Это ломает субадресацию․ Разрешайте
+,-,_,․․ - Ошибка: Жесткая проверка TLD (только ․com, ․ru)․ Существует более 1500 зон (․online, ․tech, ․xyz, ․рф, ․дети)․ Проверяйте синтаксис, а не список зон․
- Ошибка: Отклонение IDN-адресов (кириллица)․ Если ваш бизнес работает в РФ/СНГ, поддержка
@пример․рфобязательна․ - Миф: «Локальная часть нечувствительна к регистру»․ Стандарт говорит об обратном․ Всегда нормализуйте к нижнему регистру при сохранении в БД, но сохраняйте оригинал для отображения, если пользователь ввел
Ivan․Ivanov․
Безопасность и приватность
Обфускация (Маскировка) на сайтах
Чтобы защитить адреса от скрейперов спамеров:
- Используйте
mailto:ссылки с JS-декодированием․ - Заменяйте
@на[at]или(собака)в открытом тексте․ - Используйте Cloudflare Email Obfuscation или аналогичные сервисы․
Алиасы и форвардинг
Для регистрации на сомнительных ресурсах используйте:
- Субадресацию (
ivan+spam@domain․com)․ - Сервисы временных почт (Temp Mail, 10 Minute Mail) — для разовых действий․
- Сервисы алиасов (SimpleLogin, AnonAddy, Firefox Relay) — для постоянного использования без раскрытия основного ящика․
Резюме: Чек-лист корректного email-адреса
- Содержит ровно один символ @ (не в начале, не в конце)․
- Локальная часть ≤ , домен ≤ , всего ≤ ․
- Локальная часть: без пробелов (если не в кавычках), без двойных точек, не начинается/не заканчивается точкой․
- Домен: валидные метки (a-z, 0-9, -), нет дефисов на краях меток, есть хотя бы одна точка (для FQDN), валидный TLD․
- Поддержка UTF-8 (IDN/EAI) для международных доменов и локальных частей (например,
иван@пример․рф)․