The DNS server looks up the corresponding IP address of the domain name in its DNS database. If
no match is found, it sends a query to a higher level DNS server. This process continues until a
result, whether successful or not, is returned.
The DNS client returns the resolution result to the application after receiving a response from the
Figure 1-1 Dynamic domain name resolution
shows the relationship between the user program, DNS client, and DNS server.
The resolver and cache comprise the DNS client. The user program and DNS client can run on the
same device or different devices, while the DNS server and the DNS client usually run on different
Dynamic domain name resolution allows the DNS client to store latest mappings between domain
names and IP addresses in the dynamic domain name cache. There is no need to send a request to the
DNS server for a repeated query next time. The aged mappings are removed from the cache after some
time, and latest entries are required from the DNS server. The DNS server decides how long a mapping
is valid, and the DNS client gets the aging information from DNS messages.
The DNS client normally holds a list of suffixes which can be defined by users. It is used when the name
to be resolved is incomplete. The resolver can supply the missing part. For example, a user can
configure com as the suffix for aabbcc.com. The user only needs to type aabbcc to get the IP address of
aabbcc.com. The resolver can add the suffix and delimiter before passing the name to the DNS server.
If there is no dot in the domain name (for example, aabbcc), the resolver will consider this a host
name and add a DNS suffix before query. If no match is found after all the configured suffixes are
used respectively, the original domain name (for example, aabbcc) is used for query.
If there is a dot in the domain name (for example, www.aabbcc), the resolver will directly use this
domain name for query. If the query fails, the resolver adds a DNS suffix for another query.
If the dot is at the end of the domain name (for example, aabbcc.com.), the resolver will consider it
a fully qualified domain name (FQDN) and return the query result, successful or failed. Hence, the
dot "." at the end of the domain name is called the terminating symbol.
Currently, the device supports static and dynamic DNS services.