Macos Mac OSX更改/etc/hosts即使在杀死mDNSResolver后也没有效果
我在Windows(10)中没有遇到过类似的问题,而且我在文档中搜索到的任何内容似乎都无法说明原因,如果这不起作用,那么就是这样Macos Mac OSX更改/etc/hosts即使在杀死mDNSResolver后也没有效果,macos,dns,hosts,Macos,Dns,Hosts,我在Windows(10)中没有遇到过类似的问题,而且我在文档中搜索到的任何内容似乎都无法说明原因,如果这不起作用,那么就是这样 我打开终端并编辑/etc/hosts(我在PC上做过很多次,几年前也在OSX上做过) 如果这不起作用,我就输入sudo killall-HUP mdnsrresponder 然后,为了更多的笑容,我重新开机 这绝对没有效果。有人能告诉我为什么吗?谢谢 更新:令人尴尬的事实是,我在/etc/hosts中输入的行是相反的,即域优先,如下所示: mydomain.co
- 我打开终端并编辑/etc/hosts(我在PC上做过很多次,几年前也在OSX上做过)
- 如果这不起作用,我就输入
sudo killall-HUP mdnsrresponder
- 然后,为了更多的笑容,我重新开机
更新:令人尴尬的事实是,我在
/etc/hosts
中输入的行是相反的,即域优先,如下所示:
mydomain.com 192.168.33.10 #wrong
192.168.33.10 mydomain.com #what it should have been
然而,公认的答案写得很好,值得赞赏 在macOS(/OS X)上使用/etc/hosts时,我发现了两个常见问题:
- 格式不正确:/etc/hosts文件中的每个条目必须是IP地址,后跟空格或制表符,后跟名称,然后是行尾的换行符。尝试使用cat-vet/etc/hosts打印hosts文件,以使通常不可见的字符可见。每一行都应该像下面的一行:
(“^I”是一个制表符,“$”是行尾的换行符。)如果条目列出了多个名称(也用空格或制表符分隔),也可以 如果在“$”前面看到“^M”(回车符),则表示您有DOS/Windows格式的文本,需要删除回车符127.0.0.1^Iwww.example.com$ 127.0.0.1 www.example.com$
- 测试不正确:不要使用命令行工具
、dig
和host
,因为它们都直接测试DNS,因此会绕过/etc/hosts文件。浏览器有时会缓存内容,这可能会产生误导性的结果。测试系统名称解析系统的“正确”方法是使用nslookup
命令:dscacheutil
…但由于这太冗长了,我倾向于使用dscacheutil -q host -a name www.example.com
,看看它说要测试什么地址ping
su
nano/etc/hosts
有关更多信息:
它工作正常。所以你做错了什么,或者你预期错了。你的问题中没有足够的信息来猜测是哪一个。这是在“我几乎不好意思承认我在这个部门干过”。我把域名放在第一位,IP地址放在第二位。我将把这个问题和你出色的回答留在这里,让我保持谦虚,希望它能帮助别人。如果社区认为应该删除它,我很乐意推迟。谢谢!这正是我这几天的问题!