首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未绑定存根-主机选项不使用/etc/host解析

未绑定存根-主机选项不使用/etc/host解析
EN

Server Fault用户
提问于 2015-11-30 19:20:36
回答 1查看 3.7K关注 0票数 4

我已经以验证、缓存、递归dns服务器和作为权威名称服务器运行的nsd3来运行未绑定。在我试图解析一个应该转发给nsd3的地址之前,这两个方面似乎都是正确工作的。我已经将问题缩小到了存根区域,该存根区域从未绑定到nsd3,而且它似乎没有解析“存根-主机”的名称。根据日志,未绑定正在尝试使用外部dns而不是/etc/host解析“存根-主机”(尽管这可能是因为在查找过程中失败)。我测试了硬编码的nsd3服务器的ip,这似乎是完美的工作。

下面是我未绑定配置的相关部分(完整配置为这里):

代码语言:javascript
复制
private-domain: "test.lan"
local-zone: "0.0.10.in-addr.arpa." nodefault
stub-zone:
     name: "test.lan"
     stub-host: unsd_nsd3

forward-zone:
     name: "."
     forward-addr: 8.8.8.8        # Google Public DNS
     forward-addr: 74.82.42.42    # Hurricane Electric
     forward-addr: 4.2.2.4        # Level3 Verizon

下面是日志级别为3的未绑定输出。我将dig mithril.test.lan @localhost作为测试运行(当直接查询nsd3时,它将正确解析):

代码语言:javascript
复制
[1448909203] unbound[1:0] debug: validator[module 0] operate: extstate:module_state_initial event:module_event_moddone
[1448909203] unbound[1:0] info: validator operate: query unsd_nsd3. A IN
[1448909203] unbound[1:0] debug: iterator[module 1] operate: extstate:module_wait_subquery event:module_event_pass
[1448909203] unbound[1:0] info: iterator operate: query mithril.test.lan. A IN
[1448909203] unbound[1:0] info: processQueryTargets: mithril.test.lan. A IN
[1448909203] unbound[1:0] info: new pside target unsd_nsd3. A IN
[1448909203] unbound[1:0] debug: iterator[module 1] operate: extstate:module_state_initial event:module_event_pass
[1448909203] unbound[1:0] info: iterator operate: query unsd_nsd3. A IN
[1448909203] unbound[1:0] info: resolving unsd_nsd3. A IN
[1448909203] unbound[1:0] info: processQueryTargets: unsd_nsd3. A IN
[1448909203] unbound[1:0] info: sending query: unsd_nsd3. A IN
[1448909203] unbound[1:0] debug: sending to target: <.> 74.82.42.42#53
[1448909203] unbound[1:0] debug: cache memory msg=132347 rrset=132399 infra=5449 val=132392
[1448909203] unbound[1:0] debug: iterator[module 1] operate: extstate:module_wait_reply event:module_event_reply
[1448909203] unbound[1:0] info: iterator operate: query unsd_nsd3. A IN
[1448909203] unbound[1:0] info: response for unsd_nsd3. A IN
[1448909203] unbound[1:0] info: reply from <.> 74.82.42.42#53
[1448909203] unbound[1:0] info: query response was NXDOMAIN ANSWER
[1448909203] unbound[1:0] info: finishing processing for unsd_nsd3. A IN
[1448909203] unbound[1:0] debug: validator[module 0] operate: extstate:module_state_initial event:module_event_moddone
[1448909203] unbound[1:0] info: validator operate: query unsd_nsd3. A IN
[1448909203] unbound[1:0] debug: iterator[module 1] operate: extstate:module_wait_subquery event:module_event_pass
[1448909203] unbound[1:0] info: iterator operate: query mithril.test.lan. A IN
[1448909203] unbound[1:0] info: processQueryTargets: mithril.test.lan. A IN
[1448909203] unbound[1:0] debug: out of query targets -- returning SERVFAIL
[1448909203] unbound[1:0] debug: return error response SERVFAIL
[1448909203] unbound[1:0] debug: validator[module 0] operate: extstate:module_wait_module event:module_event_moddone
[1448909203] unbound[1:0] info: validator operate: query mithril.test.lan. A IN
[1448909203] unbound[1:0] debug: cache memory msg=132557 rrset=132624 infra=5449 val=132392

顺便提一句,我从debian的基本映像中在他们自己的码头容器中运行解绑定和nsd3,并将它们链接在一起。我可以在未绑定容器中很好地解析unsd_nsd3。下面是未绑定容器中的/etc/host:

代码语言:javascript
复制
172.17.0.6  a79a91df9ec5
127.0.0.1   localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.5  docker_nsd3 89a74b365c88 unsd_nsd3
172.17.0.5  unsd_nsd3 89a74b365c88

我已经没有任何关于如何从这里前进的想法了。如果能提供一些帮助,我们将不胜感激。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2015-12-01 15:55:47

未绑定不使用/etc/主机。解绑定只能通过上游转发来解析存根名unsd_nsd3。您需要设置local-zonelocal-data来反映/hosts的内容,或者使用IP作为存根。

为了简化迁移,源球有一个perl脚本,contrib/build-unbound-localzone-from-hosts.pl生成一个包含文件。在执行之前,需要在脚本中设置本地区域名称。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/739829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档