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.
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)
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....
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)
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.