I am interested in running my own DNS servers to make it easy to make updates to my domains' A-records. I am aware of the warnings of having my webserver and dns server on the same domain.
Currently my domains are registered through GoDaddy and I have registered two subdomains (ns1... and ns2...) and have them both pointing to my IP address. My desire was to be able to open port 53 and essentially have all requests for my domain query my IP:53, to which I would serve the A-record. Please excuse me if I am over-simplifying the process as it is admittedly complex and I am still learning the domain name resolution algorithm.
Ultimately I wanted to build my own DNS server using NodeJs, but when I followed the above preliminary steps, I discovered that even if I were to listen on port 53, I would get no traffic if I made requests to my domain through a browser. My router has been configured correctly to forward requests on Port 53 to my in-network server.
What could be the cause for this?
EDIT: I had this question posted in the wrong place (serverfault) for some time and got some advice but which is still unclear to me. It was suggested to me that I needed to update my NS records to point to the new nameservers, but I'm fairly certain that this was implicitly done when I set the nameservers to be my own. Are not all of the records now supposed to be served by my nameservers? Is the NS record one which remains always needing to be served from the registrar?
Another suggestion I got was that the nameservers needed to have A-records resolving to their IP address. Again, is GoDaddy the necessary party which needs to serve this A-record?
I also was told that DNS is "heavily cached" and so the browser doesn't connect directly but asks the OS for a DNS lookup. So, after notifying GoDaddy of the change to my domain's nameservers (to use my own) and after having once tried to request my domain (through my browser), what I would like to know is if the DNS request theoretically would've landed at port 53 of my nameserver IP?