PowerDNS / pdns

PowerDNS Authoritative, PowerDNS Recursor, dnsdist
https://www.powerdns.com/
GNU General Public License v2.0
3.63k stars 904 forks source link

PowerDNS Bind backend with valid named.conf: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error #732

Closed Habbie closed 11 years ago

Habbie commented 11 years ago

Hello,

We have following issue with PDNS while we try pdn_control rediscover: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error

But config fine, we checked it via full pdns restart: Apr 6 14:16:10 ns2 pdns[15978]: [bindbackend] Done parsing domains, 2 rejected, 162772 new, 0 removed

After restart all works fine: pdns_control rediscover Ok Done parsing domains, 2 rejected, 0 new, 0 removed

Logs: Apr 6 10:10:12 ns2 pdns[29063]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error

Habbie commented 11 years ago

Author: anon I'm sure about there are no changes in named.conf in this time.

Habbie commented 11 years ago

Author: peter Can you please post a (small) named.conf that causes this problem?

Habbie commented 11 years ago

Author: anon Hello,

head -n 50 /etc/bind/named.conf
include "/etc/bind/named.conf.options";

# v1
# our 
zone "xn----7sbnsrbblns6hvb.xn--p1ai" {
    type master;
    file "/etc/bind/xn----7sbnsrbblns6hvb.xn--p1ai";
};
# our 
zone "xn--80ajpkefhtj4c.xn--p1ai" {
    type master;
    file "/etc/bind/xn--80ajpkefhtj4c.xn--p1ai";
};
# our
zone "xn----ptbqabcdeegl3a.xn--p1ai" {
    type master;
    file "/etc/bind/xn----ptbqabcdeegl3a.xn--p1ai";
};
# our
zone "xn----jtbjvegjj.xn--p1ai" {
    type master;
    file "/etc/bind/xn----jtbjvegjj.xn--p1ai";
};

zone "remteplo.com" {
    type master;
    file "/etc/bind/remteplo.com";
};
zone "gadget-shop.org" {
    type master;
    file "/etc/bind/gadget-shop.org";
};
zone "yantardom.ru" {
    type master;
    file "/etc/bind/yantardom.ru";
};
zone "temka.name" {
    type master;
    file "/etc/bind/temka.name";
};
zone "znetwork.ru" {
    type master;
    file "/etc/bind/znetwork.ru";
};
zone "provodovnet.com" {
    type master;
    file "/etc/bind/provodovnet.com";
};
....
ahupowerdns commented 11 years ago

Unable to reproduce with a typical named.conf.options. Can you supply this too?

pavel-odintsov commented 11 years ago

Hello,

I thinks, it's powerdns bug. I have small error in named.conf (it synced every minute with central server) but it fixed very fastly (3 minutes after 17:45) but powerdns still show parsing error:

May 21 17:45:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 17:50:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 17:55:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 18:20:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 18:25:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 18:30:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 19:15:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 19:20:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 19:25:07 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 19:40:07 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 19:45:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 19:55:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 20:05:09 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 20:10:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 21:00:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 21:05:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 21:10:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 21:25:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 21:30:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 21:45:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 21:50:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 22:05:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 22:15:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 22:25:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error May 21 22:30:08 ns4 pdns[30456]: Error parsing bind configuration: Error in bind configuration '/etc/bind/named.conf' on line 1: syntax error

May be this related with extrimely big size of named.conf, it's 13 megabytes.

pavel-odintsov commented 11 years ago
cat /etc/bind/named.conf.options
options {
    directory "/var/cache/bind";

    // If there is a firewall between you and nameservers you want
    // to talk to, you may need to fix the firewall to allow multiple
    // ports to talk.  See http://www.kb.cert.org/vuls/id/800113

    // If your ISP provided one or more IP addresses for stable 
    // nameservers, you probably want to use them as forwarders.  
    // Uncomment the following block, and insert the addresses replacing 
    // the all-0's placeholder.

    // forwarders {
    //  0.0.0.0;
    // };
        // hide version
        version "BIND";

        allow-transfer {"none";};

        # Отключаем notify, так как это порождает дикий трафик к остальным DNS
        # а PowerDNS в любом случае не принимает эти нотифаи 
        notify no;

        # enable statistics
        # rnds stats
        statistics-file "/var/run/named/named.stats";

        recursion no; 
        allow-recursion { none; };
    auth-nxdomain no;    # conform to RFC1035
    listen-on-v6 { none; };
};
pavel-odintsov commented 11 years ago

Hello,

I'm removed all includes and construct named.conf manually and commit it to powerdns after few checks (named-check).

After this I got error: Error in bind configuration '/etc/bind/named.conf' on line 682489: syntax error

Ok, I will check named.conf:

zone "avtozapchasti-101.info" {
    type master;
    file "/etc/bind/avtozapchasti-101.info";
};
zone "10-zapchasti.info" {
    type master;
    file "/etc/bind/10-zapchasti.info";
};
zone "zapchasti-avto777.info" {
    type master;
    file "/etc/bind/zapchasti-avto777.info";
};
zone "pornoigr.net" {
    type master;
    file "/etc/bind/pornoigr.net";
};
zone "new.isnano.ru" {
    type master;
    file "/etc/bind/new.isnano.ru";
};

As u can see, all configuration valid. I think, this issue related with very big named.conf size (13 Megabytes) and parser buffers overflow.