Amazon Route 53 behavior depends on whether you specify a value for
IPAddress.
If you specify a value forIPAddress:Amazon Route 53 sends health check requests to the specified IPv4 or IPv6 address and passes the value of
FullyQualifiedDomainName in the
Host header for all health checks except TCP health checks. This is typically the fully qualified DNS name of the endpoint on which you want Route 53 to perform health checks.When Route 53 checks the health of an endpoint, here is how it constructs the
Host header:
- If you specify a value of 80 for Port and HTTP or HTTP_STR_MATCH for Type, Route 53 passes the value of FullyQualifiedDomainName to the endpoint in the Host header.
- If you specify a value of 443 for Port and HTTPS or HTTPS_STR_MATCH for Type, Route 53 passes the value of FullyQualifiedDomainName to the endpoint in the Host header.
- If you specify another value for Port and any value except TCP for Type, Route 53 passes FullyQualifiedDomainName:Port to the endpoint in the Host header.
If you don't specify a value for
FullyQualifiedDomainName, Route 53 substitutes the value of
IPAddress in the
Host header in each of the preceding cases.
If you don't specify a value forIPAddress:Route 53 sends a DNS request to the domain that you specify for
FullyQualifiedDomainName at the interval that you specify for
RequestInterval. Using an IPv4 address that DNS returns, Route 53 then checks the health of the endpoint.If you don't specify a value for
IPAddress, Route 53 uses only IPv4 to send health checks to the endpoint. If there's no resource record set with a type of A for the name that you specify for
FullyQualifiedDomainName, the health check fails with a "DNS resolution failed" error.If you want to check the health of weighted, latency, or failover resource record sets and you choose to specify the endpoint only by
FullyQualifiedDomainName, we recommend that you create a separate health check for each endpoint. For example, create a health check for each HTTP server that is serving content for www.example.com. For the value of
FullyQualifiedDomainName, specify the domain name of the server (such as us-east-2-www.example.com), not the name of the resource record sets (www.example.com).
In this configuration, if you create a health check for which the value of FullyQualifiedDomainName matches the name of the resource record sets and you then associate the health check with those resource record sets, health check results will be unpredictable.In addition, if the value that you specify for
Type is
HTTP,
HTTPS,
HTTP_STR_MATCH, or
HTTPS_STR_MATCH, Route 53 passes the value of
FullyQualifiedDomainName in the
Host header, as it does when you specify a value for
IPAddress. If the value of
Type is
TCP, Route 53 doesn't pass a
Host header.