ToolXON Blog

DNS Lookup Commands

DNS lookup commands: Compare DNS query tools across Linux, macOS and Windows to inspect A/AAAA, MX, TXT records, resolver responses and delegation paths. This guide explains what each command does, its syntax, practical examples, useful options, and common mistakes. Commands are shown for typical installations; flags can vary across operating-system and tool versions.

Before you start

Open a terminal appropriate for the operating system shown in the examples. Check that the required tool is installed and that you are running it with the permissions needed for your task. Replace sample names, paths, hostnames and IDs with values from your own environment.

Syntax at a glance

Square brackets usually indicate optional arguments, while uppercase words such as FILE, HOST and PACKAGE are placeholders that you replace. Keep quotes around paths or text that contains spaces. Commands should be tested on a safe sample before being used in production.

Quick command reference

CommandWhat it doesExampleUseful options
nslookupQuery DNS names and recordsnslookup example.comInteractive mode can query A, AAAA, MX and TXT records
digQuery DNS records with detailed outputdig example.com MX@SERVER chooses resolver; +short produces concise answers
hostPerform a simple DNS lookuphost -t AAAA example.com-t selects record type; server can be supplied last
Resolve-DnsNameQuery DNS in PowerShellResolve-DnsName example.com -Type MX-Server selects resolver; -DnsOnly limits query approach where supported
dig +traceTrace delegation from DNS root to authoritative serverdig +trace example.comMay be blocked by network policy; produces much more output

Command syntax and examples explained

1. nslookup

Purpose: Query DNS names and records.

Syntax

nslookup NAME [SERVER]

Example

nslookup example.com

Options and notes: Interactive mode can query A, AAAA, MX and TXT records.

DNS results vary by resolver and network split-horizon rules.

2. dig

Purpose: Query DNS records with detailed output.

Syntax

dig NAME TYPE

Example

dig example.com MX

Options and notes: @SERVER chooses resolver; +short produces concise answers.

Check TTL and answer section when validating propagation.

3. host

Purpose: Perform a simple DNS lookup.

Syntax

host NAME [SERVER]

Example

host -t AAAA example.com

Options and notes: -t selects record type; server can be supplied last.

Tool availability depends on installed DNS utilities.

4. Resolve-DnsName

Purpose: Query DNS in PowerShell.

Syntax

Resolve-DnsName NAME -Type TYPE

Example

Resolve-DnsName example.com -Type MX

Options and notes: -Server selects resolver; -DnsOnly limits query approach where supported.

Helpful when diagnosing DNS using native Windows tools.

5. dig +trace

Purpose: Trace delegation from DNS root to authoritative server.

Syntax

dig +trace NAME

Example

dig +trace example.com

Options and notes: May be blocked by network policy; produces much more output.

A trace can help isolate delegation problems but is not a direct cache-propagation guarantee.

Common mistakes and troubleshooting

  • Command not found: confirm the tool is installed and available on your PATH; open a new terminal after changing PATH.
  • Permission denied: verify the current account, file permissions and target path. Use administrator/root privileges only when genuinely required.
  • Unexpected output: check the command version, quoting, current directory and exact arguments. Consult the local help or manual for options supported by your build.
  • Destructive operations: preview the target and keep a backup before deleting data, rewriting history, flashing a partition or changing system configuration.

Safety tips

Review every command before running it, especially commands that delete files, change permissions, flash firmware, alter a database or expose a network service. For network scanning and remote administration, work only on devices and systems you own or are authorized to test. Keep credentials, private keys, access tokens and log files private.

Frequently asked questions

Do these commands work on every system?

Not always. Some commands are specific to Windows, Linux, Android, a particular package manager or an installed tool version. Use the syntax shown for your platform and check local help when a flag is unavailable.

Can I copy and run every example exactly?

Use the examples as templates. Replace placeholders such as filenames, package IDs, hostnames and paths with your own values, and verify the effect before executing a command that changes data or system state.

Conclusion

Use this reference as a starting point, then confirm flags in the tool’s official help or manual for your installed version. A clear understanding of syntax, options and side effects makes command-line work more reliable.