Results 1 to 17 of 17
  1. #1

    Fun with DNS: Three useful commands

    Introduction

    These days most people manage their hosting using powerful and easy-to-use control panels that automate most tasks. But for some things, it is hard to beat the power of the command-line. These DNS commands are powerful tools, and this article should provide you enough information to get you started or offer a quick refresher if you already use these commands.

    The Domain Name System (DNS) is a distributed, hierarchical database where authority flows from the top (or root) of the hierarchy downward. When thinking of the structure of the DNS, imagine an inverted tree. Each branch of the tree is within a zone of authority; however, multiple branches of the tree can be within a single zone.

    The software (Bind being the most common) that stores domain name information is called a domain name server. A single name server can be authoritative for multiple zones. All zones have a primary master and a secondary master name server that provides authoritative responses for their zones.

    If you query a name server not authoritative for a particular zone, that name server will most likely have up-to-date information. This is because zone information propagates throughout the Internet at regular intervals, and name servers cache zone information for which they are not authoritative.

    DNS Commands

    There are three crucial commands that can put all the DNS information you need at your fingertips. The way to use this article is to try each of the commands listed on a domain name, so you can see what the output looks like. Learn by doing.

    Zone file database records divide DNS information into three primary types: NS (Name Server) records, MX (Mail Exchange) records, and A (Address) records. NS records indicate the name servers. MX records indicate the hosts that handle email delivery; the priority (pri) number indicates the order in which mail servers are used, with the lowest number receiving the highest priority. The A (Address) records map hostnames to IP addresses, the real names of machines.

    host

    This is the simplest of the DNS commands. It is a quick way to determine the IP address of a hostname:

    Code:
    :~$ host www.your-domain-name.com
    The -a option will return all of the DNS information in verbose format:

    Code:
    :~$ host -a www.your-domain-name.com
    Now that you know the IP address for www.your-domain-name.com, try a reverse lookup:

    Code:
    :~$ host <IP address>
    dig (domain information groper)

    This command gathers and returns DNS information in a format the name server can use directly. You will find it easy to query specific name servers with dig.

    You can quickly determine the Name servers of your host or any other host:

    Code:
    :~$ dig ns your-host.com
    Then you check your (or another) website against the host's name servers:

    Code:
    :~$ dig www.your-domain-name.com @ns.your-host.com
    Dig can provide output that is in the same format as the zone file itself. Here is how to get the whole zone file:

    Code:
    :~$ dig any your-domain-name.com
    Here are the most useful dig query types: dig any (gathers all DNS information), dig ns (gathers name server information), dig mx (gathers mail exchanger information) and dig a (gathers network address information).

    The dig command can also do reverse lookups with output formatted for the zone file:

    Code:
    :~$ dig -x <IP Address>
    nslookup

    You can use this tool as a single line command, or you can use it interactively, which distinguishes it from the other DNS commands. Once you have started nslookup, type set all to list the default options. As with dig you can choose the server (name server) you want to query, and you can decide the type of DNS information on which to focus.

    Just as you can issue commands to nslookup interactively, you can also change the initial defaults by starting a .nslookuprc file. The format of the .nslookup is one command per line:

    set type=NS
    set domain=srvns.your-host.com
    set timeout=10

    Conclusion

    Understanding the Internet requires a solid working knowledge of the Domain Name System. One way to increase your knowledge is to regularly use the three commands outlined in this article: host, dig, and nslookup.
    Try the StreamSend Email Marketing Service. StreamSend is a permission-based email marketing service that offers both a private label reseller program and an affiliate program.

  2. #2
    I just posted this article and was looking for some feedback. First of all, do you think the [code] tag works well to show the commands above?

    Any suggestions on content, etc., of this article would be appreciated.

    Thank you.
    Try the StreamSend Email Marketing Service. StreamSend is a permission-based email marketing service that offers both a private label reseller program and an affiliate program.

  3. #3
    Join Date
    Jun 2005
    Posts
    703
    Nice into to DNS commands. The nslookup section is a liitle short, so may be you want to tell the readers to find out more with 'man nslookup' (because the interactive help isn't implemented yet).

    I think the code tag is an exellent idea.

    I would take out the `:~$' though, I got the impression that quite a few people on WHT have no idea what that could be. (And it gives them errors too!)

    -andre

  4. #4
    ah, the :~$: is supposed to represent the unix/linux prompt. Any suggestions on how I could represent that better?

    Thanks.
    Try the StreamSend Email Marketing Service. StreamSend is a permission-based email marketing service that offers both a private label reseller program and an affiliate program.

  5. #5
    Join Date
    Jun 2005
    Posts
    703
    I know it's the prompt .

    I would leave it out, I think. I mean those commands don't need to be run from a specific location (such as your home dir), as long as you have a shell and the correct permissions you can run them. Other people may nave other opinions, but again, I would leave it out and just post the commands.

  6. #6
    too late to edit the article but your point is well taken. Thank you.

    I will probably publish similar articles in the future and will leave out the prompt.
    Try the StreamSend Email Marketing Service. StreamSend is a permission-based email marketing service that offers both a private label reseller program and an affiliate program.

  7. #7
    Well, thanks to everyone who posted their feedback.

    Please let me know if you have any ideas for follow-up articles on DNS and DNS related topics.

    Thank you.
    Try the StreamSend Email Marketing Service. StreamSend is a permission-based email marketing service that offers both a private label reseller program and an affiliate program.

  8. #8
    how about a tutorial how to configure dns ?

  9. #9
    That's a good idea. Right now I am extremely busy but will put it on my list of things to do.

    Specifically how to configure DNS/Bind is what you are suggesting?
    Try the StreamSend Email Marketing Service. StreamSend is a permission-based email marketing service that offers both a private label reseller program and an affiliate program.

  10. #10
    well I think using bind as an example for the tutorial will be alright.

  11. #11
    Thanks very good info

  12. #12
    great stuff.. thanks for the info
    http://peteravey.com - Portsmouth web design

  13. #13
    Join Date
    Jul 2005
    Posts
    139
    A useful command for troubleshooting reverse DNS lookup failures:

    $ dig -x <IP address> ns +trace
    This will walk the entire in-addr tree and show you where the point of failure is (the root, an RIR, you|your upstream|somewhere else).

    Also recommend you pipe the output to less for readability.

    Best regards,

  14. #14
    Quote Originally Posted by garp74
    A useful command for troubleshooting reverse DNS lookup failures:



    This will walk the entire in-addr tree and show you where the point of failure is (the root, an RIR, you|your upstream|somewhere else).

    Also recommend you pipe the output to less for readability.

    Best regards,
    Great addition. Thanks.
    Try the StreamSend Email Marketing Service. StreamSend is a permission-based email marketing service that offers both a private label reseller program and an affiliate program.

  15. #15
    Great info. Thanks for sharing the knowledge. This is the main power, The Sharing of knowledge that makes forums so popular.

  16. #16
    Thanks for sharing the knowledge

  17. #17
    any equivalent commands for Windoze XP Pro?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •