Domain-Name-System
本地 BIND DNS 記憶體伺服器客戶端不解析公共 DNS,僅解析內部區域
有很多評論部分可以讓您了解我嘗試過的內容。請注意,這是通過 ansible playbook 作為 jinja2 模板複製的(這就是其中存在 ansible 變數的原因)。這是在以主/從配置執行 BIND 9.11.13 的 CentOS 8 伺服器上。DNS 伺服器本身應該是僅在內部記憶體 DNS 伺服器,並且在解析任何公共或私有內容時都沒有問題。然而,客戶端最終只能解析本地區域。這是來自主人的named.conf:
// // named.conf // /* acl "trusted" { 10.0.0.10; #ns1 10.0.0.11; #ns2 10.0.0.0/24; }; */ options { listen-on port 53 { 127.0.0.1; {{ ansible_default_ipv4.address }}; } directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; secroots-file "/var/named/data/named.secroots"; recursing-file "/var/named/data/named.recursing"; allow-query { any; }; recursion yes; dnssec-enable no; dnssec-validation no; dnssec-lookaside auto; managed-keys-directory "/var/named/dynamic"; pid-file "/run/named/named.pid"; session-keyfile "/run/named/session.key"; /* https://fedoraproject.org/wiki/Changes/CryptoPolicy */ include "/etc/crypto-policies/back-ends/bind.config"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; /* zone "." { type forward; forward only; forwarders { 8.8.8.8; 8.8.4.4; }; }; */ include "/etc/named.rfc1912.zones"; include "/etc/named.root.key"; // forward lookup zone zone "domain.local" { type master; file "domain.local.db"; allow-update { none; }; allow-query { any; }; allow-transfer { 10.0.0.11; }; also-notify { 10.0.0.11; }; notify yes; }; // reverse lookup zone zone "0.0.10.in-addr.arpa" { type master; file "domain.local.rev"; allow-update { none; }; allow-query { any; }; allow-transfer { 10.0.0.11; }; also-notify { 10.0.0.11; }; notify yes; };
正如你所看到的,我回到了幾乎原版的設置。我嘗試了一堆僅轉發和 acls 的擺弄。
這是數據庫文件:
; ; BIND data file for local loopback interface ; $TTL 604800 @ IN SOA ns1.domain.local. admin.domain.local. ( 5 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.domain.local. @ IN NS ns2.domain.local. ns1.domain.local. IN A 10.0.0.10 ns2.domain.local. IN A 10.0.0.11 web.domain.local. IN A 10.0.0.13
我可能已經盯著這個太久了,這很明顯,但在這一點上,我真的很感激第二雙眼睛。
提前致謝!!
好吧,失踪的情況;又罷工了。我錯過了偵聽埠線上的結尾分號,這導致了一切。奇怪的是,當我重新啟動它時,named.service 並沒有抱怨。但是,重新啟動後,它確實對我大喊大叫,並告訴我我在哪裡是個白痴。::臉掌::
如果我理解您正在嘗試做什麼 - 如果您希望能夠解析外部域,那麼您需要啟用一些轉發器,以便您的 DNS 伺服器可以查詢外部世界並將結果傳回。