If you should come across the following error messages while setting up Bind on Debian or Ubuntu chances are there was a bind update somewhere is the past and it has broken your setup.
WARNING: key file (/etc/bind/rndc.key) exists, but using default configuration file (/etc/bind/rndc.conf)
rndc: no server specified and no default
WARNING: key file (/etc/bind/rndc.key) exists, but using default configuration file (/etc/bind/rndc.conf)rndc: no server specified and no default

The cause of the error is the/etc/bind9/rndc.conf file.   rndc.conf is left behind when Bind is/was updated from a previous version.  While this may keep old configurations from breaking it seems to break new ones.    According to README.Debian  (/usr/share/doc/bind9/README.Debian), Bind’s configuration file layout changed and this file is no-longer needed.
The fix is simple:

  1. In /etc/bind remove rndc.conf.
  2. Add the following to /etc/bind/named.conf:
    include "/etc/bind/rndc.key";
    controls {
    inet 127.0.0.1 port 953
    allow { 127.0.0.1; } keys { "rndc-key"; };
    };
  3. Restart bind.