如何从主机名获取IP地址?

时间:2019-08-28 15:04:40

标签: javascript node.js gethostbyname

我有一个node.js服务器应用程序,该服务器应用程序需要知道所请求的IP地址才能执行某些操作。问题是,当用户使用/ etc / hosts注册一个IP别名访问我的服务器时,服务器端的req.headers信息显示的是IP别名而不是所请求的ip。

我正在使用restify服务我的应用程序,我已经尝试过req.connection了,但是还是不好。

我需要我网站上的javascript知道IP别名的IP地址(在/ etc / hosts中预先注册)实际上是什么,或者我的node.js(restify)解释请求的真实ip_address而不是IP别名客户端使用的。

Edit1:获取服务器(nodejs)上请求的ip地址的主要问题是在这种情况下请求的是在/ etc / hosts上注册的ALIAS。因此它以命名别名而不是ip的形式到达服务器(我的服务器侦听多个不同的IP)

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您可以在这里https://nodejs.org/api/dns.html#dns_dnspromises_lookup_hostname_options

也尝试

<?xml version="1.0" encoding="utf-8"?>
<tags>
   <row Id="1" TagName=".net" Count="283778" ExcerptPostId="3624959" WikiPostId="3607476" />
  <row Id="2" TagName="html" Count="826083" ExcerptPostId="3673183" WikiPostId="3673182" />
  <row Id="3" TagName="javascript" Count="1817846" ExcerptPostId="3624960" WikiPostId="3607052" />
  <row Id="4" TagName="css" Count="588062" ExcerptPostId="3644670" WikiPostId="3644669" />
  <row Id="5" TagName="php" Count="1286873" ExcerptPostId="3624936" WikiPostId="3607050" />
</tags>

检查此输出部分

enter image description here