Ser Posted January 19, 2023 Posted January 19, 2023 Всем привет. Помогите правильно настроить BIND9 для роли обычного кеша для клиентов. 8.8.8.8 отвечает за 38 мсек. А мой сервер отвечает с паузой 10 сек. Как сделать, чтобы BIND9 отвечал быстро. # time dig @8.8.8.8 www.tvzavr.ru ; <<>> DiG 9.11.5-P4-5.1+deb10u8-Debian <<>> @8.8.8.8 www.tvzavr.ru ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 29158 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;www.tvzavr.ru. IN A ;; Query time: 38 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Чт янв 19 08:20:00 MSK 2023 ;; MSG SIZE rcvd: 42 real 0m0,063s user 0m0,013s sys 0m0,009s # time dig @127.0.0.1 www.tvzavr.ru ; <<>> DiG 9.11.5-P4-5.1+deb10u8-Debian <<>> @127.0.0.1 www.tvzavr.ru ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 22486 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ; COOKIE: d1b8e141441660401d2ed20263c8d310cb15e3794309441e (good) ;; QUESTION SECTION: ;www.tvzavr.ru. IN A ;; Query time: 0 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Чт янв 19 08:20:16 MSK 2023 ;; MSG SIZE rcvd: 70 real 0m10,022s user 0m0,008s sys 0m0,012s Лог 08:19:18.136 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.93.34#53 08:19:18.163 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.95.31#53 08:19:18.187 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.93.33#53 08:19:18.217 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.93.36#53 08:19:18.240 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.95.33#53 08:19:18.272 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.95.36#53 08:19:18.303 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.95.34#53 08:19:18.344 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.93.31#53 08:19:18.375 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.95.30#53 08:19:18.414 info: REFUSED unexpected RCODE resolving 'www.tvzavr.ru/A/IN': 89.104.95.35#53 Вставить ник Quote
ipaddr.ru Posted January 19, 2023 Posted January 19, 2023 Конкретно этот tvzavr - никак, он и не должен работать. Просто негативные и lame-ответы нужно кэшировать. Иногда. https://dnsviz.net/d/www.tvzavr.ru/Y8jV6A/dnssec/ Вставить ник Quote
Ser Posted January 19, 2023 Author Posted January 19, 2023 Помогите BIND9 настроить. чтобы он отвечал быстро на подобные запросы. Вставить ник Quote
ipaddr.ru Posted January 19, 2023 Posted January 19, 2023 В любом случае диагностика lame в первый раз будет занимать какое-то время. Сколько времени у вас второй-третий такие запросы занимают? Вставить ник Quote
Ser Posted January 19, 2023 Author Posted January 19, 2023 Первый и последующие запросы ведут себя одинаково - 10 сек вот конфиг options { directory "/etc/bind/zones"; listen-on port 53 { х.х.х.х; 127.0.0.1; }; notify yes; check-names master ignore; check-names slave ignore; check-names response ignore; max-ncache-ttl 600; recursive-clients 20000; allow-recursion { none; }; listen-on-v6 { none; }; }; Вставить ник Quote
ipaddr.ru Posted January 19, 2023 Posted January 19, 2023 Поиграйте с lame-ttl и servfail-ttl. Только помните: Quote The maximum value is 30 seconds; any higher value is silently reduced. The default is 1 second. Вставить ник Quote
Ser Posted January 19, 2023 Author Posted January 19, 2023 Спасибо. Поставил servfail-ttl 10; теперь 1 раз в 10 сек у клиента долгий ответ в 10 сек. Может другие dns сервера умеют в фоне делать рекурсию, а клиенту отвечают ВСЕГДА быстро? Вставить ник Quote
korsakik Posted January 19, 2023 Posted January 19, 2023 (edited) Для клиентов отдавайте unbound в роли кеширующего, а bind как корневой для своих зон используйте. Если никаких NS серверов для сайтов и своих доменов не держите, то вообще лучше обойтись только unbound. Несколько лет полет более чем нормальный. Мы отдаём первичный - свой unbound, а вторичный от НСДИ. И резерв на всякий случай получается и тупняков не замечалось за все время работы. Edited January 19, 2023 by korsakik Вставить ник Quote
Ser Posted January 19, 2023 Author Posted January 19, 2023 А можно конфиг боевой unbound увидеть? Вставить ник Quote
taf_321 Posted January 19, 2023 Posted January 19, 2023 46 минут назад, Ser сказал: А можно конфиг боевой unbound увидеть? server: verbosity: 1 statistics-interval: 3600 statistics-cumulative: yes num-threads: 4 interface: IP_ADDR_V4 interface: IP_ADDR_V6 outgoing-interface: IP_ADDR_V4 outgoing-interface: IP_ADDR_V6 outgoing-range: 8192 so-rcvbuf: 4m so-sndbuf: 4m so-reuseport: yes edns-buffer-size: 1232 max-udp-size: 1400 msg-cache-size: 50m num-queries-per-thread: 1024 rrset-cache-size: 100m rrset-cache-slabs: 4 cache-min-ttl: 3600 infra-cache-slabs: 4 do-ip4: yes do-ip6: yes do-udp: yes do-tcp: yes access-control: 0.0.0.0/0 refuse access-control: 127.0.0.0/8 allow access-control: NET/LEN allow access-control: ::0/0 refuse access-control: ::1 allow access-control: ::ffff:127.0.0.1 allow access-control: NET6/LEN allow root-hints: "/root-cheburnet.hints" hide-identity: yes hide-version: yes qname-minimisation: yes qname-minimisation-strict: no prefetch: yes rrset-roundrobin: yes minimal-responses: no auto-trust-anchor-file: "/var/lib/unbound/root.key" key-cache-slabs: 4 unblock-lan-zones: yes ratelimit-slabs: 4 ip-ratelimit-size: 4m ip-ratelimit-slabs: 4 remote-control: control-enable: yes control-interface: 127.0.0.1 control-interface: ::1 Вставить ник Quote
Ser Posted January 19, 2023 Author Posted January 19, 2023 Спасибо. /var/lib/unbound/root.key идет в комплекте при установке пакета? Вставить ник Quote
taf_321 Posted January 19, 2023 Posted January 19, 2023 Файл генерится при старте. По-идее в дистрибутиве, да и в исходниках, есть обвязка по работе с этими ключами. Вставить ник Quote
ipaddr.ru Posted January 19, 2023 Posted January 19, 2023 7 hours ago, taf_321 said: Файл генерится при старте. Что за ерунда? Это public RSA key, сгенерировать его невозможно. Вставить ник Quote
st_re Posted January 19, 2023 Posted January 19, 2023 Это открытый ключ, он тянется из инета он публично доступен unbound-anchor это получает в приницпе там результат dig DNSKEY .| fgrep '257 ' . 172749 IN DNSKEY 257 3 8 AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3 +/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kv ArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF 0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+e oZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfd RUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwN R1AkUTV74bU= Вставить ник Quote
taf_321 Posted January 20, 2023 Posted January 20, 2023 9 часов назад, ipaddr.ru сказал: Что за ерунда? Это public RSA key, сгенерировать его невозможно. Файл != ключ. Вставить ник Quote
ipaddr.ru Posted January 20, 2023 Posted January 20, 2023 6 minutes ago, taf_321 said: Файл != ключ. Ну да, конечно. Quote The root key is stored in a file, /usr/local/etc/unbound/root.key Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.