Традиционно Unix mail
и производные (и многие другие инструменты Unix) используют интерфейс /usr/bin/sendmail
, предоставляемый почти всеми агентами по пересылке почты (MTA - postfix, exim, курьерская и, конечно же, sendmail).
То есть программа mail
не говорит ни по какому сетевому протоколу - она передает сообщение в sendmail
через stdin, и позволяет ей обрабатывать фактическую доставку. (Это восходит к тем временам, когда некоторая почта использовала SMTP, некоторая использовала UUCP, некоторая использовала BITNET…).
Как только сообщение поставлено в очередь через sendmail
, MTA обрабатывает фактическую передачу сообщения, будь то через SMTP или что-то еще. В зависимости от конфигурации, он может либо соединяться напрямую с MTA получателя, либо пересылать почту через другой хост (также называемый smarthost).
Прямое соединение более распространено на серверах; ретрансляция через smarthost более распространена на персональных компьютерах на домашних соединениях - ретрансляция через Gmail или ISP/рабочую учётную запись электронной почты необходима, чтобы избежать “динамических IP” анти-спам фильтров.
(Некоторые MTA, такие как esmtp
или nullmailer
, построены специально для домашних пользователей и всегда используют ретранслятор. Они не поддерживают получение почты и намного легче работают с ресурсами).
mailx → [/usr/bin/sendmail] → local MTA queue → [SMTP] → recipient MTA → recipient inbox
Другие программы, в основном удобные графические клиенты, такие как Thunderbird или Outlook, always подключаются непосредственно к ретрансляционному/среднему SMTP-серверу (опять же, обычно Gmail или ISP/рабочему SMTP-серверу), который передает сообщение от вашего имени. Поддержка
Внутренний SMTP присутствует в heirloom-mailx
, но не в традиционном bsd-mailx
.
mailx → [/usr/bin/sendmail] → local MTA queue → [SMTP] → Gmail or ISP/work servers → [SMTP] → recipient MTA → recipient inbox
Третий метод - подключение непосредственно к серверу получателя - почти всегда не используется, и ни один MUA не поддерживает его. На персональных компьютерах его использование приведет к тому, что ваше сообщение будет отклонено (с зараженных IP-адресов домашнего пользователя отправляется большое количество спама).
app → [SMTP] → Gmail or ISP/work servers → [SMTP] → recipient MTA → recipient inbox