Я что-то вообще запутался с этим bind.
Всё понятно, если nameserver крутится на другом компе. А если они совмещены, то что делать бедному админу?..
Что хотел сказать. Есть сервер, допустим example.com 192.168.1.10
Задача: поднять bind на том же серваке. Пример взят отсюда:
zone "example.com" {
type master;
file "/etc/bind/db.example.com";
};
;
; BIND data file for example.com
;
$TTL 604800
@ IN SOA example.com. root.example.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
IN A 192.168.1.10;
@ IN NS ns.example.com.
@ IN A 192.168.1.10
@ IN AAAA ::1
ns IN A 192.168.1.10
Здесь видно, что сервак example.com и его ns сидят на одном IP - 192.168.1.10.
Пока всё нормально. Едем дальше.
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192";
};
;
; BIND reverse data file for local 192.168.1.XXX net
;
$TTL 604800
@ IN SOA ns.example.com. root.example.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.
10 IN PTR ns.example.com.
Примечание под кодом:
Для каждой A записи, которую вы настроите в /etc/bind/db.example.com на другой адрес, вы должны создать запись PTR в /etc/bind/db.192.
Это как понять? Сами вверху сделали две A-записи:
@ IN A 192.168.1.10
ns IN A 192.168.1.10
А PTR запись - только одну!
10 IN PTR ns.example.com.
nslookup 192.168.1.10 вернёт ns.example.com, а не example.com.
Логичнее для сервака было бы вернуть именно example.com, а не ns.example.com.
Вообще, на сколько это критично? Кто-нибудь может прояснить?