Adding provided secondary DNS server to bind

binddomain-name-system

I am using a secondary DNS server that my hosting provider has giving to me for my domain, the URL for it is:

sdns1.ovh.ca

I am using Webmin to install the DNS server on my Ubuntu Server. Since a CNAME to sdns1.ovh.ca would not be allowed, how do I add this to my name server so ns1.example.com is the main dns server, and ns2.example.com is the name server my provider has giving me?

Zone file:

domain.me.  IN  SOA ns1.domain.me. xxxxx.gmail.com. (
            1360915275
            10800
            3600
            604800
            38400 )
domain.me.  IN  NS  ns1.domain.me.
domain.me.  IN  A   192.95.29.122
www.domain.me.  IN  A   192.95.29.122
ns1.domain.me.  IN  A   192.95.29.122
domain.me.  IN  NS  ns2.domain.me.
ns2.domain.me.  IN  CNAME   sdns1.ovh.ca.

Godaddy's Host Summary:

ns1.domain.me
Host Ip: 192.95.29.122

ns2.domain.me
Host Ip: 192.95.29.122

Best Answer

I'm having a little difficulty decoding your question, but assuming what you're saying is that your DNS registrar has given you a second DNS server for your domain, and you want to know how to edit the zone file on your DNS primary to make it consistent with this new information, the answer is to add a record in the zonefile that says

IN                NS      sdns1.ovh.ca.

Note that terminal dot - it's important. This will not magically add the new DNS server to the list of name servers returned by the TLD servers (those authoritative for the domain of which yours is a child) when your domain is queried; that has to be done separately. Nor does it magically set this new DNS server up as a slave, pointing to your primary server as the master (one would hope that the provider has done this, since it was they who told you the new server's details). But once those other things have been done, the above will make it all self-consistent.

It would have been easier to answer this question if you'd provided your domain. Obviously, some won't want to, and others are forbidden to, but DNS is a fairly public system; no confidentiality or security is lost by telling us that it exists. So if you need to ask further questions about this, I urge you to provide that information.

Edit: yes, this goes into the zonefile for the domain, on the DNS master. If manually, it goes in the zonefile for the domain as detailed in named.conf; you'll need to know where your own named.conf lives, as it varies by OS, platform, and implementation.

Edit: from memory, I'm fairly sure that an NS record must not be a CNAME (later edit: this is indeed so, see RFC2181 s10.3). Remove the lines

craftblock.me.      IN  NS  ns2.craftblock.me.
ns2.craftblock.me.  IN  CNAME   sdns1.ovh.ca.

and replace them with

craftblock.me.      IN  NS  sdns1.ovh.ca.

and thank you for telling us the domain name.

Edit: in the light of what you've told us about godaddy's information, your NS records should probably read:

craftblock.me.      IN  NS  ns1.craftblock.me.
craftblock.me.      IN  NS  ns2.craftblock.me.
ns1.craftblock.me.  IN  A   192.95.29.122
ns2.craftblock.me.  IN  A   192.95.29.122

I note they're doing that awful old trick of having two NS records (which is required) which are in fact the same IP address (which is lame), but that's not your fault. Once this is up and running on your new registrar, you might want to arrange 2ary DNS hosting with someone else, maybe a friend or colleague, to restore the nameserver redundancy the DNS is supposed to give you.

Edit: we're going round in circles. As I said, advertising the right nameservers in your zonefile will do nothing for the whois information (the list of nameservers returned by your TLD's server) or the setup of your 2ary.

Plus your currently advertised DNS servers in the whois are NS1.NFOSERVERS.COM and NS2.NFOSERVERS.COM, so nothing we're discussing here will make any real difference. I'm no longer sure what you want, nor indeed that you're sure what you want.

Could you maybe consider overhauling this question in its entirety, or perhaps deleting it and opening a new question where you say clearly and simply what you want to achieve? May I add that in my opinion, messing around with the DNS is not for people who don't know what they're doing; it's quite easy to make your domain entirely non-functional. I think you should seriously consider whether you should be doing this at all with a professional domain, given that you don't appear to understand the underlying concepts.