# 修复domainSpecificDNS的DNSSEC优先级问题

## 1. 问题分析

* 当域名匹配到 `domainSpecificDNS` 配置时，程序会使用指定的DNS服务器
* 但随后程序会向DNSSEC专用服务器发送请求
* 如果DNSSEC专用服务器返回了带DNSSEC的响应，程序会优先使用该响应
* 这导致 `domainSpecificDNS` 指定的DNS服务器的响应被忽略

## 2. 修复计划

### 2.1 修改 `forwardDNSRequestWithCache` 函数

* 在函数中添加一个标志 `domainMatched`，记录域名是否匹配了 `domainSpecificDNS` 配置
* 当域名匹配到 `domainSpecificDNS` 配置时，设置该标志为 `true`

### 2.2 修改DNSSEC响应处理逻辑

* 在处理DNSSEC专用服务器响应时，检查 `domainMatched` 标志
* 如果标志为 `true`，则**不优先使用DNSSEC专用服务器的响应**，而是保留原来指定DNS服务器的响应
* 只有当指定的DNS服务器没有返回有效响应时，才考虑使用DNSSEC专用服务器的响应

### 2.3 确保指定的DNS服务器优先

* 确保对于匹配了 `domainSpecificDNS` 的域名，始终优先使用指定的DNS服务器的响应
* 只有当指定的DNS服务器没有返回有效响应时，才考虑使用DNSSEC专用服务器的响应

## 3. 预期效果

* 对于匹配了 `domainSpecificDNS` 配置的域名，始终优先使用指定的DNS服务器
* 只有当指定的DNS服务器没有返回有效响应时，才考虑使用DNSSEC专用服务器
* DNSSEC功能仍然正常工作，但不会覆盖 `domainSpecificDNS` 的配置

## 4. 测试计划

* 重启DNS服务器
* 使用 `dig @127.0.0.1 dc.amazehome.xyz +short` 测试
* 检查日志，确保使用的是指定DNS服务器的响应
* 验证解析结果是否符合预期

