Why does my Registrar only want Name Server names?

I'm just experimenting with setting up my own name server for my personal domain. I have bind running locally and everything works fine, now I'm at the point where I'm telling my registrar to start sending other requests to it.

My registrar is only interested in the name of my name server, not its IP address. This doesn't make sense to me, as my name server doesn't have a resolvable name, and if it did, who would be resolving it?

I'm trying to minimise my requirements on external infrastructure (for the sake of learning). Can someone please explain this situation to me, and how I might run my website without a 3rd party name server.


Every name server must have a resolvable name, because the definition of an NS record requires it, e.g.:

$ORIGIN example.com
@   IN SOA ( ... )
@   IN NS ns1.example.com
    IN NS ns2.example.com

ns1 IN A 192.168.1.1
ns2 IN A 10.0.0.1

The example above is what's necessary if the hostnames for the name servers for your domain are within the same domain.

However your parent domain (e.g. .com) also needs to know these two IP addresses in these circumstances, so they would also have copies of those two A records above. When a parent zone keeps these records too they're known as "glue records".

In theory, then, your registrar should be asking for the IP addresses but only if the names are within your own domain.

Ultimately a domain look up for www.example.com would go:

  1. to the root name servers - where is www.example.com ?
  2. root servers - we don't know - ask the .com servers - they're here (known as a "referral")
  3. to the .com name servers - where is www.example.com ?
  4. .com name servers - we don't know, but we known what example.coms name servers are, and (this is the important part) - here are their IP addresses
  5. finally your name servers receive the query, and send back the right answer

DNS needs what is called a 'glue' record set up so that you can resolve the Master for that domain to its IP address. Your registrar should have instructions on how to setup a glue record within their hosting panel.

for reference: Wikipedia article with information on glue records


You need to add your hosts by name, first. The registry interface will have an option for this, probably called something like 'Add Host'. It adds them in a special way to the DNS tree so that you can then use them as nameservers.

Once you've added them, you can point to them in the same interface (as you've already discovered) as your name servers.

Sounds bizarre, but it's a basic 'bootstrap' problem.