互联网可以在没有DNS的情况下工作吗?


14

如果我们有一个基于IP的系统来标识Internet上的节点,为什么需要DNS?


47
因为www.google.com只是一个TAD,所以74.125.67.100更容易记住吗?

6
我非常喜欢我们三个人立即对Google进行ping操作,以回答此问题。
Eric

5
听起来更像是69.59.196.212 erm的素材...我的意思是serverfault.com。在这里,他们可以解释DNS名称如何更容易记住,抱怨IPv6的复杂性,并讨论负载平衡如何允许将一个主机名映射到X服务器,主机标头如何工作等。:-)
Michael Stum

但是,如果没有www.google.com,互联网能否正常工作?
凯文·潘科

5
在发明DNS之前,人们并没有记住IP地址,而是交换了/ etc / hosts文件。
乔什(Josh)

Answers:


35

尽管其他人认为DNS并不是互联网正常运行所必需的,但我不同意。DNS对于基于IP的网络正常工作不是必需的,但是对于我们今天所知道Internet 来说,绝对必要!


11
+1。没有DNS

1
再次+1 :-)我想知道这是否是个错误(迁移后我可以再次投票)吗?
ChssPly76

1
您可以使用主机文件:)
Matthew Whited

7
请向我发送Internet主机文件的最新副本。我的遗失了一些站点。
凯文·潘科

是的,共享托管将失效
Brettski

10

如果我在godaddy上注册了域名,而不再喜欢godaddy,我可以去另一家提供商处保留我的域名。

IP地址不可能做到这一点,因为IP地址是分配给特定公司的,您无法随身携带。


1
这个; IP地址绑定到网络拓扑。
东武

8

DNS不仅将人类可读的名称映射到IP地址,还将客户端与要连接的网络终结点的特定详细信息分离。

这样一来,服务提供商就可以实施高可用性系统并更改实施细节,而不会影响其客户。


只需等待IPv6 Anycast,en.wikipedia.org
wiki /

8

绝对可以!但您在中会有很多条目/etc/hosts

认真地,虽然。“互联网”(向用户传递内容的机器系统)将继续正常运行。“网络”(通过“互联网”传输的易于查找的信息的集合)将很快崩溃,因为没有人(真正的极客除外)会记住访问Google的IP地址。


7
+1区分互联网和网络
早在2009年


4

使用DNS,一个IP地址可以为多个域的网站提供服务。(至少如果它们运行的​​是HTTP / 1.1。)如果没有DNS,则每个网站基本上都需要专用的IP地址,并且这些地址很快就会用完。


1
...我们确实为此感到感谢!我记得只有四分之一的老式C类仅在一台计算机上捆绑在一起,托管着一堆简单的静态网站。当虚拟主机可用时,我们感到非常高兴,我们可以将其分解为一个IP!
Brian Knoblauch

3

IP和DNS名称之间的区别在于IP指定服务器位置,而DNS名称允许您指定服务本身。通过DNS获得的最大收获不是让DNS名称更容易记住,而是在服务及其实现之间有了一层抽象。因此,基础实现可以更改,服务器可以在用户不注意的情况下移动。

没有它,互联网能否运作?不久之后,要做的第一件事就是实施类似于DNS的服务,以解决因缺乏DNS而产生的所有麻烦。例如,没有DNS链接到其他网页的超链接将很容易中断,从而使万维网无法正常运行。

从某种意义上说,DNS是内容可寻址网络的一种非常基本的形式,即您说的是您要说的,而不是说如何到达那里。您说www.google.com,因为您知道google会搜索,但最终却不知道服务器位于地球的最后位置,这一切都归功于DNS的帮助。


3

这里的每个人似乎都在忘记没有DNS,记住IP地址并不是唯一的选择。ARPANET没有DNS,这就是主机文件的来源。从维基百科

Internet的前身ARPANET没有分布式主机名数据库,例如现代的域名系统,用于通过使用主机名来检索主机的网络节点地址。每个网络节点维护自己需要了解的网络节点图,并为用户分配值得记忆的名称。小型的ARPANET使主机文件的使用变得切实可行,但是,主机文件的维护已成为系统管理员的重担,并且集中管理和集中管理主机文件最终需要创建分布式域名系统。


