RFC: 5321
Оригинал: Simple Mail Transfer Protocol
Предыдущие версии: RFC 772, RFC 780, RFC 788, RFC 821, RFC 974, RFC 1425, RFC 1651, RFC 1869, RFC 2821
Категория: Проект стандарта
Дата публикации:
Автор:
Перевод: Николай Малых

Приложение C. Маршруты Source Route

Исторически поле <reverse-path> содержало в source routing список промежуточных хостов и имя почтового ящика отправителя. Исторически, первым в списке <reverse-path> указывался хост, подавший команду MAIL; сегодня не следует использовать маршруты source route в обратном пути. Подобно этому поле <forward-path> может быть списком хостов source routing и адреса получателя. Однако, в общем случае, в поле <forward-path> следует включать только почтовый ящик и доменное имя получателя, отдавая решение задачи маршрутизации почты на откуп системе DNS. Использование явных маршрутов осуждается (см. Приложение F.2) — хотя серверы и должны быть готовы к получению и обработке таких маршрутов (см. 3.3 и Приложение F.2), клиентам не следует передавать явные маршруты и этот параграф включен в спецификацию только для обеспечения преемственности. Данная спецификация несколько отличается от RFC 821 для предотвращения действий серверов, приводящих к путанице последующие серверы и клиентов, которые не ожидают полной реализации source route.

Для целей трансляции прямой путь может быть маршрутом source route в форме @ONE,@TWO:JOE@THREE, где ONE, TWO, THREE должны быть полными доменными именами. Такая форма используется для того, чтобы можно было отличить адреса от маршрутов. Почтовый ящик (в данном случае, JOE@THREE) представляет собой абсолютный адрес, а маршрут — информацию для доставки. Эти понятия не следует путать.

При использовании source route требования RFC 821 и приведенный ниже текст вступают в противоречие в части механизма создания и обновления прямого пути. Сервер SMTP, достигнутый по маршруту source route (например, его доменное имя появляется первым в списке прямого пути), должен удалить свое доменное имя из прямых путей, где это имя появляется, до пересылки сообщения и может удалить всю остальную информацию source route. В соответствии с данной спецификацией серверу не следует менять обратный путь.

Отметим, что прямой и обратный пути появляются в командах и откликах SMTP, но не являются необходимыми в сообщении (т. е., нет необходимости включения таких путей и особенно описанного здесь синтаксиса в поля To:, From:, CC: и т. п.). И наоборот, для серверов SMTP недопустимо получать информацию на основе этих полей при окончательной доставке сообщения.

Когда, несмотря на приведенные выше рекомендации, список хостов присутствует, этот список является «обратным» маршрутом source route и показывает, что почта транслировалась через каждый хост в списке (первым в списке указан последний по времени транслятор). Этот список используется как source route для возврата отправителю уведомлений о невозможности доставки. Если в нарушение приведенных здесь рекомендаций хост-транслятор добавляет себя в начало списка, он должен использовать имя, которое известно в транспортной среде, куда транслируется почта, а не в среде, откуда почта поступила (если эти имена различаются). Отметим, что такие ситуации могут с легкостью возникать из случаев, когда некоторые транслирующие хосты добавляют свои имена в обратный путь source route, а другие не делают этого, создавая разрывы в маршрутном списке. Это другая причина, по которой серверам при необходимости возврата сообщения следует полностью игнорировать source route и просто использовать домен, указанный в Mailbox.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.