据我了解,DNS服务器“简单地”在某种表中查找并找到与您尝试访问的域关联的IP地址。然后,该IP地址返回给您的浏览器,浏览器将对该IP地址进行一些http请求,然后您将返回http响应(网页)。
当我查找或跟踪例如的IP地址。wikipedia.org我得到:91.198.174.192
但是,当我随后尝试直接访问该IP地址时,却没有获得正常的Wikipedia.org主页,而是访问了Wikimedia基金会中的某些“母亲”服务器。
因此,很明显,除了原始IP地址外,还必须映射一些其他信息。谁能解释一下服务器如何知道差异?
这里有很多事情在起作用。
对于网站,DNS确实会将域名转换为IP地址,因此客户端知道要与之通信的服务器。由于缺乏IP空间,因此可以在一个同时服务器上托管多个网站,因此浏览器的标准是另外告诉服务器它想要哪个网站(http 1.1规范的一部分,该规范在古老的1.0规范中进行了扩展,但没有做这个)。客户端发送到服务器(第一个)的特定字段是Host:标头。的确,如果您通过telnet到给定的IP地址,则键入“ GET /path/to/resource.file” host:domain.name一个http网站,如果请求将返回HTML结果。
但是,DNS比将域名映射到IP地址要复杂得多,包括将多种形式的Lookip用作便利性的文本字段(可促进垃圾邮件管理,站点验证等),邮件交换优先级,服务的服务器/端口分配支持它,重定向和委派。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句