When you create a VPC using Amazon VPC, you automatically get DNS resolution within the VPC from Route 53 Resolver. By default, Resolver answers DNS queries for VPC domain names such as domain names for EC2 instances or ELB load balancers. Resolver performs recursive lookups against public name servers for all other domain names.
You can also configure DNS resolution between your VPC and your network over a Direct Connect or VPN connection:
Forward DNS queries from resolvers on your network to Route 53 Resolver
DNS resolvers on your network can forward DNS queries to Resolver in a specified VPC. This allows your DNS resolvers to easily resolve domain names for AWS resources such as EC2 instances or records in a Route 53 private hosted zone. For more information, see How DNS Resolvers on Your Network Forward DNS Queries to Route 53 Resolver in the Amazon Route 53 Developer Guide.
Conditionally forward queries from a VPC to resolvers on your network
You can configure Resolver to forward queries that it receives from EC2 instances in your VPCs to DNS resolvers on your network. To forward selected queries, you create Resolver rules that specify the domain names for the DNS queries that you want to forward (such as example.com), and the IP addresses of the DNS resolvers on your network that you want to forward the queries to. If a query matches multiple rules (example.com, acme.example.com), Resolver chooses the rule with the most specific match (acme.example.com) and forwards the query to the IP addresses that you specified in that rule. For more information, see How Route 53 Resolver Forwards DNS Queries from Your VPCs to Your Network in the Amazon Route 53 Developer Guide.
Like Amazon VPC, Resolver is regional. In each region where you have VPCs, you can choose whether to forward queries from your VPCs to your network (outbound queries), from your network to your VPCs (inbound queries), or both.
route53resolver(config = list())
A client for the service. You can call the service's operations using
syntax like svc$operation(...)
, where svc
is the name you've assigned
to the client. The available operations are listed in the
Operations section.
Optional configuration of credentials, endpoint, and/or region.
svc <- route53resolver(
config = list(
credentials = list(
creds = list(
access_key_id = "string",
secret_access_key = "string",
session_token = "string"
),
profile = "string"
),
endpoint = "string",
region = "string"
)
)
associate_resolver_endpoint_ip_address | Adds IP addresses to an inbound or an outbound Resolver endpoint |
associate_resolver_query_log_config | Associates an Amazon VPC with a specified query logging configuration |
associate_resolver_rule | Associates a Resolver rule with a VPC |
create_resolver_endpoint | Creates a Resolver endpoint |
create_resolver_query_log_config | Creates a Resolver query logging configuration, which defines where you want Resolver to save DNS query logs that originate in your VPCs |
create_resolver_rule | For DNS queries that originate in your VPCs, specifies which Resolver endpoint the queries pass through, one domain name that you want to forward to your network, and the IP addresses of the DNS resolvers in your network |
delete_resolver_endpoint | Deletes a Resolver endpoint |
delete_resolver_query_log_config | Deletes a query logging configuration |
delete_resolver_rule | Deletes a Resolver rule |
disassociate_resolver_endpoint_ip_address | Removes IP addresses from an inbound or an outbound Resolver endpoint |
disassociate_resolver_query_log_config | Disassociates a VPC from a query logging configuration |
disassociate_resolver_rule | Removes the association between a specified Resolver rule and a specified VPC |
get_resolver_dnssec_config | Gets DNSSEC validation information for a specified resource |
get_resolver_endpoint | 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 |
get_resolver_query_log_config | Gets information about a specified Resolver query logging configuration, such as the number of VPCs that the configuration is logging queries for and the location that logs are sent to |
get_resolver_query_log_config_association | Gets information about a specified association between a Resolver query logging configuration and an Amazon VPC |
get_resolver_query_log_config_policy | Gets information about a query logging policy |
get_resolver_rule | Gets information about a specified Resolver rule, such as the domain name that the rule forwards DNS queries for and the ID of the outbound Resolver endpoint that the rule is associated with |
get_resolver_rule_association | Gets information about an association between a specified Resolver rule and a VPC |
get_resolver_rule_policy | Gets information about the Resolver rule policy for a specified rule |
list_resolver_dnssec_configs | Lists the configurations for DNSSEC validation that are associated with the current AWS account |
list_resolver_endpoint_ip_addresses | Gets the IP addresses for a specified Resolver endpoint |
list_resolver_endpoints | Lists all the Resolver endpoints that were created using the current AWS account |
list_resolver_query_log_config_associations | Lists information about associations between Amazon VPCs and query logging configurations |
list_resolver_query_log_configs | Lists information about the specified query logging configurations |
list_resolver_rule_associations | Lists the associations that were created between Resolver rules and VPCs using the current AWS account |
list_resolver_rules | Lists the Resolver rules that were created using the current AWS account |
list_tags_for_resource | Lists the tags that you associated with the specified resource |
put_resolver_query_log_config_policy | Specifies an AWS account that you want to share a query logging configuration with, the query logging configuration that you want to share, and the operations that you want the account to be able to perform on the configuration |
put_resolver_rule_policy | Specifies an AWS rule that you want to share with another account, the account that you want to share the rule with, and the operations that you want the account to be able to perform on the rule |
tag_resource | Adds one or more tags to a specified resource |
untag_resource | Removes one or more tags from a specified resource |
update_resolver_dnssec_config | Updates an existing DNSSEC validation configuration |
update_resolver_endpoint | Updates the name of an inbound or an outbound Resolver endpoint |
update_resolver_rule | Updates settings for a specified Resolver rule |
if (FALSE) {
svc <- route53resolver()
svc$associate_resolver_endpoint_ip_address(
Foo = 123
)
}
Run the code above in your browser using DataLab