43 lines
1.2 KiB
Markdown
43 lines
1.2 KiB
Markdown
1. **调整DNS超时时间**:
|
||
|
||
* 将配置文件中的`timeout`值从5毫秒增加到5000毫秒(5秒)
|
||
|
||
* 5毫秒的超时时间对于DNS查询来说太短,导致大部分查询都超时失败
|
||
|
||
2. **优化查询模式**:
|
||
|
||
* 将查询模式从`parallel`(并行)改为`loadbalance`(负载均衡)
|
||
|
||
* 并行模式在短超时时间下会导致大量超时,负载均衡模式更可靠
|
||
|
||
3. **检查上游DNS服务器配置**:
|
||
|
||
* 确保所有配置的上游DNS服务器都能正常工作
|
||
|
||
* 移除或调整可能不可达的DNS服务器
|
||
|
||
4. **调整DNSSEC配置**:
|
||
|
||
* 检查DNSSEC专用服务器的可达性
|
||
|
||
* 考虑暂时禁用DNSSEC验证,观察是否能改善性能
|
||
|
||
5. **增强错误处理**:
|
||
|
||
* 优化`forwardDNSRequestWithCache`函数的错误处理逻辑
|
||
|
||
* 确保在所有服务器都超时的情况下有合理的回退机制
|
||
|
||
6. **监控和日志优化**:
|
||
|
||
* 添加更详细的日志,记录每个DNS服务器的响应情况
|
||
|
||
* 增加监控指标,追踪DNS查询成功率和响应时间
|
||
|
||
7. **测试验证**:
|
||
|
||
* 在修改后进行DNS查询测试,确保服务器能正常响应
|
||
|
||
* 监控日志,确认不再出现大量DNS查询失败的情况
|
||
|