I try to understand DNS recursion.
Assumed I have deployed a local DNS on my machine using bind.
I defined the zone file a A record for server1.example.com
.
I also defined as NS
record in the zone file and have a A
that tie to that NS
record.
Like the defintion made here:
https://web.mit.edu/rhel-doc/5/RHEL-5-manual/Deployment_Guide-en-US/s1-bind-zone.html
I can query this DNS server locally with
nslookup server1.example.com ::1
This is working as it is authoritative for zone example.com
If I want to use a recursive DNS server such as 8.8.8.8
instead instead of targeting my local DNS directly (which is also authoritative for example.com):
The process will be:
- The recursive DNS queries a DNS root nameserver (.).
- The root server then responds to the resolver with the address of Top Level Domain (TLD) DNS server (com) 2.The resolver then makes a request to the .com TLD.
- The TLD server then responds with the IP address of the domain’s nameserver, example.com.
- The recursive resolver sends a query to the domain’s nameserver.
- The IP address for server1.example.com (or example.com) is then returned to the resolver from the nameserver.
I am wondering what is the configuration made in TLD DNS server to know the IP of domain’s nameserver, example.com in step 3. How do we do it in practice? Is it is possible to make it point to my machine where named service is running?
How do we ensure that only the owner of the domain name can make this configuration in TLD DNS?