resolver_endpoints
Creates, updates, deletes, gets or lists a resolver_endpoints resource.
Overview
| Name | resolver_endpoints |
| Type | Resource |
| Id | aws.route53resolver.resolver_endpoints |
Fields
The following fields are returned by SELECT queries:
- get_resolver_endpoint
- list_resolver_endpoints
| Name | Datatype | Description |
|---|---|---|
arn | string | The ARN (Amazon Resource Name) for the Resolver endpoint. |
creation_time | string | The date and time that the endpoint was created, in Unix time format and Coordinated Universal Time (UTC). |
creator_request_id | string | A unique string that identifies the request that created the Resolver endpoint. The CreatorRequestId allows failed requests to be retried without the risk of running the operation twice. |
direction | string | Indicates whether the Resolver endpoint allows inbound or outbound DNS queries: INBOUND: allows DNS queries to your VPC from your network OUTBOUND: allows DNS queries from your VPC to your network INBOUND_DELEGATION: Resolver delegates queries to Route 53 private hosted zones from your network. (INBOUND, OUTBOUND, INBOUND_DELEGATION) |
dns_64_enabled | boolean | Indicates whether DNS64 is enabled for the inbound Resolver endpoint. When true, Route 53 Resolver synthesizes AAAA (IPv6) records for IPv4-only services by prepending the 64:ff9b::/96 prefix to the IPv4 address. |
host_vpc_id | string | The ID of the VPC that you want to create the Resolver endpoint in. |
id | string | The ID of the Resolver endpoint. |
ip_address_count | integer | The number of IP addresses that the Resolver endpoint can use for DNS queries. |
ipv_6_internet_access_enabled | boolean | Indicates whether IPv6 internet access is enabled for the outbound Resolver endpoint. When true, the endpoint elastic network interfaces (ENIs) can forward DNS queries to public IPv6 targets through an internet gateway. |
modification_time | string | The date and time that the endpoint was last modified, in Unix time format and Coordinated Universal Time (UTC). |
name | string | The name that you assigned to the Resolver endpoint when you submitted a CreateResolverEndpoint request. (pattern: <code>(?!^[0-9]+$)([a-zA-Z0-9-_' ']+)</code>) |
outpost_arn | string | The ARN (Amazon Resource Name) for the Outpost. (pattern: <code>^arn:aws([a-z-]+)?:outposts:[a-z\d-]+:\d{12}:outpost/op-[a-f0-9]{17}$</code>) |
preferred_instance_type | string | The Amazon EC2 instance type. |
protocols | array | Protocols used for the endpoint. DoH-FIPS is applicable for a default inbound endpoints only. For an inbound endpoint you can apply the protocols as follows: Do53 and DoH in combination. Do53 and DoH-FIPS in combination. Do53 alone. DoH alone. DoH-FIPS alone. None, which is treated as Do53. For a delegation inbound endpoint you can use Do53 only. For an outbound endpoint you can apply the protocols as follows: Do53 and DoH in combination. Do53 alone. DoH alone. None, which is treated as Do53. |
resolver_endpoint_type | string | The Resolver endpoint IP address type. (IPV6, IPV4, DUALSTACK) |
rni_enhanced_metrics_enabled | boolean | Indicates whether RNI enhanced metrics are enabled for the Resolver endpoint. When enabled, one-minute granular metrics are published in CloudWatch for each RNI associated with this endpoint. When disabled, these metrics are not published. |
security_group_ids | array | The ID of one or more security groups that control access to this VPC. The security group must include one or more inbound rules (for inbound endpoints) or outbound rules (for outbound endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network. |
status | string | A code that specifies the current status of the Resolver endpoint. Valid values include the following: CREATING: Resolver is creating and configuring one or more Amazon VPC network interfaces for this endpoint. OPERATIONAL: The Amazon VPC network interfaces for this endpoint are correctly configured and able to pass inbound or outbound DNS queries between your network and Resolver. UPDATING: Resolver is associating or disassociating one or more network interfaces with this endpoint. AUTO_RECOVERING: Resolver is trying to recover one or more of the network interfaces that are associated with this endpoint. During the recovery process, the endpoint functions with limited capacity because of the limit on the number of DNS queries per IP address (per network interface). For the current limit, see Limits on Route 53 Resolver. ACTION_NEEDED: This endpoint is unhealthy, and Resolver can't automatically recover it. To resolve the problem, we recommend that you check each IP address that you associated with the endpoint. For each IP address that isn't available, add another IP address and then delete the IP address that isn't available. (An endpoint must always include at least two IP addresses.) A status of ACTION_NEEDED can have a variety of causes. Here are two common causes: One or more of the network interfaces that are associated with the endpoint were deleted using Amazon VPC. The network interface couldn't be created for some reason that's outside the control of Resolver. DELETING: Resolver is deleting this endpoint and the associated network interfaces. (CREATING, OPERATIONAL, UPDATING, AUTO_RECOVERING, ACTION_NEEDED, DELETING) |
status_message | string | A detailed description of the status of the Resolver endpoint. |
target_name_server_metrics_enabled | boolean | Indicates whether target name server metrics are enabled for the outbound Resolver endpoint. When enabled, one-minute granular metrics are published in CloudWatch for each target name server associated with this endpoint. When disabled, these metrics are not published. This feature is not supported for inbound Resolver endpoint. |
| Name | Datatype | Description |
|---|---|---|
arn | string | The ARN (Amazon Resource Name) for the Resolver endpoint. |
creation_time | string | The date and time that the endpoint was created, in Unix time format and Coordinated Universal Time (UTC). |
creator_request_id | string | A unique string that identifies the request that created the Resolver endpoint. The CreatorRequestId allows failed requests to be retried without the risk of running the operation twice. |
direction | string | Indicates whether the Resolver endpoint allows inbound or outbound DNS queries: INBOUND: allows DNS queries to your VPC from your network OUTBOUND: allows DNS queries from your VPC to your network INBOUND_DELEGATION: Resolver delegates queries to Route 53 private hosted zones from your network. (INBOUND, OUTBOUND, INBOUND_DELEGATION) |
dns_64_enabled | boolean | Indicates whether DNS64 is enabled for the inbound Resolver endpoint. When true, Route 53 Resolver synthesizes AAAA (IPv6) records for IPv4-only services by prepending the 64:ff9b::/96 prefix to the IPv4 address. |
host_vpc_id | string | The ID of the VPC that you want to create the Resolver endpoint in. |
id | string | The ID of the Resolver endpoint. |
ip_address_count | integer | The number of IP addresses that the Resolver endpoint can use for DNS queries. |
ipv_6_internet_access_enabled | boolean | Indicates whether IPv6 internet access is enabled for the outbound Resolver endpoint. When true, the endpoint elastic network interfaces (ENIs) can forward DNS queries to public IPv6 targets through an internet gateway. |
modification_time | string | The date and time that the endpoint was last modified, in Unix time format and Coordinated Universal Time (UTC). |
name | string | The name that you assigned to the Resolver endpoint when you submitted a CreateResolverEndpoint request. (pattern: <code>(?!^[0-9]+$)([a-zA-Z0-9-_' ']+)</code>) |
outpost_arn | string | The ARN (Amazon Resource Name) for the Outpost. (pattern: <code>^arn:aws([a-z-]+)?:outposts:[a-z\d-]+:\d{12}:outpost/op-[a-f0-9]{17}$</code>) |
preferred_instance_type | string | The Amazon EC2 instance type. |
protocols | array | Protocols used for the endpoint. DoH-FIPS is applicable for a default inbound endpoints only. For an inbound endpoint you can apply the protocols as follows: Do53 and DoH in combination. Do53 and DoH-FIPS in combination. Do53 alone. DoH alone. DoH-FIPS alone. None, which is treated as Do53. For a delegation inbound endpoint you can use Do53 only. For an outbound endpoint you can apply the protocols as follows: Do53 and DoH in combination. Do53 alone. DoH alone. None, which is treated as Do53. |
resolver_endpoint_type | string | The Resolver endpoint IP address type. (IPV6, IPV4, DUALSTACK) |
rni_enhanced_metrics_enabled | boolean | Indicates whether RNI enhanced metrics are enabled for the Resolver endpoint. When enabled, one-minute granular metrics are published in CloudWatch for each RNI associated with this endpoint. When disabled, these metrics are not published. |
security_group_ids | array | The ID of one or more security groups that control access to this VPC. The security group must include one or more inbound rules (for inbound endpoints) or outbound rules (for outbound endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network. |
status | string | A code that specifies the current status of the Resolver endpoint. Valid values include the following: CREATING: Resolver is creating and configuring one or more Amazon VPC network interfaces for this endpoint. OPERATIONAL: The Amazon VPC network interfaces for this endpoint are correctly configured and able to pass inbound or outbound DNS queries between your network and Resolver. UPDATING: Resolver is associating or disassociating one or more network interfaces with this endpoint. AUTO_RECOVERING: Resolver is trying to recover one or more of the network interfaces that are associated with this endpoint. During the recovery process, the endpoint functions with limited capacity because of the limit on the number of DNS queries per IP address (per network interface). For the current limit, see Limits on Route 53 Resolver. ACTION_NEEDED: This endpoint is unhealthy, and Resolver can't automatically recover it. To resolve the problem, we recommend that you check each IP address that you associated with the endpoint. For each IP address that isn't available, add another IP address and then delete the IP address that isn't available. (An endpoint must always include at least two IP addresses.) A status of ACTION_NEEDED can have a variety of causes. Here are two common causes: One or more of the network interfaces that are associated with the endpoint were deleted using Amazon VPC. The network interface couldn't be created for some reason that's outside the control of Resolver. DELETING: Resolver is deleting this endpoint and the associated network interfaces. (CREATING, OPERATIONAL, UPDATING, AUTO_RECOVERING, ACTION_NEEDED, DELETING) |
status_message | string | A detailed description of the status of the Resolver endpoint. |
target_name_server_metrics_enabled | boolean | Indicates whether target name server metrics are enabled for the outbound Resolver endpoint. When enabled, one-minute granular metrics are published in CloudWatch for each target name server associated with this endpoint. When disabled, these metrics are not published. This feature is not supported for inbound Resolver endpoint. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get_resolver_endpoint | select | region | Gets information about a specified Resolver endpoint, such as whether it's an inbound or an outbound Resolver endpoint, and the current status of the endpoint. | |
list_resolver_endpoints | select | region | Lists all the Resolver endpoints that were created using the current Amazon Web Services account. | |
create_resolver_endpoint | insert | region, CreatorRequestId, SecurityGroupIds, IpAddresses | Creates a Resolver endpoint. There are two types of Resolver endpoints, inbound and outbound: An inbound Resolver endpoint forwards DNS queries to the DNS service for a VPC from your network. An outbound Resolver endpoint forwards DNS queries from the DNS service for a VPC to your network. | |
associate_resolver_endpoint_ip_address | update | region, ResolverEndpointId, IpAddress | Adds IP addresses to an inbound or an outbound Resolver endpoint. If you want to add more than one IP address, submit one AssociateResolverEndpointIpAddress request for each IP address. To remove an IP address from an endpoint, see DisassociateResolverEndpointIpAddress. | |
update_resolver_endpoint | update | region, ResolverEndpointId | Updates the name, or endpoint type for an inbound or an outbound Resolver endpoint. You can only update between IPV4 and DUALSTACK, IPV6 endpoint type can't be updated to other type. | |
delete_resolver_endpoint | delete | region | Deletes a Resolver endpoint. The effect of deleting a Resolver endpoint depends on whether it's an inbound or an outbound Resolver endpoint: Inbound: DNS queries from your network are no longer routed to the DNS service for the specified VPC. Outbound: DNS queries from a VPC are no longer routed to your network. | |
disassociate_resolver_endpoint_ip_address | exec | region, ResolverEndpointId, IpAddress | Removes IP addresses from an inbound or an outbound Resolver endpoint. If you want to remove more than one IP address, submit one DisassociateResolverEndpointIpAddress request for each IP address. To add an IP address to an endpoint, see AssociateResolverEndpointIpAddress. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
region | string | AWS region (default: us-east-1) |
SELECT examples
- get_resolver_endpoint
- list_resolver_endpoints
Gets information about a specified Resolver endpoint, such as whether it's an inbound or an outbound Resolver endpoint, and the current status of the endpoint.
SELECT
arn,
creation_time,
creator_request_id,
direction,
dns_64_enabled,
host_vpc_id,
id,
ip_address_count,
ipv_6_internet_access_enabled,
modification_time,
name,
outpost_arn,
preferred_instance_type,
protocols,
resolver_endpoint_type,
rni_enhanced_metrics_enabled,
security_group_ids,
status,
status_message,
target_name_server_metrics_enabled
FROM aws.route53resolver.resolver_endpoints
WHERE region = '{{ region }}' -- required
;
Lists all the Resolver endpoints that were created using the current Amazon Web Services account.
SELECT
arn,
creation_time,
creator_request_id,
direction,
dns_64_enabled,
host_vpc_id,
id,
ip_address_count,
ipv_6_internet_access_enabled,
modification_time,
name,
outpost_arn,
preferred_instance_type,
protocols,
resolver_endpoint_type,
rni_enhanced_metrics_enabled,
security_group_ids,
status,
status_message,
target_name_server_metrics_enabled
FROM aws.route53resolver.resolver_endpoints
WHERE region = '{{ region }}' -- required
;
INSERT examples
- create_resolver_endpoint
- Manifest
Creates a Resolver endpoint. There are two types of Resolver endpoints, inbound and outbound: An inbound Resolver endpoint forwards DNS queries to the DNS service for a VPC from your network. An outbound Resolver endpoint forwards DNS queries from the DNS service for a VPC to your network.
INSERT INTO aws.route53resolver.resolver_endpoints (
CreatorRequestId,
Name,
SecurityGroupIds,
Direction,
IpAddresses,
OutpostArn,
PreferredInstanceType,
Tags,
ResolverEndpointType,
Protocols,
RniEnhancedMetricsEnabled,
TargetNameServerMetricsEnabled,
Dns64Enabled,
Ipv6InternetAccessEnabled,
region
)
SELECT
'{{ CreatorRequestId }}' /* required */,
'{{ Name }}',
'{{ SecurityGroupIds }}' /* required */,
'{{ Direction }}',
'{{ IpAddresses }}' /* required */,
'{{ OutpostArn }}',
'{{ PreferredInstanceType }}',
'{{ Tags }}',
'{{ ResolverEndpointType }}',
'{{ Protocols }}',
{{ RniEnhancedMetricsEnabled }},
{{ TargetNameServerMetricsEnabled }},
{{ Dns64Enabled }},
{{ Ipv6InternetAccessEnabled }},
'{{ region }}'
RETURNING
resolver_endpoint
;
# Description fields are for documentation purposes
- name: resolver_endpoints
props:
- name: region
value: "{{ region }}"
description: Required parameter for the resolver_endpoints resource.
- name: CreatorRequestId
value: "{{ CreatorRequestId }}"
description: |
A unique string that identifies the request and that allows failed requests to be retried without the risk of running the operation twice. CreatorRequestId can be any unique string, for example, a date/time stamp.
- name: Name
value: "{{ Name }}"
description: |
A friendly name that lets you easily find a configuration in the Resolver dashboard in the Route 53 console.
- name: SecurityGroupIds
value:
- "{{ SecurityGroupIds }}"
description: |
The ID of one or more security groups that you want to use to control access to this VPC. The security group that you specify must include one or more inbound rules (for inbound Resolver endpoints) or outbound rules (for outbound Resolver endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network. Some security group rules will cause your connection to be tracked. For outbound resolver endpoint, it can potentially impact the maximum queries per second from outbound endpoint to your target name server. For inbound resolver endpoint, it can bring down the overall maximum queries per second per IP address to as low as 1500. To avoid connection tracking caused by security group, see Untracked connections.
- name: Direction
value: "{{ Direction }}"
description: |
Specify the applicable value: INBOUND: Resolver forwards DNS queries to the DNS service for a VPC from your network. OUTBOUND: Resolver forwards DNS queries from the DNS service for a VPC to your network. INBOUND_DELEGATION: Resolver delegates queries to Route 53 private hosted zones from your network.
valid_values: ['INBOUND', 'OUTBOUND', 'INBOUND_DELEGATION']
- name: IpAddresses
description: |
The subnets and IP addresses in your VPC that DNS queries originate from (for outbound endpoints) or that you forward DNS queries to (for inbound endpoints). The subnet ID uniquely identifies a VPC. Even though the minimum is 1, Route 53 requires that you create at least two.
value:
- SubnetId: "{{ SubnetId }}"
Ip: "{{ Ip }}"
Ipv6: "{{ Ipv6 }}"
- name: OutpostArn
value: "{{ OutpostArn }}"
description: |
The Amazon Resource Name (ARN) of the Outpost. If you specify this, you must also specify a value for the PreferredInstanceType.
- name: PreferredInstanceType
value: "{{ PreferredInstanceType }}"
description: |
The instance type. If you specify this, you must also specify a value for the OutpostArn.
- name: Tags
description: |
A list of the tag keys and values that you want to associate with the endpoint.
value:
- Key: "{{ Key }}"
Value: "{{ Value }}"
- name: ResolverEndpointType
value: "{{ ResolverEndpointType }}"
description: |
For the endpoint type you can choose either IPv4, IPv6, or dual-stack. A dual-stack endpoint means that it will resolve via both IPv4 and IPv6. This endpoint type is applied to all IP addresses.
valid_values: ['IPV6', 'IPV4', 'DUALSTACK']
- name: Protocols
value:
- "{{ Protocols }}"
description: |
The protocols you want to use for the endpoint. DoH-FIPS is applicable for default inbound endpoints only. For a default inbound endpoint you can apply the protocols as follows: Do53 and DoH in combination. Do53 and DoH-FIPS in combination. Do53 alone. DoH alone. DoH-FIPS alone. None, which is treated as Do53. For a delegation inbound endpoint you can use Do53 only. For an outbound endpoint you can apply the protocols as follows: Do53 and DoH in combination. Do53 alone. DoH alone. None, which is treated as Do53.
- name: RniEnhancedMetricsEnabled
value: {{ RniEnhancedMetricsEnabled }}
description: |
Specifies whether RNI enhanced metrics are enabled for the Resolver endpoints. When set to true, one-minute granular metrics are published in CloudWatch for each RNI associated with this endpoint. When set to false, metrics are not published. Default is false. Standard CloudWatch pricing and charges are applied for using the Route 53 Resolver endpoint RNI enhanced metrics. For more information, see Detailed metrics.
- name: TargetNameServerMetricsEnabled
value: {{ TargetNameServerMetricsEnabled }}
description: |
Specifies whether target name server metrics are enabled for the outbound Resolver endpoints. When set to true, one-minute granular metrics are published in CloudWatch for each target name server associated with this endpoint. When set to false, metrics are not published. Default is false. This is not supported for inbound Resolver endpoints. Standard CloudWatch pricing and charges are applied for using the Route 53 Resolver endpoint target name server metrics. For more information, see Detailed metrics.
- name: Dns64Enabled
value: {{ Dns64Enabled }}
description: |
Specifies whether DNS64 is enabled for the inbound Resolver endpoint. When set to true, Route 53 Resolver synthesizes AAAA (IPv6) records for IPv4-only services by prepending the 64:ff9b::/96 prefix to the IPv4 address. This enables IPv6-only clients that send queries through the inbound endpoint to reach IPv4-only services. DNS64 works with NAT64 to provide complete IPv6-to-IPv4 translation. Default is false.
- name: Ipv6InternetAccessEnabled
value: {{ Ipv6InternetAccessEnabled }}
description: |
Specifies whether IPv6 internet access is enabled for the outbound Resolver endpoint. When set to true, the endpoint elastic network interfaces (ENIs) can forward DNS queries to public IPv6 targets through an internet gateway. Default is false. When you enable IPv6 internet access, use network controls like security groups, NACLs, or egress-only internet gateways to protect the endpoint ENIs from unsolicited ingress traffic. Be aware that some network controls can affect DNS query throughput due to connection tracking. For more information, see Amazon EC2 security group connection tracking and Resolver endpoint scaling.
UPDATE examples
- associate_resolver_endpoint_ip_address
- update_resolver_endpoint
Adds IP addresses to an inbound or an outbound Resolver endpoint. If you want to add more than one IP address, submit one AssociateResolverEndpointIpAddress request for each IP address. To remove an IP address from an endpoint, see DisassociateResolverEndpointIpAddress.
UPDATE aws.route53resolver.resolver_endpoints
SET
ResolverEndpointId = '{{ ResolverEndpointId }}',
IpAddress = '{{ IpAddress }}'
WHERE
region = '{{ region }}' --required
AND ResolverEndpointId = '{{ ResolverEndpointId }}' --required
AND IpAddress = '{{ IpAddress }}' --required
RETURNING
resolver_endpoint;
Updates the name, or endpoint type for an inbound or an outbound Resolver endpoint. You can only update between IPV4 and DUALSTACK, IPV6 endpoint type can't be updated to other type.
UPDATE aws.route53resolver.resolver_endpoints
SET
ResolverEndpointId = '{{ ResolverEndpointId }}',
Name = '{{ Name }}',
ResolverEndpointType = '{{ ResolverEndpointType }}',
UpdateIpAddresses = '{{ UpdateIpAddresses }}',
Protocols = '{{ Protocols }}',
RniEnhancedMetricsEnabled = {{ RniEnhancedMetricsEnabled }},
TargetNameServerMetricsEnabled = {{ TargetNameServerMetricsEnabled }},
Dns64Enabled = {{ Dns64Enabled }},
Ipv6InternetAccessEnabled = {{ Ipv6InternetAccessEnabled }}
WHERE
region = '{{ region }}' --required
AND ResolverEndpointId = '{{ ResolverEndpointId }}' --required
RETURNING
resolver_endpoint;
DELETE examples
- delete_resolver_endpoint
Deletes a Resolver endpoint. The effect of deleting a Resolver endpoint depends on whether it's an inbound or an outbound Resolver endpoint: Inbound: DNS queries from your network are no longer routed to the DNS service for the specified VPC. Outbound: DNS queries from a VPC are no longer routed to your network.
DELETE FROM aws.route53resolver.resolver_endpoints
WHERE region = '{{ region }}' --required
;
Lifecycle Methods
- disassociate_resolver_endpoint_ip_address
Removes IP addresses from an inbound or an outbound Resolver endpoint. If you want to remove more than one IP address, submit one DisassociateResolverEndpointIpAddress request for each IP address. To add an IP address to an endpoint, see AssociateResolverEndpointIpAddress.
EXEC aws.route53resolver.resolver_endpoints.disassociate_resolver_endpoint_ip_address
@region='{{ region }}' --required
@@json=
'{
"ResolverEndpointId": "{{ ResolverEndpointId }}",
"IpAddress": "{{ IpAddress }}"
}'
;