Памагите! :)Ставлю exim на RH9.
Получаю проблему: ни один хост не находится dnslookup'ом. Всегда возвращается ошибка TRY_AGAIN:# exim -d+resolver -bt someuser@test.somewhere.com
Transports: appendfile/maildir/mailstore/mbx autoreply lmtp pipe smtp
Fixed never_users: 0
changed uid/gid: forcing real = effective
uid=0 gid=0 pid=17031
auxiliary group list: <none>
configuration file is /etc/exim/exim4.conf
log selectors = 00000ffc 00010400
trusted user
admin user
originator: uid=0 gid=0 login=root name=root
sender address = root@mail.provider.net
Address testing: uid=0 gid=93 euid=0 egid=93
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Testing someuser@test.somewhere.com
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Considering someuser@test.somewhere.com
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
routing someuser@test.somewhere.com
--------> dnslookup router <--------
local_part=someuser domain=test.somewhere.com
checking domains
test.somewhere.com in "@"? no (end of list)
test.somewhere.com in "! +local_domains"? yes (end of list)
calling dnslookup router
dnslookup router called for someuser@test.somewhere.com
domain = test.somewhere.com
DNS lookup of test.somewhere.com (MX) gave TRY_AGAIN
test.somewhere.com in dns_again_means_nonexist? no (option unset)
returning DNS_AGAIN
dnslookup router: defer for someuser@test.somewhere.com
message: host lookup did not complete
search_tidyup called
>>>>>>>>>>>>>>>> Exim pid=17031 terminating with rc=1 >>>>>>>>>>>>>>>>
someuser@test.somewhere.com cannot be resolved at this time:
host lookup did not complete$ dig -t mx test.somewhere.com
; <<>> DiG 9.2.1 <<>> -t mx test.somewhere.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5769
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 1;; QUESTION SECTION:
;test.somewhere.com. IN MX;; ANSWER SECTION:
test.somewhere.com. 86400 IN MX 10 test.somewhere.com.;; AUTHORITY SECTION:
somewhere.com. 86400 IN NS ns1.provider.net.
somewhere.com. 86400 IN NS ns2.provider.net.;; ADDITIONAL SECTION:
test.somewhere.com. 86400 IN A 10.0.0.215;; Query time: 25 msec
;; SERVER: 10.0.0.199#53(10.0.0.199)
;; WHEN: Sun Aug 15 16:47:03 2004
;; MSG SIZE rcvd: 115
Пробовал отправлять на другие хосты - то же самое.
dig хост находит, exim - нет.
Посмотри что у тебя прописано в resolv.conf
Попробуй запустить локально named и прописать форвард на провайдера.
>Посмотри что у тебя прописано в resolv.conf
>Попробуй запустить локально named и прописать форвард на провайдера.$ cat /etc/resolv.conf:
nameserver 10.0.0.199где 10.0.0.199 - это локальный адрес, на котором запущен bind.
Форвард на провайдера не стоИт, т.к. это стенд с 2-мя машинами, на котором и хотелось бы отладить работу Exim'а.
Дальнейшие исследования показали, что
1). Судя по логам named до него не доходит ни один запрос от exim'а
2). Файрволл выключен
И это притом, что и локальный dig, и dig запускаемый с test.somewhere.com работают.Дальше интереснее.
Следующая программа всегда печатает "-1" (т.е. всегда ошибка) независимо от запрашиваемого хоста и/или используемого DNS-сервера:==========================================================
#include <netinet/in.h>
#include <arpa/nameser.h>
#include <resolv.h>#include <stdio.h>
int
main()
{
unsigned char answer[1000];
res_init();int n = res_search("microsoft.com", C_IN, T_A, answer, 1000);
printf("%d\n", n);
return 0;
}
==========================================================Вобщем похоже, что системный resolver почему-то сломался...