本文档介绍了如何配置 DNS64 服务器政策,以及如何将其与虚拟私有云 (VPC) 网络搭配使用。
准备工作
- DNS64 服务器政策不适用于双栈虚拟机 (VM) 实例、仅 IPv4 的虚拟机实例、无服务器工作负载,或发送到由入站 DNS 服务器政策创建的端点的请求。
- 确保您拥有创建 DNS64 服务器政策所需的权限。
创建 DNS64 服务器政策
创建 DNS64 服务器政策,以实现 IPv6 专用工作负载与 IPv4 专用目标之间的通信。
创建 DNS64 服务器政策后,当查询 IPv6 (AAAA) 记录时,会发生以下情况:
- 如果存在
AAAADNS 记录,DNS 服务器会返回 IPv6 地址。您的工作负载通过该 IPv6 地址进行连接。 - 如果不存在
AAAADNS 记录,Cloud DNS 会查找A记录。 然后,Cloud DNS 会使用64:ff9b::/96IPv6 前缀为A记录中的 IPv4 地址创建 IPv6 地址。
如需创建 DNS64 服务器政策,请按照以下步骤操作。
gcloud
如需创建 DNS64 服务器政策,请运行 gcloud dns policies
create 命令:
gcloud dns policies create NAME \
--description=DESCRIPTION \
--networks=VPC_NETWORK_LIST \
--enable-dns64-all-queries
替换以下内容:
NAME:政策的名称DESCRIPTION:政策的说明VPC_NETWORK_LIST:DNS 服务器政策绑定到的 VPC 网络的英文逗号分隔列表
Terraform
resource "google_dns_policy" "default" {
name = "NAME"
dns64_config {
scope {
all_queries = true
}
}
alternative_name_server_config {
target_name_servers {
ipv4_address = "PRIVATE_IP_ADDRESS"
forwarding_path = "private"
}
target_name_servers {
ipv4_address = "PUBLIC_IP_ADDRESS"
}
}
networks {
network_url = google_compute_network.default.id
}
}
resource "google_compute_network" "default" {
name = "network"
auto_create_subnetworks = false
}
替换以下内容:
NAME:出站 DNS64 政策的名称PRIVATE_IP_ADDRESS:使用专用转发路径的备用域名服务器的 IP 地址PUBLIC_IP_ADDRESS:其他备用域名服务器的 IP 地址
API
如需创建 DNS64 服务器政策,请使用 policies.create 方法:
POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/policies
{
"kind": "dns#policy",
"networks": [
{
"kind": "dns#policyNetwork",
"networkUrl": "NETWORK_URL"
}
],
"dns64Config":
{
"scope":
{
allQueries: true,
}
}
}
替换以下内容:
PROJECT_ID:您的项目 ID。NETWORK_URL:DNS 服务器政策必须绑定到的 VPC 网络的完全限定网址,格式如下:https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME。指定包含仅限 IPv6 的子网和实例的网络。
验证是否已启用 DNS64 服务器政策
gcloud
如需列出项目中的所有 DNS 服务器政策,请运行 dns policies list 命令:
gcloud dns policies list
如需获取有关特定 DNS64 服务器政策的详细信息,请运行 gcloud dns policies describe 命令:
gcloud dns policies describe NAME
将 NAME 替换为您要详细了解的 DNS64 服务器政策的名称。
停用 DNS64 服务器政策
gcloud
如需停用 DNS64 服务器政策,请运行 dns policies update 命令:
gcloud dns policies update NAME \
--no-enable-dns64-all-queries
将 NAME 替换为您要停用的 DNS64 服务器政策的名称。
后续步骤
- 如需配置 NAT64 以实现从 IPv6 到 IPv4 地址的 Public NAT 转换,请按照创建 Cloud NAT 网关中的说明操作。
- 如需大致了解 DNS 服务器政策,请参阅 DNS 服务器政策。
- 如需了解您在使用 Cloud DNS 时可能会遇到的常见问题的解决方案,请参阅排查 Cloud DNS 问题。