IP、路由与 IPv6

在“终端”中查看 Mac 网络设置

macOS 自带的命令行工具可以显示与“系统设置”相同的网络设置,而且信息更多。读取设置不需要管理员权限。

适用于:所有当前 macOS 版本。核查日期:2026年10月29日

症状

  • 想快速查看网络设置,或复制下来用于技术支持请求。
  • “系统设置”没有显示你需要的详细信息。
  • 想在脚本中检查设置。

可能的原因

  • 多个工具。networksetup 读取和更改服务,scutil 显示实时 DNS 和代理状态,ipconfig 显示 DHCP 数据。
  • 服务和设备。服务的名称类似 Wi-Fi,设备的名称类似 en0。命令接受其中一种。

如何检查

  1. 列出硬件端口及其设备名称和 MAC 地址。

    networksetup -listallhardwareports
  2. 按 Mac 使用的顺序列出服务。

    networksetup -listnetworkserviceorder
  3. 显示某个服务的 IP 地址、子网掩码、路由器和硬件地址。

    networksetup -getinfo Wi-Fi
  4. 显示某个设备的 IPv4 地址。

    ipconfig getifaddr en0
  5. 显示默认路由器及其使用的接口。

    route -n get default
  6. 显示路由表。

    netstat -rn
  7. 显示实时 DNS 配置,包括所有解析器。

    scutil --dns
  8. 显示系统代理配置。

    scutil --proxy
  9. 显示 Mac 接受的 DHCP 数据。

    ipconfig getpacket en0
  10. 确认在当前配置下能否访问某个主机。

    scutil -r apple.com

如何修复

  1. 大多数更改设置的 networksetup 命令需要管理员权限。请先阅读手册页。

    man networksetup
  2. 更改之前先保存当前值,以便恢复。

    networksetup -getdnsservers Wi-Fi > ~/dns-before.txt

使用 Kilobat

  1. Kilobat 以 JSON 格式提供其中许多值,便于脚本和智能体使用。

    kilobat diagnose --json
  2. 显示当前 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> 打开。