IP、路由与 IPv6
在“终端”中查看 Mac 网络设置
macOS 自带的命令行工具可以显示与“系统设置”相同的网络设置,而且信息更多。读取设置不需要管理员权限。
症状
- 想快速查看网络设置,或复制下来用于技术支持请求。
- “系统设置”没有显示你需要的详细信息。
- 想在脚本中检查设置。
可能的原因
- 多个工具。
networksetup读取和更改服务,scutil显示实时 DNS 和代理状态,ipconfig显示 DHCP 数据。 - 服务和设备。服务的名称类似 Wi-Fi,设备的名称类似
en0。命令接受其中一种。
如何检查
列出硬件端口及其设备名称和 MAC 地址。
networksetup -listallhardwareports按 Mac 使用的顺序列出服务。
networksetup -listnetworkserviceorder显示某个服务的 IP 地址、子网掩码、路由器和硬件地址。
networksetup -getinfo Wi-Fi显示某个设备的 IPv4 地址。
ipconfig getifaddr en0显示默认路由器及其使用的接口。
route -n get default显示路由表。
netstat -rn显示实时 DNS 配置,包括所有解析器。
scutil --dns显示系统代理配置。
scutil --proxy显示 Mac 接受的 DHCP 数据。
ipconfig getpacket en0确认在当前配置下能否访问某个主机。
scutil -r apple.com
如何修复
大多数更改设置的
networksetup命令需要管理员权限。请先阅读手册页。man networksetup更改之前先保存当前值,以便恢复。
networksetup -getdnsservers Wi-Fi > ~/dns-before.txt
使用 Kilobat
Kilobat 以 JSON 格式提供其中许多值,便于脚本和智能体使用。
kilobat diagnose --json显示当前 Wi-Fi 链路的信号、信道和链路速率。
kilobat wifi status --json
常见问题
为什么 networksetup 要求输入密码?
networksetup 手册页指出,更改网络设置至少需要管理员权限。
ipconfig 和 Windows 上的一样吗?
不一样。macOS 的 ipconfig 与 IPConfiguration 后台服务通信。其手册页说明它仅用于测试和调试。
参考资料
- networksetup(8),macOS 27.2 自带的 man 手册页
- scutil(8),macOS 27.2 自带的 man 手册页
- ipconfig(8),macOS 27.2 自带的 man 手册页
- route(8),macOS 27.2 自带的手册页
- netstat(1),macOS 27.2 自带的手册页
参考资料核查于 2026年10月29日。man 手册页为 macOS 自带版本;在“终端”中用 man <name> 打开。