Назад | Перейти на главную страницу

BIND9 - проблема Noob о том, как подключиться к основному домену

Я почти уверен, что делаю какую-то глупость, но давайте все равно спросим.

Я пытаюсь создать «имена хостов» на своих машинах в локальной сети (например, когда вы пингуетесь «chris», машина Криса - IP 12.34.56.78 - отвечает на это). Я делаю это через сервер Debian (lenny) с bind9 и использую этот сервер в качестве основного DNS-сервера локальной сети.

Проблема: я жестяная банка пинг whatever.chris с других машин, но не chris. Что я делаю не так?

Я выполнил эти инструкции, чтобы настроить bind9: http://www.cahilig.net/2008/07/05/how-setup-lan-dns-server-using-bind9-under-debian-etch-and-ubuntu-804

Файлы:

/ etc / hostname

chris

/ etc / hosts

127.0.0.1 localhost
192.168.1.3 chris.chris chris

# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

/etc/resolv.conf

Didn't touch this one, as resolvconf overwrites it

/etc/bind/name.conf.local

zone "chris" {
        type master;
        file "db.chris";
};

zone "1.168.192.in-addr.arpa" {
        type master;
        file "db.192.168.1";
};

/var/cache/bind/db.chris

$TTL 604800
@ IN SOA main.chris. admin.chris. (
                2012051610      ;serial
                04800           ;refresh
                86400           ;retry
                60              ;expire
                604800          ;negative cache TTL
                )
@      IN      NS       main.chris.
@      IN      A        192.168.1.3
www    IN      A        192.168.1.3
main   IN      A        192.168.1.3

/var/cache/bind/db.192.168.1

$TTL 604800
@ IN SOA main.chris. admin.chris. (
                2012051606      ;serial
                604800          ;refresh
                86400           ;retry
                60              ;expire
                604800          ;negative cache TTL
                )
@       IN      NS      main.chris.
1       IN      PTR     chris.

/etc/bind/ named.conf.options

options {
        directory "/var/cache/bind";

        forwarders {
                192.168.1.1;
        };

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

Я бы порекомендовал вам поместить все это в одну зону, назовем ее «локальной», а затем добавить хосты в локальные, например chris.local, john.local. Затем вы хотите, чтобы каждая из этих машин имела search local в их /etc/resolv.conf, Это сделает так, что когда они ping chris он автоматически попытается найти IP-адрес для chris.local если chris не найдено.

Обычно ваш dhcp-сервер отправляет им это search директива, но ее также можно настроить с помощью resolvconf

Убедитесь, что права доступа к файлу зоны указаны правильно. Я считаю, что это должен быть chmod 644, или 744. После того, как вы внесли изменения, вы сделали: «/etc/init.d/ named restart». Кроме того, для любых подсказок по дополнительным проблемам проверьте ваш / var / log / сообщения для любых указателей.

Ваш файл зоны должен выглядеть так.

http://pastebin.com/cB9SCJH0

Если вы хотите выполнять поиск DNS по короткому имени (то есть не только по полностью определенным доменным именам), то вы находитесь в области /etc/resolv.conf и параметра search.

поиск Крис

man 5 resolv.conf для подробностей