You need to enable JavaScript to run this app.
导航
实现智能解析
最近更新时间:2025.03.21 14:24:19首次发布时间:2023.02.08 13:10:03
我的收藏
有用
有用
无用
无用

本文档介绍如何在火山引擎私网解析(PrivateZone)中实现智能解析。

什么是智能解析

智能解析特性允许您为域名下的每个记录集配置一条线路。接收到 DNS 查询请求时,私网解析 PrivateZone 会先把 DNS 查询请求与域名下全部记录集的线路进行匹配,然后返回匹配成功的记录集中的记录值。

说明

除默认线路外,每一条线路对应 火山引擎私有网络(VPC) 的一个 子网。默认线路对应 VPC 的所有子网。

对于启用了智能解析的域名,您需要为该域名的每个记录集配置一条线路。客户端发送 DNS 查询请求时,DNS 查询请求会包含客户端 IP 地址信息。私网解析 PrivateZone 接收到 DNS 查询请求时,会根据线路和客户端 IP 地址信息判断客户端的 IP 地址是否在记录集的线路所对应的子网内。如果是,则该 DNS 查询请求匹配到了记录集的线路。然后,私网解析 PrivateZone 会返回匹配的记录集内的记录值。

注意

您为一个域名启用智能解析后:

  • 私网解析 PrivateZone 的递归 DNS 服务器不会缓存该域名的解析记录。因此,权威 DNS 服务器收到的 DNS 查询请求数量会增加,这也会造成计费增加。
  • 该域名仅能关联一个 VPC。
  • 建议您设置默认线路作为兜底。 这样可以确保来自任一子网的 DNS 查询请求都能被私网解析 PrivateZone 处理。否则,对于未配置线路的子域名,DNS 解析会失败。

示例场景

您创建了一个 VPC。您的 VPC 有多个子网。其中,对于 subnet-1 子网和 subnet-2 子网,您需要实现可用区之间的容灾。因此,您需要把不同的子网部署在不同的可用区:

  • subnet-1 的网段为 10.0.1.0/24,位于可用区 A。
  • subnet-2 的网段为 10.0.2.0/24,位于可用区 B。

同时,您在 VPC 上添加了两个 火山引擎云服务器 ECS 实例,分别与 subnet-1 子网和 subnet-2 子网相关联。

  • subnet-1 子网关联的 ECS 实例的 IP 地址是 10.0.1.128
  • subnet-2 子网关联的 ECS 实例的 IP 地址是 10.0.2.128

通过私网解析 PrivateZone,您希望:

  • 位于 subnet-1 子网的 VPC 内的资源通过ecs.example.com 域名只能访问 IP 地址为 10.0.1.128 的 ECS 实例。
  • 位于 subnet-2 子网的 VPC 内的资源通过ecs.example.com域名只能访问 IP 地址为 10.0.2.128 的 ECS 实例。
  • 位于其他子网的 VPC 内的资源通过ecs.example.com域名可以访问 IP 地址为 10.0.1.12810.0.2.128 的 ECS 实例。

示例场景的架构如下图所示:
Image

操作步骤

添加域名

参见 添加域名 添加域名 example.com。您需要在添加域名时为域名开启智能解析。

添加解析记录

  1. 打开 私网解析 PrivateZone 控制台

  2. 私网域名管理 页面,选择 私网域名 标签页,找到您的域名。在 操作 列点击 管理

  3. 记录管理 页面,点击 添加记录。为 subnet-1 子网添加解析记录。

  4. 添加记录 页面,为 subnet-1 子网配置解析记录的基本信息。
    基本信息

    参数

    描述

    域名

    把主机记录(域名前缀)设置为 ecs

    记录类型

    设置为 A

    TTL

    设置为 10分钟

    线路

    设置为 subnet-1 子网。

    记录值

    记录值

    是否启用

    10.0.1.128

    启用

  5. 点击 提交。您可以在 记录管理 页面看到创建的 subnet-1 子网解析记录。

  6. 记录管理 页面,点击 添加记录。为 subnet-2 子网添加解析记录。

  7. 添加记录 页面,为 subnet-2 子网配置解析记录的基本信息。其中:
    基本信息

    参数

    描述

    域名

    把主机记录(域名前缀)设置为 ecs

    记录类型

    设置为 A

    TTL

    设置为 10分钟

    线路

    设置为 subnet-2 子网。

    记录值

    记录值

    是否启用

    10.0.2.128

    启用

  8. 点击 提交。您可以在 记录管理 页面看到创建的 subnet-2 子网解析记录。

  9. 记录管理 页面,点击 添加记录。为 subnet-1 和 subnet-2 之外的子网添加解析记录。

  10. 添加记录 页面,为 subnet-1 和 subnet-2 之外的子网配置解析记录的基本信息。
    基本信息

参数

描述

域名

把主机记录(域名前缀)设置为 ecs

记录类型

设置为 A

TTL

设置为 10分钟

线路

设置为 默认

记录值

记录值

是否启用

10.0.1.128

启用

10.0.2.128

启用

  1. 点击 提交

验证智能解析

通过以下步骤验证智能解析的结果是否符合预期。

  1. 登录 subnet-1 子网中的 ECS 实例。在命令行中输入以下命令解析域名:

    nslookup ecs.example.com
    

    符合预期的结果中的 IP 地址是 10.0.1.128

  2. 登录 subnet-2 子网中的 ECS 实例。在命令行中输入以下命令解析域名:

    nslookup ecs.example.com
    

    符合预期的结果中的 IP 地址是 10.0.2.128

  3. 登录其他子网中的 ECS 实例。在命令行中输入以下命令解析域名:

    nslookup ecs.example.com
    

    符合预期的结果中包含 10.0.1.12810.0.2.128