Не работает обратное преобразование для домена второго уровня. (используется bind9). Есть такая прямая зона:$TTL 88640
@ IN SOA ns.domain.ru. hostmaster.domain.ru. (
200504291
8H
2H
1W
1D ); DNS
@ IN NS ns.domain.ru.
@ IN NS ns.isp.ru.; Links
localhost IN A 127.0.0.1
ns IN A xxx.xx.xx.xx
mail IN A xxx.xx.xx.xx
www IN A xxx.xx.xx.xx; MX
@ IN MX 50 mail.domain.ru.
И есть вот такая обратная:$TTL 3600
xx.xx.xx.xxx.in-addr.arpa. IN SOA ns.domain.ru. hostmaster.domain.ru. (
200504231
8H
2H
1W
1D ); DNS
@ IN NS ns.domain.ru.
@ IN NS ns.isp.ru.; Links
2 IN PTR ns.domain.ru.
3 IN PTR www.domain.ru.
10 IN PTR mail.domain.ru.
30 IN PTR domain.ru.А вот так она прописана в named.conf:
zone "xx.xx.xx.xxx.in-addr.arpa" {
type master;
file "master/domain.rev";
allow-transfer { xx.xx.xxx.xxx; };
};И, тем не менее, не работает. Помогите разрулить - почта не всем доходит :(. Если можно, на примере.
Спасибо за ранее.
судя по
xx.xx.xx.xxx.in-addr.arpa
должно быть
xx.xx.xxx.in-addr.arpa
>судя по
>xx.xx.xx.xxx.in-addr.arpa
>должно быть
> xx.xx.xxx.in-addr.arpaне помогло. я изменил и в named.conf и в самой зоне. nslookup все равно говорит ** server can't find..
>>судя по
>>xx.xx.xx.xxx.in-addr.arpa
>>должно быть
>> xx.xx.xxx.in-addr.arpa
>
>не помогло. я изменил и в named.conf и в самой зоне. nslookup
>все равно говорит ** server can't find..
dig
как рестратишь.
запусти в режиме отладки и все сразу он тебе скажет
>dig
> как рестратишь.
> запусти в режиме отладки и все сразу он тебе скажетпоставил -d 5. в messages такое:
May 16 12:39:27 mail named[80646]: isc_log_open 'named.run' failed: permission denied
Однако не думаю, что это связано... Кстати bind в chroot - тут могут быть подводные камни?
>
>>dig
>> как рестратишь.
>> запусти в режиме отладки и все сразу он тебе скажет
>
>поставил -d 5. в messages такое:
>
>May 16 12:39:27 mail named[80646]: isc_log_open 'named.run' failed: permission denied
>
>Однако не думаю, что это связано... Кстати bind в chroot - тут
>могут быть подводные камни?а сам демон поднимаеться?
запусти без chroot, укажи пользователя с правами для named.run,
запусти дебаг.
покажи вывод дига на зону. учти зона должна быть в том формате
как я тебе отписал, а не начинаться с ипи хоста (пример: 1.168.192.in-addr.arpa, а не 10.1.168.192.in-addr.arpa)
>
>а сам демон поднимаеться?да, и хостнеймы разрешаются, а IP - нет. chroot стандартный через фряшный rc.conf.
>запусти без chroot, укажи пользователя с правами для named.run,
>запусти дебаг.
>покажи вывод дига на зону. учти зона должна быть в том формате
>
>как я тебе отписал, а не начинаться с ипи хоста (пример: 1.168.192.in-addr.arpa,
>а не 10.1.168.192.in-addr.arpa)да, я исправил как Вы сказали. ответ дига в конце треда.
Обратная зона обычно находится у провайдера. По Вашему запросу он добавляет эти записи.
>Обратная зона обычно находится у провайдера. По Вашему запросу он добавляет эти
>записи.у провайдера slave-server, у меня master, поэтому и записи сначала должны появиться у меня, насколько я понимаю.
Покажите логи запуска named. Попробуйте
dig @ваш_сервер ваш_ip
Сори, правильно
dig @ваш_сервер 1.1.168.192.in-addr.arpa PTR
или просто
host 192.168.1.1 ваш_сервер
>Сори, правильно
>dig @ваш_сервер 1.1.168.192.in-addr.arpa PTR
>или просто
>host 192.168.1.1 ваш_сервер# dig @ns.domain.ru xx.xx.xx.xxx.in-addr.arpa PTR
; <<>> DiG 9.3.0 <<>> @ns.domain.ru xx.xx.xx.xxx.in-addr.arpa PTR
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 45449
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0;; QUESTION SECTION:
;xx.xx.xx.xxx.in-addr.arpa. IN PTR;; AUTHORITY SECTION:
xx.xx.xxx.in-addr.arpa. 3600 IN SOA ns.domain.ru. hostmaster.domain.ru. 200505161 28800 7200 604800 86400;; Query time: 4 msec
;; SERVER: xxx.xx.xx.xx#53(ns.domain.ru)
;; WHEN: Mon May 16 13:00:03 2005
;; MSG SIZE rcvd: 107
>Сори, правильно
>dig @ваш_сервер 1.1.168.192.in-addr.arpa PTR
>или просто
>host 192.168.1.1 ваш_сервернет в диге в опции query-type PTR.
для этого в домене -x нада ставить
man dig
...
type indicates what type of query is required -- ANY, A, MX, SIG,
etc. type can be any valid query type. If no type argument is
supplied, dig will perform a lookup for an A record.
...Все работает. Проверяйте.
>man dig
>...
>type indicates what type of query
>is required -- ANY, A, MX, SIG,
> etc. type can be
>any valid query type. If no type argument is
>
> supplied, dig will perform a
>lookup for an A record.
>...
>
>Все работает. Проверяйте.да все верно. не доглядел (See RFC 1035 for the complete list.)
но dig @ваш_сервер ваш_ip PTR работать не будет.
dig -x ваш_ip нужно
>но dig @ваш_сервер ваш_ip PTR работать не будет.
>dig -x ваш_ip нужно
Поэтому я и написал потом
dig @ваш_сервер 1.1.168.192.in-addr.arpa PTR
Проверяйте еще раз. Все работает.
>Покажите логи запуска named. Попробуйте
>dig @ваш_сервер ваш_ipMay 16 12:39:27 mail named[80646]: starting BIND 9.3.0 -4 -u bind -d 5 -t /var/named
May 16 12:39:27 mail named[80646]: command channel listening on 127.0.0.1#953
May 16 12:39:27 mail named[80646]: isc_log_open 'named.run' failed: permission denied
May 16 12:42:06 mail named[80836]: starting BIND 9.3.0 -4 -u bind -d 10 -t /var/named
May 16 12:42:06 mail named[80836]: command channel listening on 127.0.0.1#953
May 16 12:42:06 mail named[80836]: isc_log_open 'named.run' failed: permission denied
# dig @ns.domain.ru xxx.xx.xx.xx[ это собственно, IP для ns.domain.ru, то есть пытаюсь резолвить самого себя ]
; <<>> DiG 9.3.0 <<>> @ns.domain.ru xxx.xx.xx.xx
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64704
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 13, ADDITIONAL: 13;; QUESTION SECTION:
;xxx.xx.xx.xx. IN A;; AUTHORITY SECTION:
. 508928 IN NS L.ROOT-SERVERS.NET.
. 508928 IN NS M.ROOT-SERVERS.NET.
. 508928 IN NS A.ROOT-SERVERS.NET.
. 508928 IN NS B.ROOT-SERVERS.NET.
. 508928 IN NS C.ROOT-SERVERS.NET.
. 508928 IN NS D.ROOT-SERVERS.NET.
. 508928 IN NS E.ROOT-SERVERS.NET.
. 508928 IN NS F.ROOT-SERVERS.NET.
. 508928 IN NS G.ROOT-SERVERS.NET.
. 508928 IN NS H.ROOT-SERVERS.NET.
. 508928 IN NS I.ROOT-SERVERS.NET.
. 508928 IN NS J.ROOT-SERVERS.NET.
. 508928 IN NS K.ROOT-SERVERS.NET.;; ADDITIONAL SECTION:
A.ROOT-SERVERS.NET. 595328 IN A 198.41.0.4
B.ROOT-SERVERS.NET. 595328 IN A 192.228.79.201
C.ROOT-SERVERS.NET. 595328 IN A 192.33.4.12
D.ROOT-SERVERS.NET. 595328 IN A 128.8.10.90
E.ROOT-SERVERS.NET. 595328 IN A 192.203.230.10
F.ROOT-SERVERS.NET. 595328 IN A 192.5.5.241
G.ROOT-SERVERS.NET. 595328 IN A 192.112.36.4
H.ROOT-SERVERS.NET. 595328 IN A 128.63.2.53
I.ROOT-SERVERS.NET. 595328 IN A 192.36.148.17
J.ROOT-SERVERS.NET. 595328 IN A 192.58.128.30
K.ROOT-SERVERS.NET. 595328 IN A 193.0.14.129
L.ROOT-SERVERS.NET. 595328 IN A 198.32.64.12
M.ROOT-SERVERS.NET. 595328 IN A 202.12.27.33;; Query time: 8 msec
;; SERVER: ns.domain.ru#53(xxx.xx.xx.xx)
;; WHEN: Mon May 16 12:52:34 2005
;; MSG SIZE rcvd: 449
Посмотрите здесь:
http://forum.ru-board.com/topic.cgi?forum=8&topic=7016
>Посмотрите здесь:
>http://forum.ru-board.com/topic.cgi?forum=8&topic=7016добавил секцию logging как в приведенном Вами треде. Теперь из messages пропало сообщение "isc_log_open 'named.run' failed: permission denied". Но логи в /var/log/named.log и named-security.log не ведутся. Владельца и группу поменял на bind:bind, сам намед пускается с -u bind.
Что не так делаю?
dig -x ваш_ip
cat hosts
cat host.conf
dig -x ваш_ip
cat hosts
cat host.conf
cat resolve.conf
>dig -x ваш_ip# dig -x 213.27.18.43
; <<>> DiG 9.3.0 <<>> -x xxx.xx.xx.xx
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 60782
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0;; QUESTION SECTION:
;xx.xx.xx.xxx.in-addr.arpa. IN PTR;; AUTHORITY SECTION:
xx.xx.xxx.in-addr.arpa. 432000 IN SOA ns.isp.ru. hostmaster.isp.ru. 2005040700 14400 3600 2400000 432000;; Query time: 9 msec
;; SERVER: xx.xx.xxx.xxx#53(xx.xx.xxx.xxx) это сервер isp ответил
;; WHEN: Mon May 16 13:28:35 2005
;; MSG SIZE rcvd: 102>cat hosts
mail# cat /etc/hosts
::1 localhost.domain.ru localhost
127.0.0.1 domain.ru localhost mail.domain.ru
1.0.0.11 seth.domain.ru
195.128.64.18 cvsup5.ru.FreeBSD.org>cat host.conf
mail# cat /etc/host.conf
# Auto-generated from nsswitch.conf, do not edit
hosts
bind>cat resolve.conf
mail# cat /etc/resolv.conf
domain domain.ru
nameserver xx.xx.xxx.xxx [ ns.isp.ru ]
>
>>cat resolve.conf
>
>mail# cat /etc/resolv.conf
>domain domain.ru
>nameserver xx.xx.xxx.xxx [ ns.isp.ru ]
себя укажи в ресолве первым.
измени порядковый номер зоны (увелич на 1)
далее пути бинд в фореграунде под рутом
а там поглядим.
>>
>>>cat resolve.conf
>>
>>mail# cat /etc/resolv.conf
>>domain domain.ru
>>nameserver xx.xx.xxx.xxx [ ns.isp.ru ]
>
>
>себя укажи в ресолве первым.
>измени порядковый номер зоны (увелич на 1)
>далее пути бинд в фореграунде под рутом
>а там поглядим.все сделал. не поменялось ровным счетом ничего.
и еще такая интересная вещь:mail# host xxx.xx.xx.x
Host xx.xx.xx.xxx.in-addr.arpa not found: 3(NXDOMAIN)То есть в зоне он ищет все четыре байта, а не три, как у меня...
>>>
>>>>cat resolve.conf
>>>
>>>mail# cat /etc/resolv.conf
>>>domain domain.ru
>>>nameserver xx.xx.xxx.xxx [ ns.isp.ru ]
>>
>>
>>себя укажи в ресолве первым.
>>измени порядковый номер зоны (увелич на 1)
>>далее пути бинд в фореграунде под рутом
>>а там поглядим.
>
>все сделал. не поменялось ровным счетом ничего.
>и еще такая интересная вещь:
>
>mail# host xxx.xx.xx.x
>Host xx.xx.xx.xxx.in-addr.arpa not found: 3(NXDOMAIN)
>
>То есть в зоне он ищет все четыре байта, а не три,
>как у меня...то зона, это хост... лавр бы посоветовал маны почитать.
>Host xx.xx.xx.xxx.in-addr.arpa not found: 3(NXDOMAIN)
говортт о том что не верно записана зона.
проврь систаксис, пути.что бинд в фореграунде под рутом говорит?
занеси в хостс свой сервер.
>>>>
>>>>>cat resolve.conf
>>>>
>>>>mail# cat /etc/resolv.conf
>>>>domain domain.ru
>>>>nameserver xx.xx.xxx.xxx [ ns.isp.ru ]
>>>
>>>
>>>себя укажи в ресолве первым.
>>>измени порядковый номер зоны (увелич на 1)
>>>далее пути бинд в фореграунде под рутом
>>>а там поглядим.
>>
>>все сделал. не поменялось ровным счетом ничего.
>>и еще такая интересная вещь:
>>
>>mail# host xxx.xx.xx.x
>>Host xx.xx.xx.xxx.in-addr.arpa not found: 3(NXDOMAIN)
>>
>>То есть в зоне он ищет все четыре байта, а не три,
>>как у меня...
>
>то зона, это хост... лавр бы посоветовал маны почитать.:)
и еще посоветовал бы запустить для настройки без chroot, тем более что
не ясно как его точно запускают и какая версия FreeBSD
и еще посоветовал бы не морочить голову народу а показать РЕАЛЬНЫЕ:uname -rs
cat /etc/hosts
`hostname`
ifconfig -a
cat /path/named.conf (и что в in.addr...)
>>то зона, это хост... лавр бы посоветовал маны почитать.
>
>:)
>Во-первых, хотелось бы поблагодарить всех за помощь и уделенное время. Я разыскал DNS and BIND, 4th Ed, почитал. В результате была добавлена следующая магическая строчка:
xx.xx.xx.xxx.in-addr.arpa. IN PTR domain.ru.
после чего все стало разрешаться и туда и обратно :).
Еще раз большое всем спасибо.
>
>>>то зона, это хост... лавр бы посоветовал маны почитать.
>>
>>:)
>>
>
>Во-первых, хотелось бы поблагодарить всех за помощь и уделенное время. Я разыскал
>DNS and BIND, 4th Ed, почитал. В результате была добавлена следующая
>магическая строчка:
>
>xx.xx.xx.xxx.in-addr.arpa. IN PTR domain.ru.
>
>после чего все стало разрешаться и туда и обратно :).
>Еще раз большое всем спасибо.
а что, можно было как-то иначе?
>>
>>xx.xx.xx.xxx.in-addr.arpa. IN PTR domain.ru.
>>
>>после чего все стало разрешаться и туда и обратно :).
>>Еще раз большое всем спасибо.
>
>
>а что, можно было как-то иначе?до этого я не был уверен :). поэтому в треде (смотрите выше) неоднократно спрашивал про "нормально ли что указывается три байта адреса, а не четыре". сейчас более менее понял что к чему.
Я, пожалуй, поторопился с выводами. Обратное преобразование работает только в том случае, если используется мой авторитетный ns. Если я выполняю обратное преобразования при помощи какого-либо cgi на каком-нибудь сайте, то он мне пишет что хостнейма, соответствующего моему IP, не знает.Кроме того, у провайдера (slave-server) так до сих пор и не обновилась моя зона. В чем тут еще может быть дело?
>Кроме того, у провайдера (slave-server) так до сих пор и не обновилась
>моя зона. В чем тут еще может быть дело?$TTL 88640
@ IN SOA ns.domain.ru. hostmaster.domain.ru. (
200504291 <----- серийник обновил? а rndc reload сделал? после того как обновится у прова через несколько дней обновится "на других сайтах" :)
>>Кроме того, у провайдера (slave-server) так до сих пор и не обновилась
>>моя зона. В чем тут еще может быть дело?
>
>$TTL 88640
>@ IN
> SOA ns.domain.ru. hostmaster.domain.ru. (
>
>
> 200504291 <----- серийник обновил? а rndc reload сделал? после
>того как обновится у прова через несколько дней обновится "на других
>сайтах" :)
>серийник обновлял несколько раз. у провайдера обычно обновление в течение получаса происходило, а сейчас нет. вместо rndc reload пользовал /etc/rc.d/named restart, но думаю это не принципиально.
сразу после рестарта посмотри в messages нет ли там чего.
>>Кроме того, у провайдера (slave-server) так до сих пор и не обновилась
>>моя зона. В чем тут еще может быть дело?
>
>$TTL 88640
>@ IN
> SOA ns.domain.ru. hostmaster.domain.ru. (
>
>
> 200504291 <----- серийник обновил? а rndc reload сделал? после
>того как обновится у прова через несколько дней обновится "на других
>сайтах" :)
>дык обратную зону регистрировать нужно и делать это должен тот кто держит
сеть или LIR