From cc5154e04e87f648111119b4eeb4e3cb4dd6cc41 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Sat, 25 Apr 2026 04:45:39 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=B8=BADNS=E8=A7=A3=E6=9E=90=E5=99=A8?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=B6=85=E6=97=B6=E9=85=8D=E7=BD=AE,?= =?UTF-8?q?=E9=81=BF=E5=85=8D=E6=9F=A5=E8=AF=A2=E6=97=B6=E9=97=B4=E8=BF=87?= =?UTF-8?q?=E9=95=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在util.js中为dns.Resolver添加超时配置,确保DNS查询在合理时间内完成 --- packages/core/acme-client/src/util.js | 2 +- packages/core/acme-client/src/verify.js | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/core/acme-client/src/util.js b/packages/core/acme-client/src/util.js index 82a44069c..19846200e 100644 --- a/packages/core/acme-client/src/util.js +++ b/packages/core/acme-client/src/util.js @@ -252,7 +252,7 @@ async function resolveDomainBySoaRecord(recordName, logger = log) { async function getAuthoritativeDnsResolver(recordName, logger = log) { logger(`获取域名${recordName}的权威NS服务器: `); - const resolver = new dns.Resolver(); + const resolver = new dns.Resolver({ timeout: 10000,maxTimeout: 60000 }); try { /* Resolve root domain by SOA */ diff --git a/packages/core/acme-client/src/verify.js b/packages/core/acme-client/src/verify.js index 22fbc63f5..10a4b54a3 100644 --- a/packages/core/acme-client/src/verify.js +++ b/packages/core/acme-client/src/verify.js @@ -148,7 +148,6 @@ async function walkDnsChallengeRecord(recordName, resolver = dns,deep = 0) { /* Authoritative DNS resolver */ log(`从域名权威服务器获取TXT解析记录`); const authoritativeResolver = await util.getAuthoritativeDnsResolver(recordName,log); - resolver.setTimeout(10000); const res = await walkDnsChallengeRecord(recordName, authoritativeResolver,deep); if (res && res.length > 0) { for (const item of res) {