升级到优胜美地后的网络问题 - 无法找到本地系统


1

我在Windows公司网络上。自从我将MacBook Pro(2014)从Mavericks升级到Yosemite后,我无法通过DNS在我们的网络上找到本地机器。

  • 我可以进入我的公司网络。
  • 我可以通过DNS名称连接到世界各地的任何机器,网页和服务器。(我可以毫无问题地连接谷歌,雅虎等)
  • 我可以通过IP地址找到本地系统。

我不能做的是通过DNS名称找到我们的本地系统。例如,我可以,ping 10.1.0.233但我ping flubert.prod.local甚至不能说该机器的IP地址是10.1.0.233。

这对我们许多Machead来说都是一个问题。由于这个问题,许多人还没有从小牛升级到优胜美地。

Answers:


1

这是水平分割DNS和异构但Windows主导的公司网络中非常常见的问题。很多Windows系统管理员都被用作 .local TLD作为有效的私有TLD名称,因为它至少已经十年了,尽管它不再符合RFC标准。

当您的局域网配置域名以.local结尾时,Mac查询的所有LAN主机名解析将首先传递给mDNS - 绕过单播DNS!

因此.local的主机名解析通常在Mac OS X应用程序中失败(Safari,Chrome等,并经常ping)。

相反,dig和nslookup是单播DNS实用程序,因此它们都将绕过系统主机名解析顺序(files-> mDNS-> DNS)并直接查询单播DNS。

存在一些变通方法(您的里程会有所不同):

  • 经常刷新DNS缓存
  • 添加prod.local为搜索域(local有时也建议另外添加)

在此输入图像描述

恕我直言,唯一正确且符合RFC的方法是修改本地域名,以便在Windows企业网络中使用除.local之外的TLD。


这样做了。令人惊讶的是,如果我在公共网络上,然后使用Cisco Anyconnect连接到我的公司网络,我可以将DNS用于本地计算机。事实上,这是我在过去两周使用Mac时必须要做的事情。它造成了各种各样的问题,因为如果我运行VPN,Jabber / Messages和我的Voip手机通过X-Lite会导致问题。这让我的生活变得更加轻松!
大卫W.

0

我没有这个问题。

您是否尝试刷新DNS缓存?

打开终端并运行以下代码:

sudo discoveryutil udnsflushcaches

您的DNS服务器是否在高级> DNS下的网络首选项中列出?如果没有,请在那里添加DNS服务器的IP地址。


是的,我试过冲洗缓存。我运行时列出的DNS服务器与我的Windows机器上的DNS服务器匹配ipconfig /all。我被告知这与Bonjour有关。
大卫W.

具有讽刺意味的是,我还在Mac上通过Parallels运行新的Windows 7 PC并共享我的网络连接。那台PC,即使它不在企业域上,也可以找到我的Mac无法找到的本地机器。
大卫W.

根据这个页面,Bonjour被优胜美地所取代。如何:sudo的launchctl卸载-w /System/Library/LaunchDaemons/com.apple.discoveryd.plist和须藤launchctl负载-w /System/Library/LaunchDaemons/com.apple.discoveryd.plist
suit4
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.