---
name: "fdnsmxalist"
section: "1"
platform: "linux"
package: "firedns"
version: "0.9.12+dfsg-3"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/fdnsmxalist"
---

# fdnsmxalist(1)

resolve a list of MX records and their corresponding A records for hostname

## NAME

fdnsmxalist - resolve a list of MX records and their corresponding A records for hostname

## SYNOPSIS

**fdnsmxalist \[***-x***\]** *\<hostname\>*

## DESCRIPTION

fdnsmxalist will attempt to look up a list of MX records for *hostname*. If any are found, they are printed to standard output seperated by newlines in the format:

 *Protocol* (*Priority*) *hostname*:*port*

The program then looks up lists of A and AAAA records for each MX record, and prints them to standard output, one IP per line.  Lines are printed to standard output starting with "ERROR: " if any MX records have no corresponding A or AAAA records, are CNAMEs (an RFC violation), or have A or AAAA records which point to non-routable IP addresses.

If the -x switch is passed on the command line, the program outputs machine-parsable XML instead of the human-readable tree.

Exit codes for the program are:

  *0* - Everything looks fine\
   *1* - An MX has a non-routable IP\
   *2* - An MX doesn't exist\
   *3* - An MX is a CNAME\
   *4* - An MX is an IP address\
 *100* - Invalid syntax\
 *103* - DNS timeout or host does not have MX records

## AUTHOR

Ian Gulliver \<ian@penguinhosting.net\>

## SEE ALSO

[**libfiredns**(3)](/libfiredns/3.md)
