使用IP地址比使用域名更快吗?

时间:2013-04-12 05:53:38

标签: networking dns ip

假设域映射到的IP地址是已知的,使用此已知IP地址而不是使用域是否有任何好处?什么使跟踪路由决定?由于DNS服务器将域名转换为IP地址,因此我不得不说使用IP地址更快,尽管不明显。但是,由于DNS服务器以高容量处理这些请求并且可能缓存最受欢迎的站点,因此我也不得不说DNS服务器可能知道到服务器的最快路由,这会导致域速度稍快。据我所知,当我问哪个可能更快时,这种量化可能是纳秒级或微秒级。

3 个答案:

答案 0 :(得分:7)

从技术上讲,是的。至少第一次。您的计算机第一次询问互联网这个域名在哪里,一些机器响应它的IP地址  然而,当它得到这个响应时,它会保留一个副本(称为缓存),因此它不需要再问一段时间(这些事情可以改变,但很少这样做)

因此,如果您的计算机当前具有缓存的IP,那么它们是相同的。如果你现在没有它,IP会更快,但只是在几天内第一次,只有几秒钟

关于如何挑选最快路线的问题。有几种路由协议,其中大多数考虑了几个不同的因素,包括连接负载,带宽,延迟,抖动和距离。其他几个也是可能的。长话短说,互联网的路由器不断地告诉对方这样的链接已关闭或我刚刚连接了新地址,并且他们拥有路由器运行的算法以确定哪种方式最好。

N.B。附注是IP不会总是允许您访问某个网站:例如托管在托管服务上的网站。他们很少拥有自己的特定IP地址,但是对许多不同站点的请求可能会进入一个IP。在这种情况下,请求的域名用于确定返回请求者的站点

答案 1 :(得分:3)

您提供的两个示例都是正确的。直接输入IP地址将绕过DNS查找的需要,但如果您使用IP地址到一个流行的网站,这会使您在世界的一半而不是附近的服务器上,这样做的好处可能毫无意义。最终,你没有足够的好处使它值得你花时间,特别是因为你的计算机将缓存你从DNS查找收到的响应,使差异为0.。

答案 2 :(得分:0)

@PsychoData很好地回答了这个问题,但我认为这里需要注意和重申一些事情:

  • 使用IP时,您绕过DNS,这将为您节省第一次呼叫时的DNS解析时间,直到TTL(生存时间)到期为止。 TTL通常为1小时。在大多数应用中,通常不应该注意到这种差异。如果您只拨打一个电话,您将不会注意到毫秒的延迟。如果您打了多个电话,则第一个电话之后的所有电话都不会延迟。
  • 输入名称和IP时,您可以调用几个不同的网络守护程序,包括NetBIOS(\ ServerX),DNS FQDN(\ ServerX.domain.com),DNS短名称(\ ServerX, MAY 获得)操作系统或DNS服务器自动将其加长或猜测为FQDN \ ServerX.domain.com)
  • Microsoft对SMB共享具有两种主要的身份验证机制:NTLMv2(NTLMv1和CHAP不安全)和Kerberos。根据客户端,服务器和身份验证服务器(如果正在运行,则为Active Directory)上的许多配置以及您的名称命名方式,您可能会获得一个或另一个。 Kerberos通常比NTLMv2更快,至少对于重复调用而言,因为它获取并保留了身份验证令牌,并且不需要每次都通过密码哈希重新进行身份验证。
  • NetBIOS使用与DNS不同的端口,由于ACL /路由器/防火墙,它们可能导致网络延迟。
  • NetBIOS实际上可以为您提供与DNS不同的答案,因为它是一个不同的解析系统。通常,第一台在子网上启动的PC将充当NetBIOS服务器,而新服务器可以向网络随机声明自己作为新的NetBIOS主服务器。此外,\ FileShareServer.domain.com也不会在NetBIOS查找中返回,因为它不是计算机名称(ServerX)而是DNS别名。

在这里我可能会想念的甚至更多,但我认为您会想到这里有很多因素可能会起作用。