Чтение онлайн

на главную

Жанры

TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)

Фейт Сидни М.

Шрифт:

Когда почта достигает точки назначения, пользовательский агент может самостоятельно добавить строку, указывающую на исходного отправителя.

Приведенный ниже пример поясняет причину добавления таких строк к сообщению. Верхняя строка была вставлена пользовательским агентом получателя. Она содержит сведения об источнике сообщения и о времени его поступления в почтовый ящик.

Идентификатор сообщения (Message-Id) в нижней части примера был добавлен первым почтовым агентом пересылки, который начал обрабатывать это сообщение.

Временные метки нужно анализировать снизу вверх, что позволит понять путь следования сообщения от diall31.mbnet.mb.ca к access.mbnet.mb.ca, далее к bulldog.cs.yale.edu и наконец к pascal.math.yale.edu.

From vsankar@ForeTell.CA Thu Aug 17 14:36:19 1995

Received: from BULLDOG.CS.YALE.EDU by PASCAL.MATH.YALE.EDU via SMTP;

Thu, 17 Aug 1995 14:36:19 -0400

Received: from access.mbnet.mb.ca by bulldog.CS.YALE.EDU via SMTP;

Thu, 17 Aug 1995 14:31:47 -0400

Received: from ftl6 (dial131.mbnet.mb.ca) by access.mbnet.mb.ca with SMTP id

AA02060

(5.67b/IDA-1.4.4); Thu, 17 Aug 1995 14:31:33 -0500

Date: Thu, 17 Aug 1995 14:31:33 -0500

Message-Id: <199508171831.AA02060@access.mbnet.mb.ca>

16.8

Отброшенная почта

Иногда бывает невозможно переслать почту в точку назначения. Чаще всего это происходит из-за неправильного ввода идентификатора получателя. Почта, которая не может быть доставлена, отсылается назад отправителю и называется отброшенной (bounced mail).

16.9 Команды SMTP

Сценарий из раздела 16.6.1 содержал наиболее часто используемые команды SMTP. Полный набор команд SMTP представлен в таблице 16.1.

Таблица 16.1 Команды SMTP

Команда Описание
HELO Идентифицирует отправителя для получателя.
MAIL FROM Начало почтовой транзакции и указание на источник сообщения.
RCPT ТО Идентифицирует отдельного получателя. Последовательность таких команд позволяет указать несколько получателей. Получатель по возможности проверяет правильность указанного имени и выводит результат проверки в ответном сообщении. Такая проверка не имеет смысла на промежуточных хостах. Если позже окажется, что некоторый получатель указан некорректно, обратно отправляется краткое сообщение об ошибке.
DATA Отправитель готов передать строки текста. Каждая строка завершается <CR> <LF>. Максимальная длина строки, включая <CR><LF>, составляет 1000 символов. Реализации SMTP должны обеспечивать отправку и получение сообщений длиной до 64 К/байт. Желателен максимальный размер, поскольку почта часто используется для копирования файлов.
RSET Прерывает текущую почтовую транзакцию, удаляя всю информацию о ней у отправителя и получателя.
NOOP Запрашивает у партнера положительный ответ.
QUIT Запрашивает у партнера положительный ответ и закрытие соединения.
VRFY Запрашивает у партнера подтверждение правильности указанного имени получателя.
EXPN Запрашивает у партнера подтверждение соответствия имени получателя списку почтовой рассылки (mailing list). Если указанное имя находится в списке, нужно возвратить сведения о членстве в группе данного почтового списка.
HELP Запрашивает у партнера информацию об используемой реализации, например о списке поддерживаемых команд.
Описанные в стандарте, но редко реализуемые или используемые команды
TURN Запрос смены ролей получателя и отправителя. Партнер может отказаться выполнить эту команду.
SEND Если получатель зарегистрирован в системе назначения — направить сообщение прямо на терминал получателя.
SOML Send or Mail — послать или отправить. Если получатель зарегистрирован в системе назначения — направить сообщение прямо на терминал получателя, иначе отправить сообщение как почту локальной системы.
SAML Send and Mail — послать и отправить. Доставить в почтовый ящик получателя. Если пользователь зарегистрирован, то доставить и на его терминал.

Команды пересылаются как 4-символьные мнемонические названия. Многие команды сопровождаются параметрами.

