HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials

HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials (http://www.howtoforge.com/forums/index.php)
-   Feature Requests (http://www.howtoforge.com/forums/forumdisplay.php?f=31)
-   -   Bulk allow-transfer option needed for DNS. (http://www.howtoforge.com/forums/showthread.php?t=57718)

Bookworm 24th June 2012 09:47

Bulk allow-transfer option needed for DNS.
 
My fingers are already getting tired.

Apparently, ISPConfig does Bind9 the hard way.

Instead of simply using the flat files that Bind works best with, ISPConfig uses a SQL copy AND a flat file copy of the same zones.

Here's the problem. If you want to update other servers, you have to type the 'allow-transfer' server IP's in manually - in every... single... zone... entry...

I have _ninety one_ domains I provide DNS for. I'm on page 2, so far.

I can update the flat files _fast_, and reload Bind so things are working - but ISPConfig doesn't have a "refresh from flat file" option, and if I touch _one_ zone file, ISPConfig will then rewrite _all_ of the options in named.conf.local. I'm assuming it just generates a new file, then overwrites the existing file, rather than doing an update.

---

Suggestion. Either have a global 'allow-transfers' update option, or have an option to allow refreshing the database with the existing flat files. The latter would make the most sense, as it would let people use tools such as 'sed' to make fast changes. The former would be easier to implement.

As it is, I'm looking at hacking together a quick 'fill in the xfer field of the SOA table' script; even if it takes an hour, it'll be faster than doing it manually.

Bookworm 24th June 2012 09:55

For those who need to do fast updates, here's the quick and dirty method I used. This only works if the fields are blank - if the fields are already populated, just use a search and replace.

In phpMyAdmin, go to dbispconfig, and open the 'sql' tab.

UPDATE `dbispconfig`.`dns_soa` SET `xfer` = '<IP1>, <IP2>'

<ip1> would be ***.***.***.***, of course.

That filled in the 68 records I hadn't gotten to in about a quarter of a second.

----

If you need to search and replace, it'll be this.

UPDATE `dbispconfig`.`dns_soa` SET `xfer` = REPLACE(`xfer`,"<IP1>, <IP2", "<IP1>, <IP2>, <IP3>");

(Remember to then edit one of the zone records and save it, so that it updates the named.conf.local file)

maumar 29th July 2012 20:40

we implement a till suggestion, i dunno if is useful to you...
below is what we do

1. we have a template with

Code:

[ZONE]
origin={DOMAIN}.
ns=some.dom.tld.
mbox=domains.dom.tld.
refresh=3600
retry=7200
expire=3600
minimum=86400
ttl=3600
xfer=common-allow-transfer

[DNS_RECORDS]


into named.conf.options
Code:

acl common-allow-transfer { ip1;ip2;...;}
then in option
Code:

options {
[...]
 allow-transfer {common-allow-transfer; };

and so on....

Bookworm 30th July 2012 06:18

I'll look into that. I didn't realize there was a global option, all of the documentation talks about doing it per zone. (It still might not last if the ispconfig wipes the configuration files every time you reload)

maumar 30th July 2012 09:00

Not at all :)
I do not touch any zone file, never ever, fr this reason.
This solution relies on templates, and for this reason is winning.
Zone files are that of ispconfig and keep the setting ov common-allow-transfer.


All times are GMT +2. The time now is 14:48.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.