macOS自定义域名解析需修改/etc/hosts文件,方法包括:一、nano编辑器直接修改;二、vim编辑器修改;三、脚本追加+刷新DNS缓存;四、Finder图形界面配合TextEdit修改;五、第三方工具Gas Mask管理。

如果您需要在 macOS 系统中自定义域名解析规则,例如将 test.local 指向 127.0.0.1 或屏蔽广告域名,则必须修改系统 hosts 文件。以下是多种可行的修改与生效方法:
一、使用 nano 编辑器直接修改 hosts 文件
该方法适用于熟悉终端基础操作的用户,nano 是 macOS 自带的轻量级文本编辑器,无需额外安装,支持实时保存和简单导航。
1、打开终端应用程序。
2、输入命令 sudo nano /etc/hosts 并按回车键。
3、输入当前用户密码(输入时无可见字符,输完直接按回车)。
4、使用方向键移动光标至文件末尾空行处。
5、输入格式为 127.0.0.1 example.com 的映射条目(IP 与域名间用至少一个空格分隔)。
6、按 Control+O 键保存,回车确认文件名,再按 Control+X 键退出。
二、使用 vim 编辑器修改 hosts 文件
该方法适合习惯 vi/vim 操作模式的用户,支持高效跳转与批量编辑,但需掌握基本命令模式切换逻辑。
1、在终端中执行 sudo vim /etc/hosts。
2、输入密码后进入只读视图,按 i 键进入插入模式。
3、在文件末尾新增一行,写入 192.168.1.100 dev-server.local 类似格式的条目。
4、按 Esc 键退出插入模式,输入 :wq 并回车以保存并退出。
三、通过脚本追加 hosts 条目并刷新 DNS 缓存
该方法避免手动编辑风险,通过 echo 命令追加内容,并自动触发系统 DNS 缓存刷新,确保修改立即参与域名解析流程。
1、在终端中运行 echo "127.0.0.1 fakeapi.example.org" | sudo tee -a /etc/hosts。
2、执行 sudo dscacheutil -flushcache 清除本地 DNS 缓存。
3、执行 sudo killall -HUP mDNSResponder 重启多播 DNS 响应服务。
四、使用 Finder 图形界面配合文本编辑器修改
该方法面向不熟悉终端命令的用户,借助图形界面定位文件,再用 TextEdit 等应用编辑,降低误操作概率。
1、打开访达(Finder),按下 Shift+Command+G 快捷键调出“前往文件夹”窗口。
2、输入 /etc 并点击“前往”。
3、在该目录中找到 hosts 文件,右键选择“显示简介”,点击右下角锁图标解锁,勾选“现在忽略此项目的权限”。
4、右键 hosts 文件,选择“用文稿编辑打开”,在文档末尾添加 ::1 localhost6 等 IPv6 映射行。
5、保存文件后,在终端中运行 sudo chmod 644 /etc/hosts 恢复标准权限。
五、通过第三方工具 Gas Mask 管理 hosts 配置
该方法提供可视化切换、备份与环境分组功能,适合需频繁切换开发/测试/生产 hosts 配置的用户。
1、从官网下载 Gas Mask 并拖入“应用程序”文件夹。
2、首次启动时点击“Open hosts file”按钮,授权访问系统 hosts。
3、点击左上角“+”号创建新配置,命名为 dev-env,粘贴含自定义映射的文本块。
4、勾选该配置并点击“Apply Changes”,工具自动完成写入与缓存刷新。










