在火山引擎移动解析(HTTPDNS)中,您可以通过 自定义解析记录 使来自不同网络运营商和不同地理位置的用户流量被精准路由到指定的服务地址。但是,在以下场景下,基于网络运营商和地理位置的自定义解析功能无法满足您的需求。
车联网:您希望 HTTPDNS 服务端可以根据每辆汽车的常驻地区返回位于不同区域的服务器的 IP 地址。例如,某辆汽车的常驻地区在上海,服务域名是 vehicle.example.com。对于该汽车访问 vehicle.example.com 时发起的 DNS 查询请求,HTTPDNS 服务端会返回位于上海的服务器的 IP 地址。
设备端灰度测试:您的服务的域名是 service.example.com。您希望发布一个新的服务。新服务的 IP 地址是 1.1.1.1。在全量发布前,您希望先对约 10% 的设备进行灰度测试。对于这 10% 的设备访问 service.example.com 时发起的 DNS 查询请求,HTTPDNS 服务端会返回 1.1.1.1。
通过软件定义解析 AnyMatch 功能,您可以通过自定义标识对 HTTPDNS 的自定义解析记录进行配置,从而实现以上场景。软件定义解析 AnyMatch 功能的工作原理如下图所示:
您在移动解析 HTTPDNS 控制台为自定义解析记录设置自定义标识匹配规则,并在客户端通过 HTTPDNS SDK 或 HTTP API 发送带有自定义标识参数的 DNS 查询请求。收到查询请求后,HTTPDNS 服务端就会根据匹配规则返回符合业务需求的解析结果。