Сеанс между партнерами SMTP напоминает соединение telnet в режиме NVT: используются те же самые правила, например пересылаются 7-битные символы ASCII в виде 8-разрядных байтов, а каждая строка оканчивается символами перевода строки и возврата каретки.

16.10 Коды ответов

Коды ответов SMTP имеют структуру, подобную кодам ответов FTP. Код состоит из трех цифр. Первая цифра указывает статус команды:

1yz Положительный предварительный (Positive Preliminary) ответ (в настоящее время в SMTP не используется)
2yz Положительный дополненный (Positive Completion) ответ
3yz Положительный промежуточный (Positive Intermediate) ответ
4yz Кратковременный отрицательный (Transient Negative) ответ ("повторить попытку")
5yz Постоянный отрицательный (Permanent Negative) ответ

Вторая цифра классифицирует сам ответ:

x0z В ответ на возникновение проблемы указывает на синтаксическую ошибку или неизвестную команду
x1z Ответ на информационный запрос (например, help)
x2z Ответ с информацией о соединении
x3z В настоящее время не определен
x4z В настоящее время не определен
x5z В ответе указываются сведения о почтовой системе получателя

Значение третьей цифры меняется в зависимости от команды и первых двух цифр кода.

16.11 Формат сообщений Интернета

Стандарт для формата сообщений Интернета определен в RFC 822. Сообщение состоит из (в порядке списка):

■ Набора полей заголовка (многие из них необязательны)

■ Пустой строки

■ Текста, или тела (body), сообщения

Поле заголовка имеет вид:

Имя_поля: Содержимое_поля

Имена полей и их содержимое записываются символами ASCII. Существуют разнообразные поля заголовка. К наиболее распространенным можно отнести:

Received (получено)

Date (дата)

From (от)

То (кому)

cc (система cc-Mail)

bcc (blind cc — неявный формат cc-Mail)

Message-Id (идентификатор сообщения)

Reply-To (кому ответить)

Sender (отправитель, если он не является автором сообщения)

In-Reply-To (в ответ на)

References (ссылка на идентификатор более раннего сообщения)

Keywords (ключевые слова для поиска)

Subject (тема)

Comments (комментарии)

Encrypted (шифровано)

Можно ожидать, что каждый заголовок сообщения содержит поля Date, From и To. Добавленные поля (received field) формируются на основе временных меток, собираемых при переходе через промежуточные почтовые агенты пересылки. По большей части почтовое программное обеспечение может создавать идентификатор, который вставляется в сообщение. Например:

Поделиться:
Популярные книги

Помещица Бедная Лиза

Шах Ольга
Любовные романы:
любовно-фантастические романы
6.40
рейтинг книги
Помещица Бедная Лиза

Магия чистых душ 3

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Магия чистых душ 3

В зоне особого внимания

Иванов Дмитрий
12. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
В зоне особого внимания

Кровь на эполетах

Дроздов Анатолий Федорович
3. Штуцер и тесак
Фантастика:
альтернативная история
7.60
рейтинг книги
Кровь на эполетах

Убивать чтобы жить 3

Бор Жорж
3. УЧЖ
Фантастика:
героическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 3

Тринадцатый V

NikL
5. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый V

Антимаг его величества. Том III

Петров Максим Николаевич
3. Модификант
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Антимаг его величества. Том III

Real-Rpg. Еретик

Жгулёв Пётр Николаевич
2. Real-Rpg
Фантастика:
фэнтези
8.19
рейтинг книги
Real-Rpg. Еретик

Возвышение Меркурия. Книга 2

Кронос Александр
2. Меркурий
Фантастика:
фэнтези
5.00
рейтинг книги
Возвышение Меркурия. Книга 2

Прометей: повелитель стали

Рави Ивар
3. Прометей
Фантастика:
фэнтези
7.05
рейтинг книги
Прометей: повелитель стали

Бездомыш. Предземье

Рымин Андрей Олегович
3. К Вершине
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Бездомыш. Предземье

Законы Рода. Том 3

Flow Ascold
3. Граф Берестьев
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Законы Рода. Том 3

Возвышение Меркурия. Книга 4

Кронос Александр
4. Меркурий
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
5.00
рейтинг книги
Возвышение Меркурия. Книга 4

Я – Орк. Том 5

Лисицин Евгений
5. Я — Орк
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Я – Орк. Том 5