Проблема с доставкой письма с большим количеством получателе

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение Za... » 2008-09-08 14:17:50

Проблема
Отправляют письмо где в поле кому указан 81 получатель. Отправляем через провайдера. Проблема вследующем что письмо не уходит. С меньшим количеством получателей уходит, а когда их пачка нет!

Если в перечисление пользаков висять наши получатели(нашего домена), то они сразу улетают, а другие так и остаются висеть в очереди.
Конфиг транспорта

Код: Выделить всё

remote_smtp:
  driver   = smtp
  connection_max_messages = 20
  tls_certificate=/etc/exim4/exim.crt
  tls_privatekey=/etc/exim4/exim.key
  headers_add   = "X-Descriptions: powered by www.lissyara.su, build Artem Za... \n X-Bounce-ID: $primary_hostname"
  hosts_avoid_esmtp   =  ${lookup mysql{INSERT IGNORE INTO `sended_list` \
         (`user_from`, `user_to`, `added_timestamp`, \
         `last_mail_timestamp`, `mail_count`) VALUES \
         (LCASE('${quote_mysql:$sender_address}'), \
         LCASE('${quote_mysql:$local_part@$domain}'), \
         UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), '1') ON DUPLICATE \
         KEY UPDATE `last_mail_timestamp` = UNIX_TIMESTAMP(), \
         `mail_count` = `mail_count` + 1}}
Конфиг роутера

Код: Выделить всё

goldentelecom:
  driver = manualroute
  domains = ! +local_domains
  transport = remote_smtp
  route_list = *  smtp.gldn.net
Лог

Код: Выделить всё

2008-09-08 14:50:46 1KceKU-00063D-3N <= murzakaeva@forestspb.ru H=(forest137) [192.168.1.100] P=esmtp S=7094 id=00dc01c911a1$2d4763f0$87d62bd0$@ru from <murz
akaeva@forestspb.ru> for 11041944@mail.ru 341598@mail.ru 69307@rambler.ru agemarvd@mail.ru agromash@khn.ru Alexey.Bogdanov@traktorodetal.ru amatveev@td.gzocm
.ru andyloyko@yahoo.com anna_enerprom@mail.ru av.bersenev@ssmtm.ru avers_hydraulic@mail.ru azpmaz@mail.ru baza-07@list.ru belaz-trade@bk.ru bktim@belmail.ru
chelarti@mail.ru dbt2@mail.ru distek1@rambler.ru frotec@mail.ru gcsplav@yandex.ru gena@mail.esoo.ru gidromir@list.ru gidro-omsk71@mail.ru Gidrosoyuz@yandex.r
u glavnmech@yandex.ru glavrukav@inbox.ru hydromarket@mail.ru isal@atnet.ru kadisheva@ocm.ru karcher@chp.ru klimov@hydrocomtk.ru kochetov@hydrocomplant.ru Kor
s-Tatyana@yandex.ru kubr@kubr.ru la.78@mail.ru lesotex1@kosnet.ru lests@atnet.ru lm70@mail.ru mail@scspecmash.com Marketing@npo-prostor.ru mayak@po-mayak.ru
megagidravlika@rambler.ru mehkomplekt-s@yandex.ru mnsbyt@radnet.ru montazhlux@mail.ru nefteplast@maik.ru nefteplast@mail.ru omt@tsgroup.ru omts@b-vrz.ru oood
iz@yandex.ru ots-2002@mail.ru Praktika@jiguli.ru promrvd@mail.ru promsnab-2000@mail.ru radik2100@yandex.ru RVD@mail.ru rvd@vth.ru rvdplus@fromru.com rvdplus@
nm.ru sales@td.gzocm.ru sales@vitriol-tpk.ru secr@utk.sozvezdie.biz serduk@hydravia.ru sleonov@umail.ru smatyuh@gmail.com Stroikompleks@bk.ru szllinin@expo-t
rade.ru tehnocom@tehnocom.net trak@e-sky.ru transoil-ufa@mail.ru ural-trak@tagnet.ru usenko@kubr.ru valian@list.ru vehi@kmtn.ru vkurakin@kld.lukoil.ru vladim
-art@yandex.ru vostokgidravlik@mail.ru VostokTehRezerv@yandex.ru vtcink@yandex.ru west-kom@onego.ru zaugarov@metacom.ru
....
....
....
2008-09-08 14:55:47 1KceKU-00063D-3N == 11041944@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smt
p.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == 341598@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smtp.
gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == 69307@rambler.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smt
p.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == agemarvd@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smt
p.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == agromash@khn.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smtp
.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == alexey.bogdanov@traktorodetal.ru <Alexey.Bogdanov@traktorodetal.ru> R=goldentelecom T=remote_smtp defer (110): Connec
tion timed out: SMTP timeout while connected to smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == amatveev@td.gzocm.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to
 smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == andyloyko@yahoo.com R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to
smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == anna_enerprom@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected t
o smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == av.bersenev@ssmtm.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to
 smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == avers_hydraulic@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected
 to smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == azpmaz@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smtp.
gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == baza-07@list.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smtp
.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
...
...
...
Стою в очереди За... булкой и кефиром

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35456
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение Alex Keda » 2008-09-08 14:34:53

