首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果将多个站点分配给同一个IP,那么nslookup命令返回什么?

如果将多个站点分配给同一个IP,那么nslookup命令返回什么?
EN

Server Fault用户
提问于 2017-05-31 07:20:58
回答 3查看 3.3K关注 0票数 1

我在一本书中读到,nslookup命令用于从域名中查找IP地址,反之亦然。域名只是给namesIP Addresses,因为它是容易记住的名字比数字。

当我在浏览器中键入域名时,DNS服务器将解析域名中的IP地址。但是,由于可能有多个站点可能具有相同的IP地址,所以如果我在浏览器中而不是在域名中键入IP地址,会发生什么情况?DNS服务器如何知道我想去哪个网站?

我列出了五个网站。

www.delhians.com

www.finitecolors.com

www.garbagevalue.com

www.hackchefs.com

www.studentdunya.com

它们都有相同的IP地址。

http://166.62.28.108/

当我在cmd中输入nslookup时,有时它会返回delhians.com,有时返回finitecolors.com,有时返回garbagevalue.com等等。

那么DNS如何决定在cmd中以及浏览器中返回哪个域名呢?

EN

回答 3

Server Fault用户

发布于 2017-05-31 07:34:51

您可能需要查看虚拟主机,特别是基于名称的。简而言之,web服务器可以通过查看Host header来确定您要请求的网站。

当您通过IP请求任何网站时,您将得到一个默认页面,而不是从其中任何一个得到响应。这仅仅是因为web服务器不知道您想访问哪个网站。

票数 0
EN

Server Fault用户

发布于 2017-05-31 12:45:56

But as there may be multiple sites that may have the same IP address, so what happened If I type the IP address in the browser instead of the domain name? How does the DNS server know on which website I want to go?

事实并非如此。

当您使用nslookup查找PTR记录时,它会将ip地址返回给该ip地址的名称映射,该地址由网卡所有者维护,不一定(或可能)不存在网络托管公司,甚至可能不存在。

最好的情况是,您将得到默认的网站绑定到那个ip地址。

票数 0
EN

Server Fault用户

发布于 2022-11-23 02:10:32

不同的web服务器(IIS/nginx)有不同的方式来承载多个web应用程序,但一个常见的逻辑是,您可以在同一个IP:80绑定的HTTP (或*IP:443绑定用于HTTPS)上托管多个站点(nginx中的服务器块)。

当HTTP请求到达时,web服务器将检查其主机头,以决定将该请求发送到哪个网站(或服务器块)。因此,在您的示例中,www.delhians.comwww.finitecolors.com将分别托管并接收不同的通信量。

因此,在您的情况下,如果只在URL中使用IP地址,主机名将是IP地址,它依赖于web服务器配置来决定如何发送请求。通常您不会为IP地址配置站点(服务器块),但是IIS和nginx都允许默认站点(服务器块)(所有捕获站点)来处理这些地址。

HTTPS解释起来更加复杂,因为它需要SNI设置来将证书映射到不同的主机名。

更重要的是,浏览器只使用DNS来确定它应该向哪个IP地址发送HTTP请求,因此当地址栏中存在http://166.62.28.108/时,浏览器将不会执行DNS查询。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/853142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档