我输入的URL如何导致我在浏览器中看到的最终内容?

时间:2015-10-21 16:50:39

标签: url dns server hosting ip-address

我正在试图弄清楚这些是如何协同工作的,互联网上有各种各样的信息。

以下是我认为的事情:

1)当您在浏览器中输入一个在域名服务器(DNS)中查找的URL时,会向您发送一个IP地址。

2)然后,您的计算机将此IP地址跟踪到某个服务器。

3)在服务器上有名称服务器,它们可以引导您访问服务器中所需的特定内容。 - >我不清楚这一步。

4)使用此信息,您的请求将被收到,服务器会将网站内容转发给您。

这是对的吗?我有什么不对?过去一周我做了很多搜索,而我认为我缺少的是对所有这些细节如何结合在一起的大图解释。

较小的问题:

a)名称服务器如何知道我想要指向哪个网站?

b)像GoDaddy这样的网站如何拥有自己的网址?为什么我必须每年支付他们的费用,为什么我不能直接购买网址?

我正在寻找关于所有这些东西如何协同工作的有力解释。谢谢!

2 个答案:

答案 0 :(得分:1)

我在浏览器中放置网址时如何加载内容?

那么这个主题上有一些非常好的文档,每一步都附有它自己的逻辑和算法,在这里我给你一个步骤。

步骤1:DNS Lookup:域名转换为IP地址,在此过程中,URL中的域名用于通过在多个名为{{1的服务器上查找记录来查找关联服务器计算机的IP地址}}

步骤2:服务请求:知道IP地址后,根据协议的服务请求以数据包的形式创建,并使用IP地址发送到服务器计算机。如果是浏览器,通常会是HTTP request;在其他情况下,它可能是别的东西。

步骤3:请求处理:根据服务请求和底层协议,请求由软件程序处理,该程序通常存在于上一步中发现其地址的服务器计算机上。根据服务器程序上编程的逻辑,如果HTTP被称为HTTP Response,它将返回适当的响应。

步骤4:响应处理:在此步骤中,请求程序在您的情况下是浏览器接收上一步骤中提到的响应并呈现它并按照协议中定义的方式显示它,如果是HTTP,则HTTP主体是提取和渲染,用HTML编写。

名称服务器如何知道我想要指向哪个网站

URL具有非常明确的格式,浏览器使用该格式查找主机名/域名,然后使用该名称查找关联的IP地址;有一些不同的算法,名称服务器运行以找出正确的服务器机器IP。

详细了解DNS解析here

GoDaddy这样的网站如何拥有自己的网址?为什么我要支付年费,为什么我不能直接购买网址?

域名是需要管理和监管的资源ICANN他们有一些称为注册管理机构的注册管理机构(如GoDaddy)从中获取域名并为您预订;您支付的费用由ICANN和注册商分摊。

注册商为您做了很多工作,例如设置name servers提供托管等。

从技术上讲,你可以创建自己的域名,但它不会偏离正常,因为你需要创建一个名称服务器,需要复制其他服务器,这样你就可以拥有你想要的任何名称(具有太独特了);一个简单的方法是在linux中编辑你的本地主机文件,它位于name server,在windows中它位于/etc/hosts,但它在互联网上没有好处,因为它赢了被其他服务器接受。

答案 1 :(得分:0)

(这个过程的精确和详细的描述可能需要太多的空间和时间来写,我相信你可以在某处google)。因此,尽管非常简化,但您对所发生的情况有很好的了解,但需要进行一些澄清(同样,我会有点不精确):

步骤2:您的计算机确实遵循步骤1中收到的IP地址,但设置为该IP地址的请求通常包含一条称为“主机标头”的重要信息,即您在浏览器中输入的实际名称

步骤3:这里没有涉及名称服务器,软件(/硬件)通常称为“webserver”(例如Apache,IIS,nginx等......)。一个网络服务器可以服务一个或多个不同的站点。如果有多个,网络服务器将使用“主机标题”将您引导至您想要的特定内容。

ICAAN'拥有'域名,注册过程涉及技术和管理工作,因此您需要向注册商支付费用。