首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mac狮DNS查找顺序

Mac狮DNS查找顺序
EN

Stack Overflow用户
提问于 2011-07-27 08:24:47
回答 10查看 65.8K关注 0票数 97

升级到resolution之后,我发现/etc/host不再是首选的名称解析。这会产生一些副作用,比如:

  1. /etc/主机中的条目解析速度非常慢。
  2. 不能覆盖现有域,例如127.0.0.1 www.google.com
  3. 如果您从DHCP获得搜索域条目,比方说.lan,以及一些有趣的家伙将localhost.lan配置为其他东西--然后在本地DNS中配置为127.0.0.1 --那么您就不能再访问本地主机了。

这种行为是故意的吗?这有什么意义吗?最重要的是,我怎样才能回到过去的行为。

EN

回答 10

Stack Overflow用户

发布于 2011-07-28 06:32:01

我认为他的问题在于Lion的处理方式不同,因为它是为一些多播.local特性保留的(由Bonjour使用)。我发现解决此问题的唯一方法是为开发主机使用不同的TLD (即:.dev)。它对我来说很好,希望它能对别人有所帮助!

票数 78
EN

Stack Overflow用户

发布于 2011-08-09 06:56:58

关于在主机文件中覆盖域,我发现在某些情况下,如果Lion发现域在IPv4网络中无法访问,它就会查询域的IPv4地址。

当我注意到一些我以前从未在雪豹上看到过的广告时,我发现了这一点,因为我把广告域重定向到了127.0.0.1。我启动了wireshark,并注意到AAAA (IPv6 DNS records)查询是在IPv4 A查询(IPv4)之后进行的。这些广告服务器确实有IPv6加载项,并且能够为我提供它们的内容。

解决这个问题的方法是有一个

代码语言:javascript
复制
::1 mydomain.com

每一项

代码语言:javascript
复制
127.0.0.1 mydomain.com

在您的主机文件中输入。

有趣的是,如果您碰巧在127.0.0.1:80上运行了一个本地was服务器,并且您的浏览器收到了来自该was服务器的响应(错误或其他),则不会发出AAAA查询,因为它似乎确信至少可以使用TCP连接。

另外,如果您大量使用主机文件(用于adblocking、本地web开发等),则可能需要查看运行您自己的本地DNS解析器。每个请求都必须读取/etc/hosts,这会对磁盘/CPU造成相当大的打击,因此保持该文件非常轻符合您的最佳利益。

在本地运行dnsmasq (除了显著的性能提升之外)的一个优点是,您可以将整个顶级域重定向回本地机器。这允许您拥有用于开发的整个*.dev命名空间(例如),而不必单独输入您希望在本地解析为/etc/hosts的每个域。

票数 51
EN

Stack Overflow用户

发布于 2011-07-27 13:07:19

问题是,我将/etc/host文件符号链接起来。如果/etc/host是一个普通文件,则一切正常。

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6841421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档