networksetup:macOS上的终端网络配置管理工具

networksetup:macOS上的终端网络配置管理工具

什么是 networksetup

networksetup 是macOS自带的,作为 macOS 操作系统的一部分提供给用户的网络配置管理工具, 用户能在终端通过 networksetup 。管理网络设置和配置。 它提供了用于配置网络首选项、接口、代理、DNS 设置等的各种功能。

基本使用

1
networksetup -help
1
2
3
4
5
6
7
# 显示服务列表 星号 (*) 表示网络服务已禁用
networksetup -listallnetworkservices
# 例如
An asterisk (*) denotes that a network service is disabled.
USB 10/100/1000 LAN
Wi-Fi
Thunderbolt Bridge
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 显示具有相应设备名称和以太网地址的硬件端口列表
networksetup -listallhardwareports
# 例如
Hardware Port: Thunderbolt Bridge
Device: bridge0
Ethernet Address: ********

Hardware Port: Wi-Fi
Device: en0
Ethernet Address: ********

Hardware Port: Thunderbolt 1
Device: en1
Ethernet Address: ********

Hardware Port: Thunderbolt 2
Device: en2
Ethernet Address: ********
1
2
3
4
5
6
7
8
9
10
11
12
# 开启或关闭 <device name> 的Wi-Fi
networksetup -setairportpower <device name> <on off>
# 查询 <device name> Wi-Fi的开启状态
networksetup -getairportpower <device name>

# 将 <device name> 的 Wi-Fi 网络设置为 <nwtwork>.
# 是否包含密码可选,如果包含,将存储在钥匙串中
networksetup -setairportnetwork <device name> <network> [password]
# 例如 Wi-Fi的设备为en0, 网络名称为ZJUWLAN-Secure, 密码为000000
# networksetup -setairportnetwork en0 ZJUWLAN-Secure 000000
# 查询 <device name> Wi-Fi连接
networksetup -getairportnetwork <device name>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 使用 <domain>(即address) 和 <port number> 设置 <networkservice> 的 http 代理。
#(可选)为 <authenticated> 指定 <on> 或 <off> 以启用和禁用经过身份验证的代理支持。
# 如果打开经过身份验证的代理支持,请指定 <用户名> 和 <密码>。
networksetup -setwebproxy <networkservice> <domain> <port number> <authenticated> <username> <password>
# 例如 networksetup -setwebproxy Wi-Fi 127.0.0.1 20172
# 设置 https 代理,可以用
networksetup -setsecurewebproxy <networkservice> <domain> <port number> <authenticated> <username> <password>

# 将 <networkservice> 的绕过域名服务器设置为 <domain1> [domain2] [...]
# 可以指定任意数量的域名服务器 为 <domain1> 指定“Empty”以清除所有域名条目。
networksetup -setproxybypassdomains <networkservice> <domain1> [domain2] [...]
# 例如 networksetup -setproxybypassdomains Wi-Fi "*.local" "*.cn" 169.254/16

# 开启或关闭代理
networksetup -setwebproxystate <networkservice> <on off>
networksetup -setsecurewebproxystate <networkservice> <on off>

networksetup:macOS上的终端网络配置管理工具
https://blog.iks-ran.com/2023/08/10/networksetup/
Author
iks-ran
Posted on
August 10, 2023
Licensed under