Заварка для чайников
M A IL FROM: k o s h e w o y @ m a il.ru
Следующей командой определяется адрес получателя:
RCPT Т О : s t r e ln ik o v @ m t v . r u
После того как определен отправитель и получатель поч-
тового сообщения, можно отправлять последнее:
D ATE
Команда
d a t a
вводится без параметров и идентифициру-
ет начало ввода почтового сообщения. Сообщ ение вводит-
ся до тех пор, пока не будет введена строка с точкой в пер-
вой позиции. С огласно стандарту почтового сообщ ения
R FC822, отправитель передает заголовок и тело сообщения,
которые разделены пустой строкой. Сам протокол SMTP не
накладывает каких-либо ограничений на информацию, кото-
рая заключена между командой
d a t a
и
. в первой позиции
последней строки. Приведем пример обмена сообщениями
при дисциплине отправки почты:
S : M A IL FROM: k o s h e w o y @ m a il.ru
R : 250 Ok
S : RCPT T O : s t r e ln ik o v @ m t v .r u
R : 250 Ok
S : D ATA
R : 354 s t a r t m a il i n p u t ; end w it h < C R LF> . <CRLF>
S : Э то т е к с т п и сьм а ! ! !
S : -
\
R : 250 Ok
Если вы заметили, после некоторых команд smtp-сервер
выдает трехзначные числа — это «реакция» сервера на ва-
ши действия В этих цифрах отображаются ошибки, замеча-
ния, сообщения и т.д. и т.п. К этим «цифрам» мы вернемся
еще не раз.
Другой дисциплиной, определенной в протоколе SMTP, яв-
ляется п е р е н а пр а в л е н и е п о ч то в о го со о б щ е н и я (fo rw a rd in g ].
Если получатель не найден, но известно его местоположе-
ние, то сервер может выдать сообщение:
R : 251 U s e r n o t l o c a l ; w i l l f o r w a r d t o < u se [email protected] d o m a in .
dom ain>
Если сервер способен лишь сделать предположение о
дальнейшей рассылке, то ответ будет несколько иным:
R : 551 U s e r n o t l o c a l ; p le a s e t r y < u se [email protected] d o m a in .
dom ain>
Верификация и расширение адресов составляют д и сц и п -
л и н у вериф икац ии.! В ней используются команды
v r f y и е х -
p n .
По команде
VRFY
сервер подтверждает наличие или от-
сутствие указанного пользователя-
S : VRFY koshew o y
R : 2 5 0 -K o s h e w o y D m itr y < k o s h e w o y @ m a il.ru >
Используя команду
e x p n , м о ж н о
получить список местных
пользователей.
S : EXPN E x a m p le -p e o p le
R : 2 5 0 -K o s h e w o y D m it r y <k o s h e w o y @ m a il.ru >
R : 2 5 0 -M a r ia <m a r ia @ m a il.r u >
В список дисциплин, разрешенных протоколом SMTP, входит,
кроме отправки почты, еще и прямая рассылка сообщений. В
этом случае сообщение будет отправляться не в почтовый ящик,
а непосредственно на терминал пользователя, если пользова-
тель в данный момент находится за своим терминалом. Прямая
рассылка осуществляется по команде
SEND,
которая имеет та-
кой же синтаксис, как и команда
m a i l .
Кроме
s e n d
прямую рас-
сылку осуществляют
s o m l
(Send or Mail) и
s a m l
(Send and Mail).
Назначение этих команд легко понять из их названия.
Для инициализации канала обмена почтой и его закры-
тия используются команды
h e l o
и
q u i t
соответственно. П ер-
вой командой сеанса должна
быть
команда
h e l o .
Протокол допускает рассылку почтовых сообщений в ре-
жиме оповещения. Для этой цели отправитель в адресе по-
лучателя может указать несколько пользователей или груп-
повой адрес. Обычно программное обеспечение SMTP вы-
бирает эту информацию из заголовка почтового сообщения
и на ее основе формирует параметры команд протокола.
Если сообщение по какой-либо причине не может быть
разослано, получатель формирует об этом сообщение:
S : M A IL FROM: о
R : 250 Ok
S : RCPT Т О : < @ h o s t. d o m a in : JO E @ h o s t. dom ain>
R : 250 Ok
S : D ATA
R : 354 se n d th e m a il d a t a , end w it h .
S : D a te 23 O c t 95 1 1 :2 3 :3 0
S : F ro m : SM TP ® rem ote. do m ain
S : T o : <JO E @ h o s t. d o m a in >
S :
S : U n d e liv e r e d m e s s a g e . Y o u r m essage l o s t . 550 No
s u c h u s e r .
S : .
При использовании доменных имен следует использовать
канонические имена, т.к. некоторые системы не могут опре-
делить синоним по базе данных nam ed.
В дополнение к перечисленным выше дисциплинам про-
токол позволяет отправителю и получателю меняться роля-
ми
др уг
с другом. Происходит это по команде
t u r n .
Для отладки или проверки соединения по SMTP можно ис-
пользовать telnet. Для этого вслед за адресом машины следу-
ет ввести номер порта — для примера, введите в командной
строке (П у с к > Выполнить
): t e l n e t s m tp . s v i t o n l i n e . com 25.
25 порт используется в Интернете для обмена сообщ е-
ниями по протоколу SMTP. В интерактивном режиме пользо-
ватель сам изображает клиента SMTP и может посмотреть
реакцию удаленной машины на его действия.
Фермат пвчтового сообщения RFC-822
При обсуждении примеров отправки и получения сооб-
щений уже упоминался формат почтового письма. Разберем
его подробнее. Ф орм ат почтового интернет-сообщения оп-
ределен в документе R F C -822 (S ta n d a rd fo r ARP A In te rn e t Text
M e ssa g e ] Это довольно большой документ объемом в 47 стро-
ниц маш инописного текста (найти его полный вариант мне
не удалось, кто найдет — напишите), поэтому рассмотрим
формат сообщения на примерах. Почтовое сообщение со-
стоит из трех частей: ко н в е р та , за го л о в ка и тела с о о б щ е -
ния. Пользователь видит заголовок и тело сообщения. Кон-
верт используется только программами доставки. Заголовок
всегда находится перед телом сообщения и отделен от него
пустой строкой. RFC-822 регламентирует содержание заго-
ловка сообщения. Заголовок состоит из полей. Поля состо-
ят из им ени поля и со д е р ж а н и я поля. Имя поля отделено от
содержания символом :. Минимальный набор — поля
D a te ,
From , с с
или
т о ,
например:
D a te : 26 A u g 76 1429 ED T
F ro m : J o n e s @ R e g is t r y .o r g
с с :
или
D a te : 26 A u g 76 1429 ED T
F ro m : J o n e s @ R e g is t r y .o r g
T o : S m it h @ R e g is t r y .o r g
Поле
D a te
определяет дату отправки сообщения, поле
F r o m
— отправителя, а поля
с с
и
т о
— получателя(ей). Чаще
заголовок содержит дополнительные поля:
D a te : 26 A ug 76 1429 ED T
F ro m : Д я дя BacH<V a s y a @ d o m e n .o rg >
S e n d e r : [email protected] SHOST
T o : k o s h e w o y @ m a il.ru
M e s s a g e -ID : <4 2 3 1 .6 2 9 .X Y z i-W h a [email protected] d o m e n .o rg >
В данном случае поле
S e n d e r
указывает, что дядя Вася
не является автором сообщения. О н только переслал сооб-
щение, которое получил от
Поле
M e s s a g e -ID
содержит уникальный идентификатор сообщения и использу-
ется программами доставки почты. Следующее сообщение
демонстрирует все возможные поля заголовка:
D a te : 27 A u g 7 6 0932
F ro m : Дм итрий Кошевой < k o s h e w o [email protected] m a il. r u >
S u b je c t : Тем а письм а
S e n d e r : üepecnaHoOTCK)[email protected] en. r u
R e p ly - Т о : [email protected] r u
Т о : д я д я В а ся <V a s y a @ d o m e .ru >
c c : Im p o r ta n t f o l k s :
Tom Softwood <B [email protected] Tree.R oot>, "S a m Irv in g "@ O th e r-H o s t;,
S ta n d a rd D i s t r i b u t i o n : / m a in / d a v is / p e o p le / s ta n d a rd @
O t h e r -H o s t
Ik.
Окончание на crp. 40
МОЙ КОМПЬЮТЕР
предыдущая страница 35 Мой Компьютер 2004 43 читать онлайн следующая страница 37 Мой Компьютер 2004 43 читать онлайн Домой Выключить/включить текст