Привет всем! Сложилась такая ситуация: Есть один почтовый домен с которым мой сервер постоянно обменивается письмами. У домена есть 2 mx записи mx1.domen.ru c приоритетом 10 и mx2.domen.ru с пр. 20. В обычном порядке письма доставляются нормально, но иногда мх1 не доступен, (а мх2 недоступен всегда :)) при этом письма складываются в очередь по причине: Deferred: mx2.domen.ru.: No route to host
И стоят там вечно!
При попытке отправить их из очереди, они все равно пытаются идти на mx2.
Вопрос: почему же мой седмаил не рассматривает заново воэможность отправки через mx1?
Конфигурация сендмаила почти штатная, ОС FreeBSD5.4
Да...
Либо слишком глупый вопрос, либо никто не знает :)
Ну, господа Гуру подскажите, куда хоть копнуть ?
>Привет всем! Сложилась такая ситуация: Есть один почтовый домен с которым мой
>сервер постоянно обменивается письмами. У домена есть 2 mx записи mx1.domen.ru
>c приоритетом 10 и mx2.domen.ru с пр. 20. В обычном порядке
>письма доставляются нормально, но иногда мх1 не доступен, (а мх2 недоступен
>всегда :)) при этом письма складываются в очередь по причине: Deferred:
>mx2.domen.ru.: No route to host
>И стоят там вечно!
>При попытке отправить их из очереди, они все равно пытаются идти на
>mx2.
>Вопрос: почему же мой седмаил не рассматривает заново воэможность отправки через mx1?
>он обиделся :) /sorry/
зачем в DNS'ах нужен ВСЕГДА НЕДОСТУПНЫЙ MX2?!ну... варианты есть: ETRN принудительный, убрать MX2 из DNS и
посмотреть как запустить sendmail для разгребания очереди, есть
еще разные готовые скрипты в contrib вроде...>Конфигурация сендмаила почти штатная, ОС FreeBSD5.4
К сожалению я не админ того домена и сервера и не знаю по каким причинам mx2 всегда недоступен, может это временно-долгое явление.
Но вопрос не в этом. Хотелось бы узнать, это нормальное поведение сендмаила, что он помещаяя в очередь сообщение, уже больше не рассматривает приоритеты мх при отправке?
Посмотрел я etrn.pl из contrib - это как я понял не то что мне надо, т.к. он заставляет удаленный хост отправлять сообщения, стоящие у него в очереди для моего сервера. У меня же другая ситуация это МОЙ сервер не может отправить почту для того хоста.
>К сожалению я не админ того домена и сервера и не знаю
>по каким причинам mx2 всегда недоступен, может это временно-долгое явление.
>Но вопрос не в этом. Хотелось бы узнать, это нормальное поведение сендмаила,
>что он помещаяя в очередь сообщение, уже больше не рассматривает приоритеты
>мх при отправке?
>Посмотрел я etrn.pl из contrib - это как я понял не то
>что мне надо, т.к. он заставляет удаленный хост отправлять сообщения, стоящие
>у него в очереди для моего сервера. У меня же другая
>ситуация это МОЙ сервер не может отправить почту для того хоста.
>о господи, тогда это вовсе НЕ ТВОИ проблемы, а:
- проблемы MTA с MX1
- проблемы ЗОНЫ для которой есть проблемный MTA с MX1 и неработающий MX2попробуй mailertable с .domain smtp:mx1.domain
и затем запустить sendmail на разгреб очередиКороче, в cf/README и в op.me ВСЕ есть, в том числе и в contrib
сделал, как вы и сказали в mailertable
.domen.ru smtp:mx1.domen.ru
затем makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable
в .cf строки
Kmailertable hash -o /etc/mail/mailertable
перезапустил сендмаил даже
все равно из очереди они идут на мх2
?
>сделал, как вы и сказали в mailertable
>.domen.ru smtp:mx1.domen.ru
>затем makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable
>в .cf строки
>Kmailertable hash -o /etc/mail/mailertable
>перезапустил сендмаил даже
>все равно из очереди они идут на мх2
>?1) посмотреть как sendmail резолвит mx'ы
2) sendmail ПЕРЕБИРАЕТ все MX, но точно не помню после timeout'ов и повторов
3) попробовать sendmail 8.13.3забить на mailertable - вернуть взад и сделать вот что:
дано: mx1.domain = a.b.c.d
mx2.domain = k.l.m.nимеем очередь которая лупится на mx2.domain=k.l.m.n
который deffered, еще раз, sendmail перебирает каждый раз mx'ы и
возможно с mx1.domain тоже проблемыЧТО ДЕЛАТЬ - берем и в наш /etc/hosts подставляем ip-address от mx1
для mx2:/etc/hosts
a.b.c.d mx2.domainпосле чего, если не ошибаюсь, можно ограничить очередь разгрбанием
почты для domain:sendmail -qIdomain
Думаю понятно что мы делаем, почта лупится на mx2, а мы берем и через
НАШ /etc/hosts присваиваем ЕМУ ip от mx1 (потому как resolver сперва
смотрит files, потом dns, а files - это /etc/hosts)Это - РАЗОВОЕ решение, в остальном - разбирайся с этими mx1 и mx2
в чем проблема.Хотя можно найти готовые правила которые рутят почту в зависимости
от адреса РЕЦЕПИЕНТА и там забить всю почту для domain через mx1.domain
НО ЛУЧШЕ РАЗОБРАТЬСЯ
Спасибо за развернутый ответ, но у меня остались глупые вопросы :)
У меня Sendmail 8.13.3.
Как посмотреть как сендмаил резолвит mx-ы?
т.е. например результат
dig @МойКеширующийСервер domen.ru mx
может отличаться от результата резолвера сендмаила?Извиняюсь, но я не совсем точно описал зоны, куда проблемно доставляются письма:
Пусть пытаемся отправить почту на user@mx2.domen.ru
у домена mx2.domen.ru нет mx записей
но есть домен domen.ru у которого есть 2 mx записи:
10 mx1.domen.ru
20 mx2.domen.ru
второй mx никогда не работает
Вот здесь у меня возникает самый главный вопрос:
почему когда mx1 доступен почта уходит нормально, а когда нет, она складываясь в очередь, оттуда уже не хочет даже пытаться идти на mx1?
Чем тогда принципиально отличается посылка на прямую, от посылки из очереди?