External and Internal DNS: The 8 Steps in A DNS Lookup
External and Internal DNS: The 8 Steps in A DNS Lookup
Usually, a company will have an external DNS to manage his own public IP, you mount a server to
allow external users to reach some services that you publish on internet (it can be a web server, or a
VPN gateway, etc.).
For internal users, you'll use an internal server for several reasons, among them :
IP range used internally is not the one used externally. You use generally what we call
private IP adress range (because you can't have as many public IP as the number you would
need for your internals hosts). If you have a service that can be reachable for external users
and internals users, usually internal users will reach a service on the LAN, where external
users will reach the service through the WAN. Those two have differents adresses, for a
identical domain name. So if you rely only to an external DNS for your internal users, the trafic
will have to go on internet before coming back to the LAN because your users use an external
IP to reach the service.
The is a variety of internal services that you don't want to publish externally (DNS record
are public, you may not want everyone to know what you are hosting internally). It it important
in term of security. Mapping a network an from external view using passive gathering is not
something you want.
Internal DNS can be used to cache information. You'll reduce request sent externaly to
authoritative servers. DNS queries are very small, but come often.
An internal DNS allow you to be very flexible in term of managing several internal
domains. Using an external DNS, you'll have some constraint that you don't have using them
internally.
External DNS are usually authoritative, would not answer to recusrsive queries and do not
cache result. But it's very fast to answer queries. You may want to adresse the
recursive/cache part with a internal DNS
1. A user types ‘example.com’ into a web browser and the query travels into the Internet
and is received by a DNS recursive resolver.
3. The root server then responds to the resolver with the address of a Top Level Domain
(TLD) DNS server (such as .com or .net), which stores the information for its domains.
When searching for example.com, our request is pointed toward the .com TLD.
5. The TLD server then responds with the IP address of the domain’s nameserver,
example.com.
7. The IP address for example.com is then returned to the resolver from the nameserver.
8. The DNS resolver then responds to the web browser with the IP address of the domain
requested initially.
Once the 8 steps of the DNS lookup have returned the IP address for
example.com, the browser is able to make the request for the web page:
10. The server at that IP returns the webpage to be rendered in the browser (step 10).
Whenever a user types a domain name (such as ‘cloudflare.com’) into their browser window, this
triggers a DNS lookup. A series of remote computers known as DNS servers then find the IP
address for that domain and return it to the user’s computer so that they can access the correct
website.
\