Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2
Topic Last Modified: 2009-11-23
You can adjust the DNS query sensitivity for slightly faster message delivery when DNS errors are encountered for the destination domain. However, depending on the DNS errors, this adjustment may cause delivery failures in certain circumstances.
DNS Queries and Remote Message Delivery
In a typical Microsoft Exchange Server 2010 organization, an Edge Transport server that's subscribed to the organization is responsible for delivering messages to external recipients. This Edge Transport server is responsible for accepting the outgoing messages from the Hub Transport server in the organization. The subscribed Edge Transport server must be able to find a destination messaging server that accepts mail for the external recipients. Depending on the destination, the messages are put in one or more remote delivery queues as they await delivery to the remote recipients. For more information about delivery queues, see Understanding Transport Queues.
The Edge Transport server queries the configured external DNS servers to find the DNS records that are required to deliver the message. The DNS servers that are configured for external DNS lookups are queried in the order in which they're listed. If one of the DNS servers is unavailable, the query goes to the next DNS server on the list. The DNS servers are queried for the following information:
- Mail exchange (MX) records for the domain part of the
external recipient The MX record contains the
fully qualified domain name (FQDN) of the messaging server that's
responsible for accepting messages for the domain, and a preference
value for that messaging server. A lower preference value indicates
a preferred messaging server. The preference value is important if
the domain has more than one MX record. To optimize fault
tolerance, most organizations use multiple messaging servers and
multiple MX records that have different preference values.
- Address (A) records for the destination messaging
servers Every messaging server that's used in
an MX record should have a corresponding A record. The A record is
used to find the IP address of the destination messaging server.
The subscribed Edge Transport server uses the IP address to open an
SMTP connection with the destination messaging server. Although
it's technically possible to use the FQDN of a canonical name
(CNAME) record in an MX record, this practice violates
RFC 974, RFC 1034, RFC 1912, and RFC 2181, and
is therefore not supported by most messaging servers.
The required combination of iterative DNS queries and recursive DNS queries that start with a root DNS server is used to resolve the FQDN of the messaging server that's found in the MX record into an IP address.
In Exchange 2010, there's a DNS query limit that's not configurable of 5 seconds for each DNS server, and a one-minute limit for the entire DNS query.
Potential DNS Problems
Even when the external DNS settings on the Microsoft Exchange Transport server are configured correctly, problems with the DNS records for a specific domain or problems with any of the DNS servers that are used to find the authoritative DNS server for a specific domain may still occur. Generally, these problems are beyond your control and need to be resolved by the parties that own those DNS servers. These DNS-related errors may be caused by one or more of the following conditions:
- Invalid DNS records for the destination domain
- Problems with DNS server utilization
- Problems with DNS server replication
In Exchange 2010, when a DNS query results in errors, the query continues to the next DNS server only if that DNS server hasn't already returned an error for the current query.
Exchange 2010 also includes a parameter in the EdgeTransport.exe.config application configuration file that's named DnsFaultTolerance. This parameter has the following values:
- Lenient When the DNS query encounters a
combination of valid MX records and invalid MX records, the DNS
query continues until the DNS query time-out value of
one minute is reached. The invalid MX records are discarded,
and the valid MX record that has the lowest preference value is
used to deliver the message to the destination messaging
server.
- Normal When the DNS query first
encounters an invalid MX record, any resolved MX records that have
a preference value that's greater than or equal to the invalid MX
records are immediately discarded. The remaining MX record that has
the lowest preference value is used to deliver the message to the
destination messaging server without waiting for the whole DNS
query to time out. Although this behavior may result in faster
message delivery, the potential drawback of this behavior is the
DNS query may have no valid MX records if the following conditions
are true:
- The invalid MX record is the first MX record for the
destination domain.
- The valid MX records have the same precedence value as the
invalid MX records.
- The invalid MX record is the first MX record for the
destination domain.
The default value of the DnsFaultTolerance
parameter on a Hub Transport server or Edge Transport server in
Exchange 2010 is Lenient
.
In both Normal
mode and
Lenient
mode, the results of the DNS query for an
invalid MX record are never cached. The next time that a DNS query
is executed, it will try to resolve the MX records for the
destination domain.
For more information about the EdgeTransport.exe.config file, see Understanding the EdgeTransport.exe.Config File.