networksetup 是 macos 原生终端网络管理工具,支持列出服务、查看/设置 ip/dns、启停接口及调整服务优先级。

如果您希望在 macOS 系统中脱离图形界面,通过终端精准控制网络接口(如 Wi-Fi、以太网)的启用状态、IP 配置、DNS 设置及服务顺序,则 networksetup 命令是系统原生、无需安装的核心工具。以下是具体操作步骤:
一、列出所有网络服务并确认目标接口名称
networksetup 以“服务”为单位管理配置,每个服务对应一个物理或虚拟接口(如 Wi-Fi、Ethernet、Bluetooth PAN),必须先获取准确的服务名称才能执行后续操作。
1、打开“终端”应用程序。
2、输入以下命令并回车:networksetup -listallnetworkservices
3、终端将输出全部服务列表,例如:Wi-Fi、USB Ethernet、Thunderbolt Bridge;注意名称中的空格和大小写必须完全一致。
二、查看指定服务的当前网络参数
诊断连接异常或验证配置是否生效时,需确认该服务使用的 IP 获取方式(DHCP 或手动)、实际分配地址、子网掩码、默认网关及 DNS 服务器。
1、从上一步结果中确认目标服务名,例如 Wi-Fi。
2、执行命令:networksetup -getinfo "Wi-Fi"
3、若输出中显示 DHCP Configuration,表示当前由路由器自动分配;若显示 IP address: 后跟具体地址,则为静态配置模式。
三、启用或禁用指定网络服务
临时关闭某接口可快速排除路由冲突或干扰,例如禁用蓝牙共享服务避免与 Wi-Fi 同时启用导致默认路由异常。
1、禁用服务(以 Bluetooth PAN 为例):sudo networksetup -setnetworkserviceenabled "Bluetooth PAN" off
2、启用服务(以 Wi-Fi 为例):sudo networksetup -setnetworkserviceenabled "Wi-Fi" on
3、执行后无任何输出即表示成功;若提示 "The specified service does not exist.",请返回第一步重新核对服务名称拼写。
PyCharm 2026.2.0.1 Mac版提供 JetBrains 官方 2026.2.0.1 版本安装包,适合在macOS系统上进行 Python 项目开发、运行、调试和测试。
四、切换 TCP/IP 配置模式(DHCP 与静态 IP)
开发测试环境或企业内网常需固定 IP 地址,此时需将服务从 DHCP 模式切换为手动配置,并指定地址、子网掩码和路由器。
1、设为 DHCP 自动获取:sudo networksetup -setdhcp "Ethernet"
2、设为静态 IP(示例:IP 192.168.1.100,掩码 255.255.255.0,网关 192.168.1.1):sudo networksetup -setmanual "Ethernet" 192.168.1.100 255.255.255.0 192.168.1.1
3、清除当前手动设置并恢复 DHCP:sudo networksetup -setdhcp "Ethernet"
五、配置或重置 DNS 服务器
DNS 设置作用于单个服务,不影响其他接口,适用于需要指定公共 DNS(如 8.8.8.8)或绕过运营商劫持的场景。
1、为 Wi-Fi 设置双 DNS:sudo networksetup -setdnsservers "Wi-Fi" 8.8.8.8 1.1.1.1
2、恢复为 DHCP 分配的 DNS:sudo networksetup -setdnsservers "Wi-Fi" empty
3、查看当前生效的 DNS:networksetup -getdnsservers "Wi-Fi"
六、调整网络服务优先级顺序
当多个接口同时启用(如 Wi-Fi 与有线以太网),系统按服务顺序决定默认出口路由;修改顺序可确保外网走 Wi-Fi、内网走有线。
1、导出当前服务顺序列表:networksetup -listnetworkserviceorder
2、记录各服务对应的硬件端口标识(如 (Hardware Port: Wi-Fi, Device: en0))。
3、设定新顺序(将 Wi-Fi 置顶,Ethernet 紧随其后):sudo networksetup -ordernetworkservices "Wi-Fi" "Ethernet"










