Конверт (RFC822 и далее) - это только внешние границы.Веселье происходит в рамках протокола ESMTP.
С точки зрения простого SMTP каждый получатель (RCPT TO) запускает новое сообщение в очереди исходящих сообщений - по одному для каждого получателя.Затем он доставлен.
Теперь давайте поговорим о доставке: Предположим, я попросил доставить на user@host.com.Вот как это работает:
Адрес host.com запрашивается в DNS, в частности, для записи типа MX (Mail Exchanger).(nslookup -q = MX должен показать вам, как это делается)
Они отсортированы (сначала по наименьшему номеру), и доставка выполняется в циклическом порядке с использованием этого вида.
Когдаон доставляется на любой узел записи MX, готово.Однако причина, по которой существует несколько узлов MX, связана с необходимостью ставить почту в очередь, например, при отключениях.Таким образом, более высокий хост MX, скорее всего, просто поставит в очередь и не позволит исходному серверу хоста отскочить и истечет срок действия сообщения (и именно это происходит, когда сообщение застревает на данном хосте - вы можете отследить его через заголовки)
Каждый сервер имеет свои собственные правила доставки, однако, когда вы перенаправляете на хост, который пытался доставить себя по цели MX, мы называем это Smart Host.Хост знает, стоит ли ему ставить в очередь для другого хоста (ретрансляция) или доставлять локально через приветствие SMTP (HELO).
Также: одно SMTP-соединение позволит вам отправлять несколько сообщений, даже если у вас естьполучателям будет происходить только одно соединение (хотя в почтовой очереди два сообщения)