Имя машины virdebian (DNS поднят на ней), Хочу создать зону для локальной сети ,
как должно выглядеть имя dns при прописвыании его в зоне ?
Bind имя локльного днс сервреа
Viredebian имя машины test имя зоны прописую так
;
; BIND data file for broadcast zone
;
$TTL 604800
@ IN SOA virdebian.test. root.localhost. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS virdebian.test.
virdebian A 192.168.3.15
debiantest A 192.168.3.25
проверяю
virdebian:/var/lib/named/etc/bind# nslookup virdebian
Server: 127.0.0.1
Address: 127.0.0.1#53
** server can't find virdebian: NXDOMAIN
непойму где ошибка
а named.conf можно посмотреть и что скажет nslookup virdebian.virdebian.test
Файлы зон нормально подрубаются? nslookup virdebian.test отрабатывает?
А если целиком имя запросить?
nslookup virdebian.virdebian.test
virdebian:/etc# dig virdebian.test
; <<>> DiG 9.7.1-P2 <<>> virdebian.test
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35205
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;virdebian.test. IN A
;; ANSWER SECTION:
virdebian.test. 604800 IN A 192.168.3.25
;; AUTHORITY SECTION:
test. 604800 IN NS virdebian.test.
;; Query time: 8 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Feb 15 15:38:27 2011
;; MSG SIZE rcvd: 62
прописал в /etc/resolv.conf
searche test
nameserver 127.0.0.1
virdebian:/etc# nslookup virdebian.test
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: virdebian.test
Address: 192.168.3.25
Вот только почему заработало только после этого ?
named.conf
// This is the primary configuration file for the BIND DNS server named.
//
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the
// structure of BIND configuration files in Debian, *BEFORE* you customize
// this configuration file.
//
// If you are just adding zones, please do that in /etc/bind/named.conf.local
include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.default-zones";
named.conf.options
acl "virdebian" { 192.168.3.0/24; 127.0.0.1; };
options {
directory "/etc/bind";
pid-file "/etc/bind/named.pid";
dump-file "/var/log/named/cache_dump.db";
statistics-file "/var/log/named/named_stats.txt";
memstatistics-file "/var/log/named/named_mem_stats.txt";
#от кого разрешаем принимать запросы
allow-query { "virdebian"; };
#Разрешаем выполнять рекурсивные запросы только с virdebian
#каким днс перенаправляем запрос если у нашего нет данных 1,2 днс провайдера 2 google
forwarders { 83.149.24.243;
83.149.24.244;
8.8.8.8;
};
#скажем на каких портах обслуживать днс запросы
listen-on port 53 {
127.0.0.1;
192.168.3.25;
};
#инфа о сервере
version "virdebian DNS";
auth-nxdomain no; # conform to RFC1035
#отключаем ipv 6
listen-on-v6 { none; };
};
#ведение лога
logging {
channel warning {
file "/var/log/dns_warning" versions 3 size 10m;
severity warning;
print-category yes;
print-severity yes;
print-time yes;
};
channel general_dns {
file "/var/log/dns_logs" versions 3 size 10m;
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category default { warning; };
category default { general_dns; };
};
поправка nslookup virdebian.test работает и без
прописал в /etc/resolv.conf
searche test
nameserver 127.0.0.1
Соотвественно если делаем запрос по полному доменному имени то всё ок , а если просто по имени то не работает
virdebian:/etc# nslookup debiantest.test
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: debiantest.test
Address: 192.168.3.15
virdebian:/etc# nslookup debiantest
Server: 127.0.0.1
Address: 127.0.0.1#53
** server can't find debiantest: SERVFAIL
domain
Локальное имя домена. Большинство запросов на имена машин в
этом домене смогут использовать лишь краткие имена, без указания
имени домена. Если записей domain нет, то домен определяется из
имени локальной машины, которое возвращается функцией gethost-
name(); доменной частью имени считается все, что следует после
первой точки ‘.’. Наконец, если имя машины не содержит доменной
части, назначается корневой домен.
это из мана resolv.conf
в /etc/resolv.conf
напишите
searche virdebian.test
nameserver 127.0.0.1
Хз.... Уот у меня работает. Это файл зоны saikov.ru
$ORIGIN .
$TTL 86400 ; 1 day
saikov.ru IN SOA ns1.saikov.ru. admin.saikov.ru. (
4 ; serial
28800 ; refresh (8 hours)
7200 ; retry (2 hours)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS ns1.saikov.ru.
NS ns2.saikov.ru.
A 192.168.1.150
MX 10 mail.saikov.ru.
$ORIGIN saikov.ru.
$TTL 43200 ; 12 hours
boris A 192.168.1.30
TXT "314dd4676ad29ae13a9f67f52ff25b93ed"
$TTL 86400 ; 1 day
mail A 192.168.1.150
ns1 A 192.168.1.150
ns2 A 192.168.1.150
www A 192.168.1.150
saikov-comp A 192.168.1.1
Проверяем комп по имени saikov-comp
[console][root@master ~]# nslookup 192.168.1.1
Server: 192.168.1.150
Address: 192.168.1.150#53
1.1.168.192.in-addr.arpa name = saikov-comp.saikov.ru.
[root@master ~]# nslookup saikov-comp
Server: 192.168.1.150
Address: 192.168.1.150#53
Name: saikov-comp.saikov.ru
Address: 192.168.1.1
[/console].
Ну и
[console][root@master ~]# cat /etc/resolv.conf
search saikov.ru
nameserver 192.168.1.150[/console]
гмм что-то странное в /etc/resolv.conf прописал
searche virdebian.test
nameserver 127.0.0.1
делаю
virdebian:/etc# nslookup debiantest
Server: 127.0.0.1
Address: 127.0.0.1#53
** server can't find debiantest: SERVFAIL
хотя зона работает
virdebian:/etc# dig virdebian.test
; <<>> DiG 9.7.1-P2 <<>> virdebian.test
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58678
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;virdebian.test. IN A
;; ANSWER SECTION:
virdebian.test. 604800 IN A 192.168.3.25
;; AUTHORITY SECTION:
test. 604800 IN NS virdebian.test.
;; Query time: 4 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Feb 16 10:34:57 2011
;; MSG SIZE rcvd: 62
по полному домменному имени запрос проходит
virdebian:/etc# nslookup debiantest.test
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: debiantest.test
Address: 192.168.3.15
searche
virdebian.test
всё победил в /etc/resolv.conf прописал
search test
nameserver 127.0.0.1
и всё заработало
Всем спасибо