node.js给定98000个域名列表,如何检查域是否来自shopify?

时间:2018-08-23 05:24:24

标签: javascript node.js

如何检查网域是否建立在shopify电子商务平台上? 我进行了很多搜索,但无法提出可靠的方法。

我在一个数组中精确列出了98000个域名。我想检查他们是否使用node.js代码将shopify用作电子商务平台

1 个答案:

答案 0 :(得分:0)

好的,因此从Shopify docs,我们知道连接到Shopify的第三方域将具有IP地址为23.227.38.32的A记录和指向shops.myshopify.com的CNAME。

也许有一种更简单的方法,但是从“保持简单”的角度来看,我可能只是使用节点DNS模块对与每个域关联的IP进行跟踪,看看它是否指向该IP。地址。请注意,使用98,000可能要花一些时间,因为每个查询都是对Internet的查询。

const dns = require('dns');
const domains = require('./domains.json'); // assuming your 98,000 domains are in a local file you can pull in as JSON. 

domains.forEach((domain) => {
    dns.resolve4(domain, (err, addresses) => {
      if (err) throw err;

      if(addresses.indexOf('23.227.38.32') >= 0)
          console.log(`Shopified!  ${domain}`);
    });
});

这将打印以控制台指向shopify IP的每个域。在某些情况下,这可能行不通(例如,他们实际上并没有说如果您转让您的域会发生什么,反之仅是连接您的域,所以我假设它仍然使用相同的基本IP。