ограничить число получателей.
если боавлены как скрытые - в bcc, то экзим умеет такие письма разбивать
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Re: Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение Za... » 2008-09-08 14:42:34

Были и скрытые, но тоже не отправлялись, а как ограничить число получателей, тупо сказать пользаку или exim-ом, если последним, то как!

А вообще может екзим разбить очередь на маленькие, если да то как.
Стою в очереди За... булкой и кефиром

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Re: Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение Za... » 2008-09-09 7:55:31

Прочитал в Доках по Exim:
....
Если сообщение содержит несколько различных адресов, все с теми же самыми характеристиками (например, тот же отправитель конверта), резольвящимися к тем же самым наборам хостов, в том же самом порядке, посылаются в одной SMTP транзакции, даже если они для различных доменов, не более чем позволяет установка опции “max_rcpts” в транспорте “smtp”, в случае чего они разделяются на группы содержащие не более чем “max_rcpts” адресов в каждой. Если “remote_max_parallel” - больше одного, каждая группа может быть послана в параллельных сессиях. Порядок хостов с идентичными значениями MX - не существеннен при проверке, могут ли адреса быть пакетными в этом способе.
....
У меня так ине получилось прикрутить

Код: Выделить всё

max_rcpts
remote_max_parallel
exim ругается

Код: Выделить всё

'option "max_rcpts" unknown'
Стою в очереди За... булкой и кефиром

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35456
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение Alex Keda » 2008-09-09 7:57:28

1. доке полтора года.
2. куда именно крутил и где вычитал?
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Re: Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение Za... » 2008-09-09 8:36:11

Крутил в транспорте, пробыл и в главной части, не получалось

Код: Выделить всё

remote_smtp:
  driver   = smtp
  connection_max_messages = 10
#  max_rcpts = 10
#  remote_max_parallel = 1
  tls_certificate=/etc/exim4/exim.crt
  tls_privatekey=/etc/exim4/exim.key
Вот тут читал:
http://www.lissyara.su/?id=1244#44.1
Стою в очереди За... булкой и кефиром

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Re: Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение Za... » 2008-09-09 9:08:37

В офф доке вот что написанно
30.1 Multiple messages on a single connection

The sending of multiple messages over a single TCP/IP connection can arise in two ways:

*

If a message contains more than max_rcpt (see below) addresses that are routed to the same host, more than one copy of the message has to be sent to that host. In this situation, multiple copies may be sent in a single run of the smtp transport over a single TCP/IP connection. (What Exim actually does when it has too many addresses to send in one message also depends on the value of the global remote_max_parallel option. Details are given in section 45.1.)
*

When a message has been successfully delivered over a TCP/IP connection, Exim looks in its hints database to see if there are any other messages awaiting a connection to the same host. If there are, a new delivery process is started for one of them, and the current TCP/IP connection is passed on to it. The new process may in turn send multiple copies and possibly create yet another process.

For each copy sent over the same TCP/IP connection, a sequence counter is incremented, and if it ever gets to the value of connection_max_messages, no further messages are sent over that connection.
Переходим на секцию 45.1
If a message contains a number of different addresses, all those with the same characteristics (for example, the same envelope sender) that resolve to the same set of hosts, in the same order, are sent in a single SMTP transaction, even if they are for different domains, unless there are more than the setting of the max_rcpts option in the smtp transport allows, in which case they are split into groups containing no more than max_rcpts addresses each. If remote_max_parallel is greater than one, such groups may be sent in parallel sessions. The order of hosts with identical MX values is not significant when checking whether addresses can be batched in this way.
У меня получилось прикрутить опцию max_rcpt в транспорте, а remote_max_parallel так и не удалось как в глобальном так и в транспорте!
Стою в очереди За... булкой и кефиром

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение dikens3 » 2008-09-09 10:06:56

Почему? В основном конфиге нужно делать.
# exim -bP | grep parallel
remote_max_parallel = 15
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Re: Проблема с доставкой письма с большим количеством получателе

Непрочитанное сообщение Za... » 2008-09-09 10:24:04

Да сейчас смотрю все уходит помогла опция max_rcpt в описание транспорта smtp, и еще может быть опция connection_max_messages

Код: Выделить всё

remote_smtp:
  driver   = smtp
  connection_max_messages = 10
  max_rcpt = 5
  tls_certificate=/etc/exim4/exim.crt
  tls_privatekey=/etc/exim4/exim.key
  headers_add   = "X-Descriptions: powered by www.lissyara.su, build Artem Za... \n X-Bounce-ID: $primary_hostname"
  hosts_avoid_esmtp   =  ${lookup mysql{INSERT IGNORE INTO `sended_list` \
         (`user_from`, `user_to`, `added_timestamp`, \
         `last_mail_timestamp`, `mail_count`) VALUES \
         (LCASE('${quote_mysql:$sender_address}'), \
         LCASE('${quote_mysql:$local_part@$domain}'), \
         UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), '1') ON DUPLICATE \
         KEY UPDATE `last_mail_timestamp` = UNIX_TIMESTAMP(), \
         `mail_count` = `mail_count` + 1}}

Стою в очереди За... булкой и кефиром