domain-alive 0.1.7 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +6 -7
- package/dist/index.mjs +2 -2
- package/package.json +9 -11
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
3
3
|
var tldts = require('tldts');
|
|
4
4
|
var dns2 = require('dns2');
|
|
5
5
|
var _ = require('punycode/');
|
|
6
|
-
var asyncRetry = require('async-retry');
|
|
6
|
+
var asyncRetry = require('foxts/async-retry');
|
|
7
7
|
var net = require('node:net');
|
|
8
8
|
var retrie = require('foxts/retrie');
|
|
9
9
|
var extractErrorMessage = require('foxts/extract-error-message');
|
|
@@ -12,7 +12,6 @@ var shuffleArray = require('foxts/shuffle-array');
|
|
|
12
12
|
|
|
13
13
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
14
|
|
|
15
|
-
var asyncRetry__default = /*#__PURE__*/_interopDefault(asyncRetry);
|
|
16
15
|
var net__default = /*#__PURE__*/_interopDefault(net);
|
|
17
16
|
var debug__default = /*#__PURE__*/_interopDefault(debug);
|
|
18
17
|
|
|
@@ -1157,7 +1156,7 @@ const whoiserNoWhoisSymbol = Symbol('"whoiser" library returns "No WHOIS data fo
|
|
|
1157
1156
|
};
|
|
1158
1157
|
let whois;
|
|
1159
1158
|
try {
|
|
1160
|
-
whois = await
|
|
1159
|
+
whois = await asyncRetry.asyncRetry((bail)=>whoisDomain(registerableDomain, {
|
|
1161
1160
|
raw: true,
|
|
1162
1161
|
timeout,
|
|
1163
1162
|
host: cachedWhoisServer || undefined
|
|
@@ -1364,13 +1363,13 @@ tencentcloud.com. 86400 IN SOA ns-tel1.qq.com. webmaster.qq.com. 165111089
|
|
|
1364
1363
|
const resolve = shuffledDnsClients[attempts % shuffledDnsClients.length];
|
|
1365
1364
|
try {
|
|
1366
1365
|
// eslint-disable-next-line no-await-in-loop -- attempt servers one by one
|
|
1367
|
-
const resp = await
|
|
1366
|
+
const resp = await asyncRetry.asyncRetry(()=>resolve(registerableDomain, 'NS'), dnsRetryOption);
|
|
1368
1367
|
// if we found any NS records, the domain is alive
|
|
1369
1368
|
if (resp.answers.length > 0) {
|
|
1370
1369
|
confirmations++;
|
|
1371
1370
|
}
|
|
1372
1371
|
} catch (e) {
|
|
1373
|
-
errorNsLog('[NS] %s error %O', domain, e);
|
|
1372
|
+
errorNsLog('[NS] %s error (%s) %O', domain, resolve.server, e);
|
|
1374
1373
|
} finally{
|
|
1375
1374
|
attempts++;
|
|
1376
1375
|
log$1('[NS] %s %d %d/%d', domain, confirmations, attempts, maxAttempts);
|
|
@@ -1464,7 +1463,7 @@ function createDomainAliveChecker(options = {}) {
|
|
|
1464
1463
|
const resolve = shuffledDnsClients[attempts % shuffledDnsClients.length];
|
|
1465
1464
|
try {
|
|
1466
1465
|
// eslint-disable-next-line no-await-in-loop -- attempt servers one by one
|
|
1467
|
-
const resp = await
|
|
1466
|
+
const resp = await asyncRetry.asyncRetry(()=>resolve(domain, 'A'), dnsRetryOption);
|
|
1468
1467
|
// if we found any NS records, the domain is alive
|
|
1469
1468
|
if (resp.answers.length > 0) {
|
|
1470
1469
|
confirmations++;
|
|
@@ -1497,7 +1496,7 @@ function createDomainAliveChecker(options = {}) {
|
|
|
1497
1496
|
const resolve = shuffledDnsClients[attempts % shuffledDnsClients.length];
|
|
1498
1497
|
try {
|
|
1499
1498
|
// eslint-disable-next-line no-await-in-loop -- attempt servers one by one
|
|
1500
|
-
const resp = await
|
|
1499
|
+
const resp = await asyncRetry.asyncRetry(()=>resolve(domain, 'AAAA'), dnsRetryOption);
|
|
1501
1500
|
// if we found any NS records, the domain is alive
|
|
1502
1501
|
if (resp.answers.length > 0) {
|
|
1503
1502
|
confirmations++;
|
package/dist/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getPublicSuffix, getDomain } from 'tldts';
|
|
2
2
|
import { UDPClient, TCPClient, DOHClient } from 'dns2';
|
|
3
3
|
import { toASCII as toASCII$1 } from 'punycode/';
|
|
4
|
-
import asyncRetry from 'async-retry';
|
|
4
|
+
import { asyncRetry } from 'foxts/async-retry';
|
|
5
5
|
import net from 'node:net';
|
|
6
6
|
import { createRetrieKeywordFilter } from 'foxts/retrie';
|
|
7
7
|
import { extractErrorMessage } from 'foxts/extract-error-message';
|
|
@@ -1362,7 +1362,7 @@ tencentcloud.com. 86400 IN SOA ns-tel1.qq.com. webmaster.qq.com. 165111089
|
|
|
1362
1362
|
confirmations++;
|
|
1363
1363
|
}
|
|
1364
1364
|
} catch (e) {
|
|
1365
|
-
errorNsLog('[NS] %s error %O', domain, e);
|
|
1365
|
+
errorNsLog('[NS] %s error (%s) %O', domain, resolve.server, e);
|
|
1366
1366
|
} finally{
|
|
1367
1367
|
attempts++;
|
|
1368
1368
|
log$1('[NS] %s %d %d/%d', domain, confirmations, attempts, maxAttempts);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "domain-alive",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.9",
|
|
4
4
|
"description": "A Node.js library for checking if an FQDN (Fully Qualified Domain Name) is alive or not, uses a combination techniques of `NS` records, WHOIS/RDAP lookups, `A/AAAA` records",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -30,27 +30,25 @@
|
|
|
30
30
|
"author": "SukkaW <https://skk.moe>",
|
|
31
31
|
"license": "MIT",
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"async-retry": "^1.3.3",
|
|
34
33
|
"debug": "4.4.1",
|
|
35
34
|
"dns2": "github:lsongdev/node-dns#3adb7e91b3101c0e4f43ebaca3a568269ea04d11",
|
|
36
|
-
"foxts": "^
|
|
35
|
+
"foxts": "^4.1.0",
|
|
37
36
|
"punycode": "^2.3.1",
|
|
38
|
-
"tldts": "^7.0.
|
|
37
|
+
"tldts": "^7.0.16"
|
|
39
38
|
},
|
|
40
39
|
"devDependencies": {
|
|
41
|
-
"@eslint-sukka/node": "^7.
|
|
40
|
+
"@eslint-sukka/node": "^7.2.1",
|
|
42
41
|
"@swc-node/register": "^1.11.1",
|
|
43
|
-
"@types/async-retry": "^1.4.9",
|
|
44
42
|
"@types/debug": "^4.1.12",
|
|
45
43
|
"@types/dns2": "^2.0.10",
|
|
46
|
-
"@types/node": "^24.
|
|
44
|
+
"@types/node": "^24.6.2",
|
|
47
45
|
"@types/punycode": "^2.1.4",
|
|
48
46
|
"bumpp": "^10.2.3",
|
|
49
47
|
"bunchee": "^6.6.0",
|
|
50
|
-
"eslint": "^9.
|
|
51
|
-
"eslint-config-sukka": "^7.
|
|
52
|
-
"eslint-formatter-sukka": "^7.
|
|
53
|
-
"typescript": "^5.9.
|
|
48
|
+
"eslint": "^9.37.0",
|
|
49
|
+
"eslint-config-sukka": "^7.2.1",
|
|
50
|
+
"eslint-formatter-sukka": "^7.2.1",
|
|
51
|
+
"typescript": "^5.9.3",
|
|
54
52
|
"whoiser": "2.0.0-beta.8"
|
|
55
53
|
},
|
|
56
54
|
"scripts": {
|