Explore the concept of the DNS queriyng and look at the difference between iterative and recursive queries.
- [Instructor] One of the keys to understanding how name resolution works in DNS is understanding the concept of querying. Querying can be thought of as very simple in the sense that it's just the idea of a client saying to a DNS server, hey, I have a name. Can you tell me an IP address? But it gets a little bit more sophisticated that than and so to show you a little bit and talk to you about it, let's connect to Member 1 which is a DNS server on my network. Here in the server manager, I'll just go to tools and select DNS. Takes me into the DNS manager. If I were to go to Member 1 and right-click and go to properties, the first thing I want to show you is on the monitoring tab, there are a couple of tests you can do and I'm here not so much to talk to you about the tests, but to just show you that there is a test for what's called a simple query and a recursive query.
A simple query is just that. It is a simple or what's sometimes called an iterative query where the client says, hey, do you know the IP address for this name? The DNS server will either know it or it won't, but that's it meaning it's just going to give its best answer it can give. Either yes I do, no I don't, or no I don't, but here's somebody else you can go ask, so go ask them. A recursive query, however, is where the DNS server goes out on behalf of the client and does not give a response back to the client until it does all its research and gives either an answer or an authoritative no, I do not have an answer.
Now, the best way to explain how this works would be to talk to you about what happens when you browse the internet. Now, before we do browse the internet, I want to click on another tab here that says Root Hints, because we're going to talk about these root servers. Okay, this is just a list of 13 root servers. Let me open up my internet browser and here we're connected to www.linkedin.com. Here's what happens. When a client says, I'm looking for www.linkedin.com. We go to the DNS server and say, do you know who that is? It's a recursive query meaning the DNS server is going to do everything in its power to find the answer for who www.linkedin.com is.
The first thing you need to know is that technically it's www.linkedin.com. and what that dot at the end is is it stands for root. What happens is is that the DNS server will go to the root DNS servers, that's what I was just showing you in Root Hints. That's where it gets the IP addresses for those servers from and it does a simple query and says, hey, root DNS servers, do you know who www.linkedin.com is? Those servers will say, no, we don't know who that is, but we do know about a DNS server called .com.
We know the .com DNS server. Then, the local DNS server says, thank you, and does another simple query to the .com DNS servers and says, hey, .com DNS servers, do you know who www.linkedin.com is? Keep in mind that when you register a .com, that's exactly what you're doing. You are registering your DNS servers with the .com servers. The .com server's going to actually, believe it or not, respond back and say, you know what? I don't know who www.linkedin.com is, but I do have an entry here for a DNS server that's authoritative for linkedin.com and so it responds back with that.
The local DNS server says, great. It goes to the IP address for linkedin.com or to be specific, the DNS server for linkedin.com, and says do you know who www.linkedin.com is? The linked.com DNS server will say, you know what? I do, I actually know who that server is. Here is the IP address and it sends that IP address back to the local DNS server here that this client is using and then at that point that server is able to send the response back to the client and the webpage displays in the browser.
That is how recursive querying works. All right, so simple query is just, hey, do you know who it is? It's yes or no, maybe a referral to somebody else. Recursive query is I'm going to go out on behalf of the client and research and find the answer for you.
- What is Dynamic Host Configuration Protocol (DHCP)?
- Setting up DHCP
- Securing and troubleshooting DHCP
- Configuring a DHCP relay agent
- Deploying Domain Name System (DNS)
- Creating stub zones and reverse lookup zones
- Testing queries
- DNS security