AWS::Route53Resolver::ResolverEndpoint
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.
Important
-
You cannot update
ResolverEndpointType
andIpAddresses
in the same request. -
When you update a dual-stack IP address, you must update both IP addresses. You can’t update only an IPv4 or IPv6 and keep an existing IP address.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::Route53Resolver::ResolverEndpoint", "Properties" : { "Direction" :
String
, "IpAddresses" :[ IpAddressRequest, ... ]
, "Name" :String
, "OutpostArn" :String
, "PreferredInstanceType" :String
, "Protocols" :[ String, ... ]
, "ResolverEndpointType" :String
, "SecurityGroupIds" :[ String, ... ]
, "Tags" :[ Tag, ... ]
} }
YAML
Type: AWS::Route53Resolver::ResolverEndpoint Properties: Direction:
String
IpAddresses:- IpAddressRequest
Name:String
OutpostArn:String
PreferredInstanceType:String
Protocols:- String
ResolverEndpointType:String
SecurityGroupIds:- String
Tags:- Tag
Properties
Direction
-
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
Required: Yes
Type: String
Allowed values:
INBOUND | OUTBOUND
Update requires: Replacement
-
IpAddresses
-
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.
Note
Even though the minimum is 1, Route 53 requires that you create at least two.
Required: Yes
Type: Array of IpAddressRequest
Minimum:
2
Maximum:
20
Update requires: No interruption
Name
-
A friendly name that lets you easily find a configuration in the Resolver dashboard in the Route 53 console.
Required: No
Type: String
Pattern:
(?!^[0-9]+$)([a-zA-Z0-9\-_' ']+)
Maximum:
64
Update requires: No interruption
OutpostArn
-
The ARN (Amazon Resource Name) for the Outpost.
Required: No
Type: String
Pattern:
^arn:aws([a-z-]+)?:outposts:[a-z\d-]+:\d{12}:outpost/op-[a-f0-9]{17}$
Minimum:
1
Maximum:
255
Update requires: Replacement
PreferredInstanceType
-
The Amazon EC2 instance type.
Required: No
Type: String
Minimum:
1
Maximum:
255
Update requires: Replacement
Protocols
-
Protocols used for the endpoint. DoH-FIPS is applicable for 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 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.
Required: No
Type: Array of String
Minimum:
1
Maximum:
2
Update requires: No interruption
-
ResolverEndpointType
-
The Resolver endpoint IP address type.
Required: No
Type: String
Allowed values:
IPV6 | IPV4 | DUALSTACK
Update requires: No interruption
SecurityGroupIds
-
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.
Required: Yes
Type: Array of String
Update requires: Replacement
-
Route 53 Resolver doesn't support updating tags through CloudFormation.
Required: No
Type: Array of Tag
Maximum:
200
Update requires: No interruption
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref
returns the ResolverEndpoint
object.
For more information about using the Ref
function, see Ref
.
Fn::GetAtt
The Fn::GetAtt
intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt
intrinsic function, see Fn::GetAtt
.
Arn
-
The Amazon Resource Name (ARN) of the resolver endpoint, such as
arn:aws:route53resolver:us-east-1:123456789012:resolver-endpoint/resolver-endpoint-a1bzhi
. Direction
-
Indicates whether the resolver endpoint allows inbound or outbound DNS queries.
HostVPCId
-
The ID of the VPC that you want to create the resolver endpoint in.
IpAddressCount
-
The number of IP addresses that the resolver endpoint can use for DNS queries.
Name
-
The name that you assigned to the resolver endpoint when you created the endpoint.
ResolverEndpointId
-
The ID of the resolver endpoint.
Examples
Create Resolver endpoint
The following example creates an Amazon Route 53 outbound resolver endpoint. The IpAddresses
object
includes values for SubnetId
but not for Ip
. This causes Route 53 Resolver to automatically
choose an IP address from among the available IP addresses in the specified subnet.
JSON
{ "Type" : "AWS::Route53Resolver::ResolverEndpoint", "Properties" : { "Direction" : "Outbound", "IpAddresses" : [ { "SubnetId": "subnet-0bca4d363dexample" }, { "SubnetId": "subnet-0cdb5e474dexample" } ], "Name" : "MyOutboundEndpoint", "SecurityGroupIds" : [ "sg-071b99f42example" ], "Tags" : [ "Key": "LineOfBusiness", "Value": "Engineering" ] } }
YAML
Type : AWS::Route53Resolver::ResolverEndpoint Properties : Direction : Outbound IpAddresses : - SubnetId: subnet-0bca4d363dexample - SubnetId: subnet-0cdb5e474dexample Name : MyOutboundEndpoint SecurityGroupIds : - sg-071b99f42example Tags : - Key: LineOfBusiness Value: Engineering
Associate a Resolver rule with a VPC
The following example associates a resolver rule with a VPC. When you associate a rule with a VPC, Resolver forwards all DNS queries for the domain name that is specified in the rule and that originate in the VPC. The queries are forwarded to the IP addresses for the DNS resolvers that are specified in the rule.
JSON
{ "Type" : "AWS::Route53Resolver::ResolverRuleAssociation", "Properties" : { "Name" : "MyResolverRuleAssociation", "ResolverRuleId" : "rslvr-rr-5328a0899aexample", "VPCId" : "vpc-03cf94c75cexample" } }
YAML
Type: "AWS::Route53Resolver::ResolverRuleAssociation" Properties: Name: MyResolverRuleAssociation ResolverRuleId: rslvr-rr-5328a0899aexample VPCId: vpc-03cf94c75cexample
See also
-
ResolverEndpoint in the Amazon Route 53 API Reference