[Pdns-users] using wildcards with multiple backends
Jay Coulter
jay at nextdimensioninc.com
Thu Jan 11 14:57:23 UTC 2007
Hi Bert, Thanks for the reply, I should have included more info to start
with...
We are using version 2.9.20 running on red hat. The backends
were compiled with version 3.2.3 gcc. We are not using the recursor.
The custom backend basically replies to any DNS request with a specific
IP that we have set up in the PDNS.CONF file as a parameter.
There are some requests for certain domains that we would like
to return other data and this can change from one day to the next so
this is why we decided to implement the GMYSQL backend in front of our
custom backend. We can store the info in the database and when PDNS
does not find any matches we would expect it to fall back to the custom
backend.
I have read how PDNS handles the wildcard and it seems to work properly
when just the GMYSQL backend is being used. Once I enable both
backends, the wildcard functionality no longer works the same. See
below examples.
Domain table entries
+----+----------+--------+------------+--------+-----------------+------
---+
| id | name | master | last_check | type | notified_serial |
account |
+----+----------+--------+------------+--------+-----------------+------
---+
| 1 | test.com | NULL | NULL | NATIVE | NULL | NULL
|
+----+----------+--------+------------+--------+-----------------+------
---+
Record table entries
+----+-----------+--------------------+------+-------------------------+
-------+------+-------------+
| id | domain_id | name | type | content |
ttl | prio | change_date |
+----+-----------+--------------------+------+-------------------------+
-------+------+-------------+
| 1 | 1 | test.com | SOA | localhost ahu at ds9a.nl 1 |
86400 | NULL | NULL |
| 2 | 1 | test.com | NS | dns-us1.powerdns.net |
86400 | NULL | NULL |
| 3 | 1 | test.com | NS | dns-eu1.powerdns.net |
86400 | NULL | NULL |
| 4 | 1 | www.test.com | A | 199.198.197.196 |
120 | NULL | NULL |
| 5 | 1 | mail.test.com | A | 195.194.193.192 |
120 | NULL | NULL |
| 6 | 1 | localhost.test.com | A | 127.0.0.1 |
120 | NULL | NULL |
| 7 | 1 | test.com | MX | mail.test.com |
120 | 25 | NULL |
| 8 | 1 | www.test.com | SOA | 255.255.255.255 |
86400 | NULL | NULL |
+----+-----------+--------------------+------+-------------------------+
-------+------+-------------+
Example 1 - with both backends enabled and a query for doc.test.com the
answer returned is the default IP set up in the custom backend which is
supposed to be called second.
C:\dig>dig doc.test.com
; <<>> DiG 9.3.2 <<>> doc.test.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 162
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;doc.test.com. IN A
;; ANSWER SECTION:
doc.test.com. 3600 IN A 68.218.251.49
;; Query time: 15 msec
;; SERVER:
;; WHEN: Thu Jan 11 09:46:52 2007
;; MSG SIZE rcvd: 46
Example 2 - only with the GMYSQL backend and a query for doc.test.com
the server accepts the wildcard query and handles correctly.
C:\dig>dig doc.test.com
; <<>> DiG 9.3.2 <<>> doc.test.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 904
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;doc.test.com. IN A
;; AUTHORITY SECTION:
test.com. 86400 IN SOA localhost. ahu.ds9a.nl.
1 10800
3600 604800 3600
;; Query time: 46 msec
;; SERVER:
;; WHEN: Thu Jan 11 09:48:21 2007
;; MSG SIZE rcvd: 86
Any direction you can provide me would be greatly appreciated!
Thanks,
Jay Coulter
-----Original Message-----
From: bert hubert [mailto:bert.hubert at netherlabs.nl]
Sent: Wednesday, January 10, 2007 4:23 PM
To: Jay Coulter
Cc: pdns-users at mailman.powerdns.com
Subject: Re: [Pdns-users] using wildcards with multiple backends
On Wed, Jan 10, 2007 at 04:21:31PM -0500, Jay Coulter wrote:
> We've developed a custom backend for PDNS at a clients request that is
> authoritative for any DNS request passed to it. They would like to
use
> real functionality of the DNS server with the GMysql backend in front
of
Jay,
Could you go into some more detail?
PowerDNS translates queries that don't match directly into a sequence of
*.something quiries.
But please elaborate a bit.
Thanks.
--
http://www.PowerDNS.com Open source, database driven DNS Software
http://netherlabs.nl Open and Closed source services
More information about the Pdns-users
mailing list