如果输入IP地址而不是URL,是否跳过DNS?
这是我目前的理解:如果输入IP地址而不是URL,是否跳过DNS?,url,networking,dns,Url,Networking,Dns,这是我目前的理解: 我输入一个URL(www.google.com),然后按回车键 浏览器检查缓存中的DNS记录,以查找URL的相应IP地址 一旦找到IP地址,就会建立连接,依此类推 我的问题是,如果我直接输入IP地址会发生什么?浏览器是否仍会尝试查找DNS记录或联系域名系统 我相信浏览器会识别出它是一个IP地址,并跳过DNS查找,但我不能100%确定这一切是如何工作的 有没有一种方法可以实时跟踪在键入URL后按enter键时发生的情况?这完全取决于您使用的浏览器 如果你想知道发生了什么,可以设
(a) 有些是如此奇怪或令人痛苦,甚至我可能都无法想象它们:-)当你浏览网页时,DNS的目的,正如你所暗示的,是将一个名称转换为IP地址,以便程序知道连接到哪里 因此,根据定义,如果您给它一个IP地址来开始,而不是一个名称,那么就没有更多的东西需要翻译,因此不需要DNS 然而,请注意,基于IP而不是名称的浏览可能无法按预期工作,尤其是在HTTPS中,甚至在HTTP中。这是因为名称不仅存在于URL中,而且在TLS级别(通过SNI扩展允许在单个IP上使用HTTPS进行虚拟托管)和HTTP(S)级别(使用
host
头)渗透得远远低于URL
如果您想更多地评估在您的具体案例中发生的情况(因为以上是通用的,所有规则都有例外),您可以:
- 安装一个由您控制的本地递归DNS解析器,将您的操作系统指向它,并查看日志文件以查看请求的名称或任何其他查询
- 同时运行网络捕获,如Wireshark,但请注意,它可能或多或少难以解释,特别是如果您同时有大量其他流量。如果您的操作系统使用TLS上的DNS或HTTPS上的DNS,那么网络跟踪将更难理解
host
header,这可能是一个良好的开端:对于本地递归名称服务器,请查看unbound。对于TLS上的DNS,请参阅RFC 7858;对于HTTPS上的DNS,请参阅RFC 8484。您还需要什么?@user207421,我们仍在等待任何来源以与您在评论中声明HTTPS需要反向DNS相同的方式提供。请分享!