![Mac 有 IP 地址,可以连接路由器,但无法连接外部](https://linux22.com/image/1280828/Mac%20%E6%9C%89%20IP%20%E5%9C%B0%E5%9D%80%EF%BC%8C%E5%8F%AF%E4%BB%A5%E8%BF%9E%E6%8E%A5%E8%B7%AF%E7%94%B1%E5%99%A8%EF%BC%8C%E4%BD%86%E6%97%A0%E6%B3%95%E8%BF%9E%E6%8E%A5%E5%A4%96%E9%83%A8.png)
奇怪的问题,我的 MacBook 现在无法连接到任何地方!路由器可以工作,它获取 IP,它可以登录路由器,但它无法解决任何问题!
当我将另一台设备连接到路由器并且它连接到网络时,路由器就可以工作了。
MacBook 也没有任何奇怪的 DNS 配置,路由器的 DNS 只有 192.168.1.1
我甚至尝试将它绑定到我的手机上,但它仍然无法连接到网络...帮忙吗?
答案1
您已连接到互联网,这意味着您的浏览器可能存在问题。检查您的浏览器选项中的代理,然后取消选中它们。
另外,您可能使用的是 Mac,但如果您的代理设置已更改,则这是感染病毒的典型迹象。
如果您没有发现代理已更改,请将您的 DNS 服务器设置为 8.8.8.8 和 8.8.4.4(这些是 Google 的公共 DNS 服务器),然后查看是否可以连接。您的 ISP 的 DNS 可能已关闭。如果上述方法均无效,则您的浏览器可能需要修复。
答案2
我是否从评论中理解到,即使您的 Mac 仍设置为使用路由器的 DNS 代理 192.168.1.1,nslookup 仍可工作?如果是这样,那么看看 Mac OS X 的其他DNS 解析器 codepath 通过使用以下工具执行 DNS 查询来工作dns-sd
:
dns-sd -Q www.google.com
(一旦获得结果或决定放弃,您必须按 Ctrl-C 退出此命令)
如果dns-sd
无法解析主机名,但传统的 Unix 工具(例如nslookup
/ dig
/ )host
可以,那么mDNSResponder
守护进程可能已损坏,需要重新启动:
sudo killall mDNSResponder
注意:不要只是 HUP 它,而是真正地杀死它并让它launchd
自动重新启动。我曾见过 mDNSResponder 无法仅通过 HUP 自行解脱。
更新:如果上述命令不起作用(请注意,其中的所有内容都区分大小写),则 mDNSResponder 可能未运行,或者每次启动时都会崩溃或过早退出。使用控制台实用程序 ( /Applications/Utilities/Console.app
),点击“显示日志列表”按钮并选择“所有消息”日志流。查找来自launchd
或的消息mDNSResponder
,这些消息可能表明 mDNSResponder 启动和保持运行存在问题的原因。还可以查看日志列表中的“系统诊断报告”类别,查看是否有来自 mDNSResponder 的崩溃报告。
您的 mDNSResponder 二进制文件可能不知何故损坏了,需要重新安装。您可以重新安装相同版本的 Mac OS X(默认情况下会进行修复安装并保留文件,但您再怎么小心也不为过,因此首先请确保您的备份有效),或者您可以尝试从另一台运行完全相同版本和版本的 Mac OS X 的机器复制 mDNSResponder 二进制文件本身。转到 [Apple] 菜单 -> 关于此 Mac,查看版本号,然后单击一次以查看版本号。或者在复制之前,您可以在两台机器上对二进制文件进行校验,如下所示:
$ md5 /usr/sbin/mDNSResponder
MD5 (/usr/sbin/mDNSResponder) = 205d44c2b62b8b8c2cef5b84e6da7c79
这是我的 Mac OS X v10.6.8 build 10K540 副本的校验和。
我认为 mDNSResponder 也可能存在损坏的配置文件/plist 或缓存文件或者某些被堵塞的东西,但我通常不认为 mDNSResponder 存在这类问题。