I was quite eager to understand, how does DNS server work.
Scenario
If I do a DNS query, it reaches to local DNS server, now local DNS server checks locally, if information is not present, it queries for other DNS servers (in a hierarchical manner, root DNS, Top Level DNS, etc, so on).
Thoughts & Question
I wondered, does the local DNS server change the source ip of my request packet it received and if does change my source ip to its source ip for querying to other Dns servers, like NAT does (please correct me if I am thinking wrong), how does it keep track of me (like NAT does), like when the response comes from Root/TL/Secondary Dns server, how does it know that this response has to be directed to me.