Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИТ.doc
Скачиваний:
18
Добавлен:
27.11.2019
Размер:
1 Мб
Скачать
☆

8.3.3 Некоторые команды smtp

Обязательные команды (команды которые должны присутствовать всегда)

HELO - Открытие сеанса связи (hello).

MAIL - Начинает почтовую транзакцию, которая завершается передачей данных в один или несколько почтовых ящиков (mail).

RCPT - Идентифицирует получателя почтового сообщения (recipient).

Небязательные команды

DATA - Строки, следующие за этой командой, рассматриваются получателем как данные почтового сообщения. В случае SMTP, почтовое сообщение заканчивается комбинацией символов: CRLF-точка-CRLF.

RSET - Прерывает текущую почтовую транзакцию (reset).

NOOP - Требует от получателя не предпринимать никаких действий, а только выдать ответ ОК. Используется главным образом для тестирования.(No operation).

QUIT - Закрытие сеанса связи.

VRFY - Требует от приемника подтвердить, что ее аргумент является действительным именем пользователя.

SEND - Начинает почтовую транзакцию, доставляющую данные на один или несколько терминалов (а не в почтовый ящик).

SOML - Начинает транзакцию MAIL или SEND, доставляющую данные на один или несколько терминалов или в почтовые ящики.

SAML - Начинает транзакцию MAIL и SEND, доставляющие данные на один или несколько терминалов и в почтовые ящики.

EXPN - Команда SMTP-приемнику подтвердить, действительно ли аргумент является адресом почтовой рассылки и если да, вернуть адрес получателя сообщения (expand).

HELP - Команда SMTP-приемнику вернуть сообщение-справку о его командах.

TURN - Команда SMTP-приемнику либо сказать ОК и поменяться ролями, то есть стать STMP- передатчиком, либо послать сообщение-отказ и остаться в роли SMTP-приемника.

8.3.4 Синтаксис некоторых команд smtp

Команды, MAIL, SEND, SOML и SAML, имеют одинаковый синтаксис:

MAIL <пробел> FROM:<reverse-path> <carriage-return line-feed>

где:

<reverse path> (обратный адрес) указывает серверу, кому в случае ошибки отослать сообщение.

<carriage-return line-feed> (CRLF) возврат каретки.

Примечание: Команды SEND, SOML и SAML дополнительны и используются довольно редко.

Синтаксис RCPT похож на синтаксис команды MAIL:

RCPT <пробел> TO:<forward-path> <CRLF>

Однако, в отличие от MAIL, аргумент RCPT начинается со слова <ТО:>.

8.3.5 Некоторые коды ответов smtp

Каждая цифра в коде ответа имеет определенный смысл. Первая цифра означает, было ли выполнение команды успешно (2), неуспешно (5) или еще не закончилось (3). Как указано в приложении Е документа RFC 821, простой SMTP-клиент может анализировать только первую цифру в ответе сервера, и на основании ее продолжать свои действия. Вторая и третья цифры кода ответа разъясняют значение первой. Если вы разрабатываете SMTP-приложение, обязательно изучите конструкцию всех кодов SMTP-ответа.

211 Ответ о состоянии системы или помощь 214 Сообщение-подсказка (помощь) 220 <имя_домена> служба готова к работе 221 <имя_домена> служба закрывает канал связи 250 Запрошенное действие почтовой транзакции успешно завершилось 251 Данный адресат не является местным; сообщение будет передано по маршруту <forward-path> 354 Начинай передачу сообщения. Сообщение заканчивается комбинацией CRLF-точка-CRLF 421 <имя_домена> служба недоступна; соединение закрывается 450 Запрошенная команда почтовой транзакции не выполнена, так как почтовый ящик недоступен 451 Запрошенная команда не выполнена; произошла локальная ошибка при обработке сообщения 452 Запрошенная команда не выполнена; системе не хватило ресурсов 500 Синтаксическая ошибка в тексте команды; команда не опознана 501 Синтаксическая ошибка в аргументах или параметрах команды 502 Данная команда не реализована 503 Неверная последовательность команд 504 У данной команды не может быть аргументов 550 Запрошенная команда не выполнена, так как почтовый ящик недоступен 551 Данный адресат не является местным; попробуйте передать сообщение по маршруту <forward-path> 552 Запрошенная команда почтовой транзакции прервана; дисковое пространство, доступное системе, переполнилось 553 Запрошенная команда не выполнена; указано недопустимое имя почтового ящика 554 Транзакция не выполнена