我正在开发一个应该能够联系 DNS 服务器的网络应用程序。
我想知道最好的方法是什么。我想到了浏览器。
例如,Firefox 或 Chrome 如何解析我在 URL 栏中输入的域名?
我的意思是,我输入 http://www.google.com , 它怎么知道必须向 IP 209.85.195.104 发出 TCP 请求?
谢谢!
最佳答案
在最简单的情况下,浏览器会使用诸如 gethostbyname()
之类的函数将名称解析为地址。但是,此功能并不总是以方便浏览器的方式实现(它通常会阻塞直到获得答案)。
今天的浏览器开始使用 "DNS prefetch" ,浏览器将在页面加载时直接向 DNS 服务器发送 DNS 请求,以便在用户单击下一个链接之前解析地址。这样一来,用户在点击时无需等待名称解析,浏览体验也更快。
关于networking - 我的网络浏览器如何解析域名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4392228/