标签: bind

DNS解析慢

我有一个 DNS 服务器,可以解析对一组内部服务器的所有查询。它是 CentOS 5.5(与 RHEL5 相同)上的绑定,我已将其设置为允许递归和解析方向,而无需任何转发器。

我面临的问题是第一次解析名称需要非常长的时间。(以 20 秒为幅度)这会导致客户端超时。

当我将它设置为全部转发到 Google 的公共 DNS,即 8.8.8.8+8.8.4.4 时,它运行得非常好(在一秒钟内)。

我尝试监控网络上的流量,看看为什么会这样:

[root@ns1 ~]# tcpdump -nnvvvA -s0 udp
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
23:06:36.137797 IP (tos 0x0, ttl  64, id 35903, offset 0, flags [none], proto: UDP (17), length: 60) 172.17.1.10.36942 > 172.17.1.4.53: [udp sum ok]  19773+ A? www.paypal.com. (32)
E..<.?..@..A...
.....N.5.(6.M=...........www.paypal.com.....
23:06:36.140594 IP (tos 0x0, ttl  64, id 56477, offset 0, flags [none], proto: UDP (17), length: 71) …
Run Code Online (Sandbox Code Playgroud)

domain-name-system bind nameserver

5
推荐指数
1
解决办法
5999
查看次数

生产 BIND DNS 服务器 - 你使用包管理器还是编译最新的稳定版?

我管理多个 BIND DNS 服务器(在 RHEL/Centos 上)用于权威查找(正向和反向)以及专用缓存服务。我一直只在包管理器中使用最新的稳定版 BIND,但想知道我是否应该编译最新的稳定版以“正确执行”。其他人做什么?编译的利与弊?

domain-name-system redhat bind centos

5
推荐指数
1
解决办法
461
查看次数

基于 Web 的 BIND9 DNS 工具?

是否有任何好的前端工具来管理 BIND9 服务器?我想为用户提供登录和管理他们托管区域的能力。

domain-name-system ubuntu bind web-server

5
推荐指数
1
解决办法
3259
查看次数

更改给定命令的默认绑定接口的工具?

这在某种程度上与用于执行 whois 的更改界面有关

不同之处在于我想知道是否可以仅为特定程序指定默认接口 - 而不是系统范围的。例如:假设我的服务器有多个 IP。我想运行程序 X(比如 wget)并且我希望它使用我的 IP 之一作为源地址。它看起来像这样:

theprogram --use-interface=1.2.3.4 wget google.com
Run Code Online (Sandbox Code Playgroud)

wget 将使用我的 IP 1.2.3.4 连接到 google.com 并获取 html。是否可以?

linux ip bind interface

5
推荐指数
1
解决办法
4355
查看次数

BIND 权限错误

我一直在尝试使用 nsupdate 来动态更新我的域名服务器记录。

我尝试时遇到服务器故障。这是来自系统日志。

Nov 12 08:00:53 ps133045 named[14314]: client 78.72.53.42#50135: signer "www.mydomain.com" approved
Nov 12 08:00:53 ps133045 named[14314]: client 78.72.53.42#50135: updating zone 'mydomain.com/IN': adding an RR at 'client$
Nov 12 08:00:53 ps133045 named[14314]: /etc/bind/zones/mydomain.com.zone.jnl: create: permission denied
Nov 12 08:00:53 ps133045 named[14314]: client 78.72.53.42#50135: updating zone 'mydomain.com/IN': error: journal open fai$
Run Code Online (Sandbox Code Playgroud)

所以我认为这是权限,所以为了测试我给了 /var/named 和 /etc/bind chmod 666

没有帮助,所以我创建了 mydomain.com.zone.jnl 文件和 chmod 600 并认为可以,我也做了 chown bind:bind 和 root:bind,但在这两种情况下我仍然遇到相同的错误。

由于这个错误,现在我什至无法重新启动绑定

Nov 12 08:40:10 ps133045 named[21169]: loading configuration from '/etc/bind/named.conf'
Nov 12 …
Run Code Online (Sandbox Code Playgroud)

domain-name-system debian bind dyndns nameserver

5
推荐指数
2
解决办法
4万
查看次数

有/无权限的 DNS 应答,附加部分

dig @ns7.embarqservices.net www.126.com A +dnssec +multiline

 ; <<>> DiG 9.7.3 <<>> @ns7.embarqservices.net www.126.com A +dnssec +multiline
 ; (1 server found)
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54408
 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1

 ;; OPT PSEUDOSECTION:
 ; EDNS: version: 0, flags:; udp: 4096
 ;; QUESTION SECTION:
 ;www.126.com.      IN A

 ;; ANSWER SECTION:
 www.126.com.       17668 IN CNAME mcache.mail.163.com.
 mcache.mail.163.com.   269 IN CNAME email.163.com.lxdns.com.
 email.163.com.lxdns.com. 108 IN …
Run Code Online (Sandbox Code Playgroud)

domain-name-system bind

5
推荐指数
1
解决办法
9992
查看次数

named.conf 中的变量

我的服务器有一个 IP 和多个托管域。

一个相同的 IP 出现在 named.conf 和几个区域文件中。

当服务器的 IP 地址更改时,我需要手动更改所有这些 IP。

有没有办法做这样的事情:

在named.conf中:

#define $IP 123.123.123.123
Run Code Online (Sandbox Code Playgroud)

区域文件:

        MX 10     mail
        A         $IP
www     A         $IP
mail    A         $IP
*       CNAME     www
Run Code Online (Sandbox Code Playgroud)

任何帮助都会得到认可

bind named-conf

5
推荐指数
1
解决办法
1583
查看次数

BIND 问题:nsupdate 无法更新反向区域

我正在使用 测试我的 ddns 更新配置(用于托管在同一服务器上的 ISC DHCP)nsupdate,并且当转发区域正确更新时:

    # nsupdate
    > server 127.0.0.1
    > key dhcpupdate MYSECRETKEY
    > update add test.example.com. 600 IN A 10.2.2.45
    > send
    # tail -n1 /var/log/named.conf
    client 127.0.0.1#12584: view internal: updating zone 'example.com/IN': adding an RR at 'test.example.com' A
Run Code Online (Sandbox Code Playgroud)

反向区域不会:

    # nsupdate
    > server 127.0.0.1
    > key dhcpupdate MYSECRETKEY
    > update add 45.2.2.10.in-addr.arpa. 600 IN PTR test.example.com.
    > send
    response to SOA query was unsuccessful
Run Code Online (Sandbox Code Playgroud)

然后 nsupdate 将我吐回外壳,并且日志中没有错误(或任何类型的消息)。我已经尝试过带和不带尾随周期的反向区域更新。我觉得我错过了一些基本的东西,但我无法弄清楚它是什么。

感谢您的指点。这是我的配置文件和其他信息:

# cat /etc/named.conf

acl internals { …
Run Code Online (Sandbox Code Playgroud)

domain-name-system bind ddns

5
推荐指数
1
解决办法
2万
查看次数

绕过本地存根区域的 DNSSEC

我在 Internet DMZ 中使用 bind 9.9.2 作为 DNSSEC 验证递归解析器。我想将我的内部 DNS 服务器作为存根区域(理想情况下)或从属区域以外的任何区域(以避免非常大的区域传输)。我们使用可路由的 ip 空间进行内部寻址。抱歉,如果我在示例中使用的是您拥有的 IP 空间,但 167.xxx 是我发现的第一个适合我的问题的区域。

例如

dnssec-enable yes;
dnssec-validation yes;
dnssec-accept-expired no;
zone "16.172.in-addr.arpa" {
  type stub;
  masters { 167.255.1.53; }
}

zone "myzone.com" in {
type stub;
  masters { 167.255.1.53; }
}
Run Code Online (Sandbox Code Playgroud)

当查询到达 DNS 服务器时,它们尝试进行验证,但失败了,因为 167.in-addr.arpa 有一个 RRSIG 记录,但子区域没有(也不应该!)。本示例中使用了 Google dns,但实际上它是我的递归解析器。

    @8.8.8.8 -x 167.255.1.53 +dnssec
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 17488
;; flags: qr …
Run Code Online (Sandbox Code Playgroud)

domain-name-system bind recursive

5
推荐指数
1
解决办法
1344
查看次数

服务器找不到 XXX.in-addr.arpa: NXDOMAIN

我在配置 BIND DNS 时遇到问题,显示 server can't find XXX.in-addr.arpa: NXDOMAIN while reverse dns check!

一切都适用于正向 DNS 查找,但反向 DNS 查找失败。这是我的配置文件:

命名文件

options {
         listen-on port 53 { 192.168.10.1; }; //      listen-on-v6 port 53 { ::1; };
         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";
         allow-query     { any; };
         recursion no;
         allow-recursion {
         localhost;
         };

         dnssec-enable yes;
         dnssec-validation yes;
         dnssec-lookaside auto;

         /* Path to ISC DLV key */
         bindkeys-file "/etc/named.iscdlv.key";     anaged-keys-directory "/var/named/dynamic"; };

 logging {
         channel default_debug {
                 file "data/named.run";
                 severity dynamic;
         }; …
Run Code Online (Sandbox Code Playgroud)

domain-name-system linux bind reverse-dns nslookup

5
推荐指数
1
解决办法
4万
查看次数