![Поддержка настройки DNS-сервера bind9 для частной сети](https://rvso.com/image/769302/%D0%9F%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%BA%D0%B0%20%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8%20DNS-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0%20bind9%20%D0%B4%D0%BB%D1%8F%20%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%BE%D0%B9%20%D1%81%D0%B5%D1%82%D0%B8.png)
У меня в домашней сети (192.168.0.0/24) есть несколько серверов, и я хотел бы настроить bind9 в качестве DNS-сервера, чтобы мне было проще определять IP-адреса этих машин по именам.
Я установил и настроил bind9 на Ubuntu 20.04 следующим образом:следуя этому уроку довольно внимательно.
2 зоны: epicsystems.local.com - /etc/bind/zones/db.epicsystems.local.com
$TTL 604800
@ IN SOA ns1.epicsystems.local.com. admin.epicsystems.local.com. (
3 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
; name servers - NS records
IN NS ns1.epicsystems.local.com.
; name servers - A records
ns1.epicsystems.local.com. IN A 192.168.0.69
; 192.168.0.0/16 - A records
host2.epicsystems.local.com. IN A 192.168.0.67
host1.epicsystems.local.com IN A 192.168.0.66
db.192.168 -- зона обратного просмотра
;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA ns1.epicsystems.local.com. admin.epicsystems.local.com. (
3 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
;name servers - NS records
IN NS ns1.epicsystems.local.com.
;PTR records
69.0 IN PTR ns1.epicsystems.local.com. ;192.168.0.69
66.0 IN PTR host1.epicsystems.local.com. ;192.168.0.66
67.0 IN PTR host2.epicsystems.local.com. ;192.168.0.67
Мой named.conf.local в /etc/bind/named.conf.local имеет:
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
zone "epicsystems.local.com"{
type master;
file "/etc/bind/zones/db.epicsystems.local.com"; #zone file path
};
zone "168.192.in-addr.arpa" {
type master;
file "/etc/bind/zones/db.192.168"; #192.168.0.0/16 subnet
};
Я проверил синтаксис конфигурации и зон - синтаксически он верный - но это не такработающий.
Я назначаю своему локальному Mac DNS-серверу 192.168.0.69 и пробую nslookup для ubuntu.com — это работает, так что bind9 работает в этом отношении.
Если я затем попробую nslookup для host1 или host2 - он не сработает. Журнал misc для bind9 показывает, что зоны настраиваются:
09-Aug-2021 21:23:34.627 zoneload: info: managed-keys-zone: loaded serial 11
09-Aug-2021 21:23:34.627 zoneload: info: zone 0.in-addr.arpa/IN: loaded serial 1
09-Aug-2021 21:23:34.631 zoneload: info: zone 255.in-addr.arpa/IN: loaded serial 1
09-Aug-2021 21:23:34.635 zoneload: info: zone 127.in-addr.arpa/IN: loaded serial 1
09-Aug-2021 21:23:34.635 zoneload: info: zone 168.192.in-addr.arpa/IN: loaded serial 3
09-Aug-2021 21:23:34.639 zoneload: info: zone localhost/IN: loaded serial 2
09-Aug-2021 21:23:34.639 zoneload: info: zone epicsystems.local.com/IN: loaded serial 3
09-Aug-2021 21:23:34.639 general: notice: all zones loaded
09-Aug-2021 21:23:34.639 general: notice: running
09-Aug-2021 21:23:34.743 dnssec: info: managed-keys-zone: Key 20326 for zone . is now trusted (acceptance timer complete)
09-Aug-2021 21:23:34.811 resolver: info: resolver priming query complete
09-Aug-2021 21:23:42.131 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.143 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.163 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.231 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.247 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.335 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.347 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.415 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.603 dnssec: info: validating com/SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.623 dnssec: info: validating com/SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.707 dnssec: info: validating com/DNSKEY: got insecure response; parent indicates it should be secure
09-Aug-2021 21:23:42.715 dnssec: info: validating com/DNSKEY: got insecure response; parent indicates it should be secure
09-Aug-2021 21:24:20.508 dnssec: info: validating com/SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:24:20.528 dnssec: info: validating com/SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:24:29.244 dnssec: info: validating cloud/SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:24:29.260 dnssec: info: validating cloud/SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:24:29.324 dnssec: info: validating cloud/DNSKEY: got insecure response; parent indicates it should be secure
09-Aug-2021 21:24:29.340 dnssec: info: validating cloud/DNSKEY: got insecure response; parent indicates it should be secure
09-Aug-2021 21:25:36.973 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:25:36.989 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:25:37.005 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:25:37.093 dnssec: info: validating ./SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:29:26.277 dnssec: info: validating com/SOA: got insecure response; parent indicates it should be secure
09-Aug-2021 21:29:26.577 dnssec: info: validating net/DNSKEY: got insecure response; parent indicates it should be secure
В query.log показано, что поиск host1 выполняется, но ничего не решает:
09-Aug-2021 21:25:15.148 client @0x7f1cc0005910 192.168.0.13#49292 (host1.epicsystems.local.com): query: host1.epicsystems.local.com IN A + (192.168.0.69)
09-Aug-2021 21:25:36.941 client @0x7f1cbc00a550 192.168.0.13#58522 (host1): query: host1 IN A + (192.168.0.69)
Кто-нибудь может увидеть, что я сделал не так? Я впервые пытаюсь настроить DNS-сервер, так что, скорее всего, я где-то ошибся!
решение1
host1.epicsystems.local.com IN A 192.168.0.66
В этой записи отсутствует конечная точка. Это означает, что DNS-сервер bind не рассматривает ее как полное доменное имя, которое вы хотели использовать, а скорее как сокращение.
Bind добавит $ORIGIN (имя зоны) к сокращенным записям, сделав запись A, host1.epicsystems.local.com.epicsystems.local.com.
которая, вероятно, не соответствует вашим ожиданиям.