它仍然是一个名称映射,只是在一个静态文件中。
Xavier J

3

您只需要DNS即可将域名(例如www.google.com)转换为IP(64.233.169.147)。如果所有内容都是基于IP的,那么您就不需要DNS。


2

同样的原因,您可以将名称存储在手机中以参考电话号码:)

没有要求。纯粹的奢华


0

没有任何类型的DNS,Google可以充当“某种” DNS,让人们找到网站(今天,您需要访问xyz.com,在没有DNS的世界中,您可以访问75.125.127.100,而Google xyz,它会给你那样的方式)

互联网会工作。我想成为互联网的一部分吗?一定不行。


0

在某些情况下,“互联网”不需要DNS-例如,如果您仅使用不需要DNS的协议(例如,大多数对等文件共享程序)。

另外,某些私人互联网不需要DNS(但大多数互联网都在一定程度上使用www,这通常意味着它们确实已经拥有了DNS)。


0

可能有一些Web服务器上有多个站点,这些站点共享相同的IP和端口以进行通信,因此DNS是使用不同站点的方式。


0

这是将定位符(IP)和标识符(域名)分开的一个很好的理由:RFC 5887。如果您合并了两家公司并需要它们的网络成为一家,则最好希望它们的网络是使用标识符而不是定位器配置的。


0

是的,没有DNS,Internet可以“运行”。IP数据包根据IP地址和子网掩码进行路由。源和目标之间的各种路由器并不关心人类可读的别名。

但是,对于人类来说,“ www.google.com”比“ 74.125.225.209”更容易记住,原因与“ 1600 Amphitheatre Parkway”比“ 37.423156,-122.084917”更容易记住。在两种情况下,都传达相同的信息,但在两种情况下,都更容易记住一个信息。无论如何,对于人类。


0

互联网本身处于较低水平?当然-一个IP地址的整个点,以及整个IP堆栈都是借助其他协议来帮助将数据包从一个地方路由到另一个地方,这些协议都不依赖于域名系统。

另一方面,DNS系统允许一些不错的事情-首先,它允许人类友好的方式来查找主机。其次,对于支持DNS的协议(例如HTTP),您可以根据预期的目的地(例如,虚拟主机)选择要发送的内容,从而可以更有效地利用可用资源,并利用多播等功能,到更近服务器的地理路由以及其他使生活变得更轻松的奇特事物。

如果没有DNS,互联网会“正常工作”吗?绝对。会不会很痛苦?可能-如果DNS明天崩溃,互联网的许多服务就会被破坏。


-2

不可以。没有DNS,Stack Exchange网络就无法工作。

为了证明这一点,让我们找出IP stackoverflow.com

$ host stackoverflow.com
stackoverflow.com has address 198.252.206.16

在浏览器中转到该页面,您将看到一个错误页面:

找不到198.252.206.16

问题与解答站点198.252.206.16似乎不存在……但是。

(对不起,我无法链接到它,Stack Exchange不允许我输入指向IP的链接。

如果您访问不存在的Stack Exchange网站,这就是您得到的hsdkgujahr.stackexchange.com,但是它会显示“ Q&A网站hsdkgujahr.stackexchange.com似乎还不存在……”。

现在让我们检查IP superuser.com

$ host superuser.com
superuser.com has address 198.252.206.16

请注意,IP地址完全相同。实际上,如果您对任何 Stack Exchange站点进行DNS查找,您将获得相同的IP。

如果将单个IP映射到多个网站,则服务器如何知道哪个网站?

答案是HTTP标头Host随请求一起发送到服务器,并且它包含服务器的标准DNS名称。

因此,没有DNS,您将无法访问自己喜欢的Stack Exchange网站(或SourceForge项目网站,它们的工作方式相同)。


1
-1:禁用DNS服务器,将其添加198.252.206.16 stackoverflow.com到Hosts文件中,然后尝试转到stackoverflow.com,即使您刚刚禁用DNS,也会发现它可以正常工作。实际的?没门。但是,Internet 可以在没有DNS的情况下运行。您只是无法获得各个站点的IP。
2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.