在本文中,我们将为您详细介绍domain-name-system–如何使用Docker配置自定义DNS服务器?的相关知识,并且为您解答关于docker设置dns的疑问,此外,我们还会提供一些关于dom
在本文中,我们将为您详细介绍domain-name-system – 如何使用Docker配置自定义DNS服务器?的相关知识,并且为您解答关于docker设置dns的疑问,此外,我们还会提供一些关于domain-name-system – BIND:如何将子区域委托给其他DNS服务器?、domain-name-system – dnsmasq – 域条目的多个转发服务器?、domain-name-system – DNS服务器 – 2个域 – 2个DNS服务器 – 在1个LAN中的两个域之间复制DNS、domain-name-system – DNS服务器上的域列表?的有用信息。
本文目录一览:- domain-name-system – 如何使用Docker配置自定义DNS服务器?(docker设置dns)
- domain-name-system – BIND:如何将子区域委托给其他DNS服务器?
- domain-name-system – dnsmasq – 域条目的多个转发服务器?
- domain-name-system – DNS服务器 – 2个域 – 2个DNS服务器 – 在1个LAN中的两个域之间复制DNS
- domain-name-system – DNS服务器上的域列表?
domain-name-system – 如何使用Docker配置自定义DNS服务器?(docker设置dns)
Docker的/ etc / hosts是只读的.
我正在尝试使用dnsmasq:
FROM ubuntu:14.04 # ... RUN apt-get install -y -q dnsmasq RUN echo 'listen-address=127.0.0.1' >> /etc/dnsmasq.conf RUN echo 'resolv-file=/etc/resolv.dnsmasq.conf' >> /etc/dnsmasq.conf RUN echo 'conf-dir=/etc/dnsmasq.d' >> /etc/dnsmasq.conf RUN echo 'user=root' >> /etc/dnsmasq.conf RUN echo 'nameserver 8.8.8.8' >> /etc/resolv.dnsmasq.conf RUN echo 'nameserver 8.8.4.4' >> /etc/resolv.dnsmasq.conf RUN echo 'address="/mydomain/127.0.6.1"' >> /etc/dnsmasq.d/0hosts RUN service dnsmasq start
但是,我无法让Docker使用我的DNS服务器:
$docker --dns=127.0.0.1 run my/container cat /etc/resolv.conf nameserver 8.8.8.8 nameserver 8.8.4.4
我错过了什么?
组态:
> OS X 10.9.4
> Docker版本1.1.0,版本79812e3
> boot2docker客户端版本:v1.1.0,Git commit:7e20d36
解决方法
DOCKER_OPTS="--dns=my-private-dns-server-ip --dns=8.8.8.8"
在Ubuntu上,我把这行放在/ etc / default / docker中
domain-name-system – BIND:如何将子区域委托给其他DNS服务器?
在设置AD期间,通过dcpromo,我收到警告,我应该确保我们当前的DNS服务器将AD域名委托给AD服务器.
假设我的AD域是mydomain.lan,而我的常规BIND域是example.com.我将我的BIND服务器设置为lan.的授权,但是想委托mydomain.lan.到AD服务器的IP.
我的named.conf.local包含:
zone "lan" { type master; file "zone.lan"; };
而zone.lan包含:
$ORIGIN lan. $TTL 1H ; 1 hour @ IN SOA dns.example.com. hostmaster.example.com. ( 201008137 ; serial 28800 ; refresh (8 hours) 14400 ; retry (4 hours) 2419200 ; expire (4 weeks) 86400 ; minimum (1 day) ) IN NS dns.example.com. $ORIGIN mydomain.lan. @ IN NS dc1.mydomain.lan. dc1 IN A 10.10.0.200 ; 'glue' record
当我在dns.example.com上查询“lan”时,我可以得到预期的答案,但是当我查询“mydomain.lan”或“dc1.mydomain.lan”时,我得到一个NXDOMAIN响应.到目前为止我所有的尝试都失败了.
如何正确创建和委派子区?
更新:更多信息
$dig mydomain.lan @dns.example.com NS +norecurse ; <<>> DiG 9.7.0-P1 <<>> @dns.example.com mydomain.lan NS +norecurse ; (3 servers found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY,status: NOERROR,id: 23380 ;; flags: qr ra; QUERY: 1,ANSWER: 0,AUTHORITY: 1,ADDITIONAL: 1 ;; QUESTION SECTION: ;mydomain.lan. IN NS ;; AUTHORITY SECTION: mydomain.lan. 3600 IN NS dc1.mydomain.lan. ;; ADDITIONAL SECTION: dc1.mydomain.lan. 3600 IN A 10.10.0.200 ;; Query time: 0 msec ;; SERVER: ::1#53(::1) ;; WHEN: Sun Aug 15 00:41:05 2010 ;; MSG SIZE rcvd: 64 $dig @dc1.mydomain.lan dc1.mydomain.lan dig: Couldn't get address for 'dc1.mydomain.lan': not found $dig @10.10.0.200 dc1.mydomain.lan ; <<>> DiG 9.7.0-P1 <<>> @10.10.0.200 dc1.mydomain.lan ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY,id: 21348 ;; flags: qr aa rd ra; QUERY: 1,ANSWER: 1,AUTHORITY: 0,ADDITIONAL: 0 ;; QUESTION SECTION: ;dc1.mydomain.lan. IN A ;; ANSWER SECTION: dc1.mydomain.lan. 1200 IN A 10.10.0.200 ;; Query time: 6 msec ;; SERVER: 10.10.0.200#53(10.10.0.200) ;; WHEN: Sun Aug 15 00:55:11 2010 ;; MSG SIZE rcvd: 50 $dig @10.10.0.200 mydomain.lan ; <<>> DiG 9.7.0-P1 <<>> @10.10.0.200 mydomain.lan ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY,id: 24664 ;; flags: qr aa rd ra; QUERY: 1,ADDITIONAL: 0 ;; QUESTION SECTION: ;mydomain.lan. IN A ;; ANSWER SECTION: mydomain.lan. 600 IN A 10.10.0.200 ;; Query time: 0 msec ;; SERVER: 10.10.0.200#53(10.10.0.200) ;; WHEN: Sun Aug 15 01:04:39 2010 ;; MSG SIZE rcvd: 46
解决方法
zone "lan" { type master; file "zone.lan"; forwarders { }; };
一旦你这样做它应该工作.
domain-name-system – dnsmasq – 域条目的多个转发服务器?
像这样:
server=/facebook.com/1.2.3.4 server=/facebook.com/2.3.4.5
并使用resolv.conf选择哪一个基于它是否可用?根据手册页,看起来只允许一个,但我想知道是否有办法让它以这种方式行事.
解决方法
dnsmasq提供选项–all-servers
–all-servers
By default,when dnsmasq has more than one upstream server available,it will send queries to just one server. Setting
this flag forces dnsmasq to send all queries to all available servers.
The reply from the server which answers first will be returned to the original requestor.
设置多个DNS服务器
server=OpenDNS.IP.Addr.ess server=GooglednS.IP.Addr.ess server=...
并将考虑最快的响应
domain-name-system – DNS服务器 – 2个域 – 2个DNS服务器 – 在1个LAN中的两个域之间复制DNS
如何将DNS查找区域从两个DNS服务器链接到彼此.因此,当来自一个域的客户端可以解析来自另一个域的DNS名称时,无需手动添加来自正向查找区域中的两个DNS /域的A记录.
两个DNS服务器都具有IP连接.
解决方法
选项1:您可以创建辅助区域.在托管x.local的服务器上,您将为y.local创建一个辅助区域,然后以相反的方式重复.如果执行此操作,则必须允许区域从区域传输选项卡从一个区域传输到另一个区域
选项2:您可以在每个上创建一个存根区域.在托管x.local的服务器上,您将为y.local创建一个存根区域,然后在托管y.local的服务器上为x.local添加存根区域.
选项3:您可以在每个上创建条件转发器.所以在托管x.local的服务器上,您可以为y.local创建一个条件转发器,然后对包含y.local的服务器重复
https://technet.microsoft.com/en-us/library/hh831667(v=ws.11).aspx
domain-name-system – DNS服务器上的域列表?
我可以访问区域文件.但是在我的服务器上有很多区域文件,手动完成所有这些文件需要很长时间.是否有一个列出此信息的命令或我是否必须自己编写脚本?
解决方法
% rndc dumpdb -zones
这将创建名为named_dump.db的服务器权威数据的转储,可能在/ var / named / data(或类似)中.
此文件比原始区域文件更容易解析,因为每行都以它应用的域名开头.原始区域文件可能是缩写.
关于domain-name-system – 如何使用Docker配置自定义DNS服务器?和docker设置dns的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于domain-name-system – BIND:如何将子区域委托给其他DNS服务器?、domain-name-system – dnsmasq – 域条目的多个转发服务器?、domain-name-system – DNS服务器 – 2个域 – 2个DNS服务器 – 在1个LAN中的两个域之间复制DNS、domain-name-system – DNS服务器上的域列表?等相关内容,可以在本站寻找。
本文标签: