【发布时间】:2019-03-10 02:32:39
【问题描述】:
这是我目前的理解:
- 我输入一个 URL (www.google.com) 并回车
- 浏览器会检查缓存中的 DNS 记录以查找 URL 的相应 IP 地址。
- 一旦找到 IP 地址,就会建立连接,依此类推...
我的问题是,如果我直接输入 IP 地址会怎样?浏览器是否仍会尝试查找 DNS 记录或联系域名系统?
我相信浏览器会识别出它是一个 IP 地址并跳过 DNS 查找,但我不能 100% 确定这一切是如何工作的。
有没有办法实时跟踪我在输入 URL 后按 Enter 后发生的情况?
【问题讨论】:
-
一般不会。通常会进行反向 DNS 查找,以建立主机名。例如,在 HTTPS 中这是必需的。
-
@user207421 你能解释一下这个反向查询和与HTTPS的关系吗?因为我不认为是这样的......
-
@PatrickMevzek HTTPS 包含主机名验证。主机名嵌入在服务器证书中,客户端有义务根据他认为他正在连接的主机名进行检查。 Ergo 如果用户提供 IP 地址,则需要反向 DNS 查找。
-
@user207421 "HTTPS 包含主机名验证" 是的,如果您在 URL 中有一个 主机名 显然。您没有证明任何事情,也没有提供您的主张的来源。查看许多网站,它们绝对没有反向 DNS 条目。你知道 HTTPS 虚拟主机吗?在多个名称解析为同一个 IP 的情况下......那么您声称的做法将如何运作?
-
@PatrickMevzek '是的,如果 URL 中有主机名'。该断言的您的来源是什么?没有说在 RFC 2818 #3.1 中,只有“如果主机名可用”,如果缺少主机名,使其可用的一种方法是反向 DNS 查找。我还可以想象一个代理配置想要一个主机名来查看它是否应该被绕过。
标签: url networking dns