Custom DNS records in symbiosis


The docs say: “By default a set of typical records is created for each hosted domain with MX records pointing to the local system, and aliases such as www. and ftp. for convenience. If you wish you may edit the records to make custom additions or otherwise make changes to those defaults.”

I can see the generated DNS records in “” and indeed edit them. I’m not clear though in what circumstances they might get overwritten by symbiosis-dns-generate, which the docs say runs hourly.

For example, if my mail server is elsewhere, how would I ensure that the script leaves my custom MX records intact and does not try to insert, for example, the ip6 MX address for exim on BigV?



Files managed by Symbiosis have a cryptographic hash in the last line. Symbiosis won’t edit a file if any of the following is true:

  1. The file is empty
  2. The hash is missing
  3. The hash doesn’t match the file content (eg, when the file has been edited, but the hash hasn’t been updated)

So, roughly, if you edit the file, then Symbiosis won’t update it.


Thanks Ian.

Incidentally I get a warning running symbiosis-dns-generate:

warning: instance variable @prefixrexp not initialized



Incidentally, this went slightly wrong for me because of subdomains.

If you create a subdomain by creating a new directory (or symbolic link to an existing directory) under /srv, eg /srv/, then Symbiosis creates DNS records for the subdomain as if it were any other domain. This conflicted with the A record I had already created for the subdomain, and the new DNS records “won”.

I don’t really like having the DNS records for a domain spread over multiple files and I suppose the answer is to comment out all the entries in the DNS file created for the subdomain?



Late to the party here, but:
(1) - good idea about subdomains, I have a few where I should do the same. I guess all you need is an empty file and it won’t get overwritten.

(2) - I was caught out by the system not updating the DNS file after I’d modified it, because I set config/dkim (and created a private DKIM key), but symbiosis-generate-dns didn’t put a public key in my DNS file. I had to temporarily rename the DNS file, run symbiosis-dns-generate and then do some editing and renaming to get the key in the proper file. I only found out about the problem because an outgoing email provoked a bounce message.


That will depend on which record symbiosis-ssl encounters first, I think. I also think they’re evaluated in alphabetical order. So, it’s best to be sure that you’re using a good systematic method like this.