Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在预定义IP地址列表中查找域名_Javascript_Node.js_Dns_Ip - Fatal编程技术网

Javascript 在预定义IP地址列表中查找域名

Javascript 在预定义IP地址列表中查找域名,javascript,node.js,dns,ip,Javascript,Node.js,Dns,Ip,我正在使用Node.js创建一个自定义服务器,它将拦截用户访问的任何IP地址并返回站点名称。例如,如果一个用户将要访问64.233.160.4我的服务器将看到该列表,请将其与它已有的列表进行比较,然后返回Google 我被告知使用Node.js完成此任务。我查找了使用Node.js创建DNS的过程,找到了指向它的链接,并解决了这个问题。我使用了Node.js DNS API页面中的示例 var dns = require('dns'); dns.resolve4('www.google.com

我正在使用Node.js创建一个自定义服务器,它将拦截用户访问的任何IP地址并返回站点名称。例如,如果一个用户将要访问
64.233.160.4
我的服务器将看到该列表,请将其与它已有的列表进行比较,然后返回
Google

我被告知使用Node.js完成此任务。我查找了使用Node.js创建DNS的过程,找到了指向它的链接,并解决了这个问题。我使用了Node.js DNS API页面中的示例

var dns = require('dns');

dns.resolve4('www.google.com', function (err, addresses) {
if (err) throw err;

console.log('addresses: ' + JSON.stringify(addresses));

addresses.forEach(function (a) {
   dns.reverse(a, function (err, domains) {
     if (err) {
       throw err;
     }

     console.log('reverse for ' + a + ': ' + JSON.stringify(domains));
    });
  });
});
我得到了以下结果

addresses:     ["74.125.24.99","74.125.24.104","74.125.24.103","74.125.24.147","74.125.24.105","74.125.24.106"]
reverse for 74.125.24.99: ["de-in-f99.1e100.net"]
reverse for 74.125.24.104: ["de-in-f104.1e100.net"]
reverse for 74.125.24.103: ["de-in-f103.1e100.net"]
reverse for 74.125.24.147: ["de-in-f147.1e100.net"]
reverse for 74.125.24.105: ["de-in-f105.1e100.net"]
reverse for 74.125.24.106: ["de-in-f106.1e100.net"]
这对我没有好处,因为我需要
Google
返回的不是
de-in-f106.1e100.net
,所以我要创建一个自定义DNS

我正在努力实现的目标

  • 具有已知的IP地址范围
    64.233.160.0-64.233.191.255
  • 读取IP地址
    64.233.160.25
  • 将其与预定义列表进行比较,可以看到它在范围内
  • 如果在范围内,返回
    Google
我被告知要用Node.js做这件事,并且一直在互联网上搜寻如何做这件事的信息,但我似乎越来越困惑。我知道我被期望展示我所做的所有工作,但我仍在努力开始。 如果有人能给我帮助和建议,我将不胜感激