amarao (amarao_san) wrote,
amarao
amarao_san

exim4: модель маршрутизации

В exim4 драйверы маршрутизации выстроены в виде цепочки. Сообщение проходит по цепочке, при этом каждый маршрутизатор проверяет сообщение по каким-то критериям, и либо принимает сообщение, либо игнорирует, в этом случае сообщение передаётся следующему в списке маршрутизатору (Маршрутизатор так же может "скопировать" сообщение себе, передав его дальше и приняв в обработку, а так же отклонить без передачи далее по списку). Таким образом, если два маршрутизатора имеют пересекающиеся критерии, обрабатывать сообщение будет тот, который в цепочке первый (если только первый не разрешит второму посмотреть на письмо).

В чём-то эта модель напоминает обычные правила обработки IP-пакетов в ACL'ах, netfilter и т.д.: сообщение может быть not match, match, а если match, то оно может пойти в обработку дальше, быть accepted или rejected. С той разницей, что IP-пакеты редко раздваиваются.

Если сообщение не было принято хотя бы одним маршрутизатором (т.е. прошло всю цепочку), то оно отвергается (bounce).


(Я пишу очевидные вещи - кому-то интересно прочитать, а кому-то интересно поправить, если я криво прочитал и понял мануал).
Tags: exim4
Subscribe

  • systemd-networkd, netlink и arp флуд

    Нереально странный баг пофикшен с помощью eBPF затычки. Для меня большой неожиданностью является реакция на него.…

  • Rust soundness

    Каждый раз, когда я сталкиваюсь с маленькими "но" в Rust'е, это ощущение тщательной продуманности. Например, простейшие fold-функции для итераторов:…

  • still_ntp

    В ходе локального мозгового штурма у меня родилась суперидея. Надо написать ntp сервер, который может отдавать указанную дату. Т.е. сказали при…

  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 6 comments