Mac 上的 mDNSResponder 是什么,它安全吗?

启动 Mac 的Activity Monitor,您一定会发现几个带有神秘标签的进程。我们已经发布了一些解释器,详细说明了其中一些系统进程(WindowServerkernel_task)在您的Mac上的作用。在这篇文章中,我们将讨论 mDNSResponder。

什么是 mDNSResponder?

mDNSResponder 代表“多播 DNS 响应程序”。它是一个必不可少的系统应用程序,可为某些核心 macOS 特性和功能提供支持。如果您的Mac和另一台 mDNSResponder 设备位于同一网络上,则 mDNSResponder 是后台进程,可让这两个设备相互检测和通信。

是的,mDNSResponder 服务可能看起来不熟悉,但您很可能每天都在使用它而没有意识到它。如果您曾经将您的Mac连接到本地网络上支持 AirPrint 的打印机,mDNSReponder 可以做到这一点。该过程还有助于在您的 Mac 上发现兼容 AirPlay 的设备(AirPlay-compatible devices)(例如,Apple TV)。

mDNSResponder 利用Bonjour 网络协议(Bonjour networking protocol)自动识别联网Apple设备上的设备。

Bonjour ”描述了构建 mDNSResponder 的网络技术。Bonjour协议在本地网络上广播您的Mac的可用性。它还允许您的设备使用IP 地址(IP addresses)进行可靠通信和交换数据。

当连接到有线或无线网络时,Bonjour会不断扫描网络以查找其他与Bonjour兼容的设备。请注意,Bonjour在(Bonjour)Mac上作为 mDNSResponder 运行。虽然这两个术语经常互换使用,但当您启动活动监视器(Activity Monitor)时,您会发现“mDNSResponder”。

(Apps)非 Apple 设备上的应用程序和服务(例如 iTunes)也可以使用Bonjour协议与您的Mac通信和交换数据。(Mac)详细了解Bonjour 服务在 Windows 10 中的工作方式(how the Bonjour service works in Windows 10)

mDNSResponder 安全吗?

mDNSResponder 是支持Apple设备上的“Bonjour 协议”的基本元素。这是Apple设计的合法服务,因此您无需担心。该过程在后台运行,并定期在本地网络上搜索配备 Bonjour 的设备。(Bonjour-equipped)

尽管它是一个安全且没有问题的系统进程,但我们遇到了一些Mac用户,他们报告说 mDNSResponder 占用了高达 100%的CPU使用率并降低了 Wi-Fi 速度(reduces Wi-Fi speed)。 

在这里,我们介绍了一些故障排除修复程序,这些修复程序可以帮助您在Mac(Mac)上将 mDNSResponder 恢复到正常状态。

修复 mDNSResponder 问题

如果 mDNSResponder 出现问题,您可能会在使用文件共享服务、媒体共享应用程序和AirPrint等打印机共享服务时遇到困难。以下修复可以消除影响 mDNSResponder 在Mac上运行的故障。

1. 强制退出 mDNSResponder(1. Force Quit mDNSResponder)

强制退出 mDNSResponder 确实会终止服务,但只是短暂的。macOS 将立即重启 mDNSResponder,因为它是一个至关重要的系统进程。但是,该操作会刷新 mDNSResponder,并有望修复导致进程出现故障的问题。

  1. 启动Activity Monitor,双击mDNSResponder,然后选择Quit

  1. 选择强制退出(Force Quit)

前往活动监视器的(Activity Monitor)CPU网络(Network)部分,检查强制退出 mDNSReponder 是否稳定了服务。如果没有任何变化,请重新启动Mac或引导至安全模式(Mode)

2. 重启你的 Mac(2. Restart Your Mac)

关闭所有活动的应用程序,单击菜单栏上的Apple 标志,然后选择(Apple logo)重新启动(Restart)。如果 mDNSResponder 继续出现异常行为,请尝试将您的Mac引导至安全模式(Safe Mode)

关闭Mac并等待它完全关闭。之后(Afterward),按下电源按钮并立即按住Shift键。当登录窗口出现在屏幕上时,松开Shift键。(Shift)

如果您的 Mac 使用M1 Silicon 芯片(M1 Silicon chip),请将其关闭并等待大约 10 – 20 秒。然后,按住电源按钮(power button),直到屏幕上显示启动选项窗口。选择您喜欢的启动磁盘,按住Shift键,单击Continue in Safe Mode ,然后在屏幕出现登录屏幕时 松开Shift键。(Shift)

输入您的密码,正常重新启动您的MacApple 标志(Apple logo)>重新启动(Restart)),并检查是否减少了 mDNSResponder CPU消耗和网络使用。

3.禁用防火墙(3. Disable Firewall)

第三方防火墙(Third-party firewalls)可能会干扰本地网络上的设备通信。如果您使用其中一个,请将其关闭并检查是否可以解决问题。您还应该确保内置的 macOS 防火墙(built-in macOS firewall)不会阻止传入连接。

  1. 转到系统偏好设置(System Preferences)>安全和隐私(Security & Privacy)>防火墙(Firewall)
  2. 单击左下角的锁定图标,输入 Mac 的密码(或使用 Touch ID),然后单击(lock icon)防火墙选项(Firewall Options)

  1. 取消选中阻止所有传入连接(Block all incoming connections)并选择确定(OK)

4. 禁用并重新启用 mDNSResponder(4. Disable and Re-Enable mDNSResponder)

在 mDNSResponder 大量使用系统资源的极少数情况下,禁用和重新启用该服务可能会解决问题。

注意:(Note:)您需要先暂时禁用系统完整性保护 (SIP)(temporarily disable System Integrity Protection (SIP)),然后才能重新启用 mDNSResponder。SIP是一种保护协议,可防止在 macOS 上执行未经授权的代码。

  1. 转到Finder > Applications > Utilities并启动Terminal

  1. 将以下命令粘贴到终端(Terminal)控制台中,然后按Enter

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSresponder.plist

  1. 输入 Mac 的密码,然后按Enter继续。

Windows不同,许多 macOS 应用程序和服务需要 mDNSResponder 才能正常运行。因此,我们不建议长时间禁用 mDNSResponder。等待(Wait)一分钟,然后继续下一步以重新启用该服务。

  1. 将以下命令粘贴到控制台中,然后按Enter

sudo launchctl load -w/System/Library/LaunchDaemons/com.apple.mDNSresponder.plist

  1. 输入 Mac 的密码,然后按Enter

mDNSResponder 揭秘

总而言之,mDNSResponder 是一个安全的过程,可帮助您的Mac与其他设备连接和通信。如果 mDNSResponder 行为异常,则至少上述故障排除修复之一应使其活动正常化。



About the author

我是一名计算机技术人员,拥有超过 10 年的经验和使用 Android 设备的经验。过去五年我也一直在办公室工作,在那里我学会了如何使用 Office 365 和 MacOS。在业余时间,我喜欢花时间在户外听音乐或看电影。



Related posts