要真正重置 macos 网络设置并清除所有已知 wi-fi 信息,需按顺序执行四步终端操作:一、清空所有已保存 wi-fi 配置;二、强制刷新 dns 与服务发现机制;三、重置网络接口与路由表;四、删除并重建核心网络配置文件。
要真正重置 macos 网络设置并清除所有已知 wi-fi 信息,不能只靠图形界面删服务或点“忽略网络”——那些操作不碰底层配置文件、不清 dns 缓存、也不重启关键网络服务。终端命令才是彻底清理的核心手段,需分步执行,顺序不能乱。
一、清空所有已保存的 Wi-Fi 配置
系统设置里删除 Wi-Fi 网络,有时会残留配置。用终端可精准、批量清除:
- 先查看当前保存的所有 Wi-Fi 名称:
/usr/sbin/networksetup -listallpreferredwirelessnetworks Wi-Fi - 逐个删除(把 [SSID] 替换为实际名称,含空格或特殊字符也要加英文引号):
/usr/sbin/networksetup -removepreferredwirelessnetwork Wi-Fi "[SSID]" - 想一步清空全部?直接运行:
sudo /usr/sbin/networksetup -removeallpreferredwirelessnetworks Wi-Fi
二、强制刷新 DNS 与服务发现机制
macOS 12 及之后版本中,dscacheutil -flushcache 已基本失效。真正起效的是重启 mDNSResponder:
- 重载 DNS 解析和 Bonjour 服务:
sudo killall -HUP mDNSResponder - 顺带再跑一次传统缓存清理(虽作用有限但无害):
sudo dscacheutil -flushcache - 若 AirDrop 或隔空播放异常,补上:
sudo killall -HUP mDNSResponderHelper
三、重置网络接口与路由表
仅开关 Wi-Fi 不会清 stale 路由、ARP 条目或内核 socket 状态。必须手动 down/up 接口并刷新路由:
- 查主接口名(通常为 en0 或 en1):
ifconfig | grep "^[a-z]" - 以 en0 为例,执行完整重载:
sudo ifconfig en0 down && sudo route -n flush && sudo ifconfig en0 up - Wi-Fi 用户额外启用无线硬件:
networksetup -setairportpower en0 on
四、删除核心网络配置文件并重建
/Library/Preferences/SystemConfiguration/ 下的 plist 是网络配置的唯一真相源。GUI 操作不会动它们,必须手动清理:
- 停掉网络配置守护进程:
sudo launchctl unload /System/Library/LaunchDaemons/com.apple.networking.systemconfiguration.plist - 备份并移走关键文件:
sudo mv /Library/Preferences/SystemConfiguration/{NetworkInterfaces,com.apple.airport.preferences,com.apple.network.identification,com.apple.wifi.message-tracer,preferences}.plist /tmp/ - 重启守护进程,触发系统自动生成新配置:
sudo launchctl load /System/Library/LaunchDaemons/com.apple.networking.systemconfiguration.plist
执行完这四步,Wi-Fi 密码、首选顺序、DNS 设置、路由状态、服务发现记录全部归零。重启后系统会像首次开机一样重新识别接口、生成配置、等待你手动连接网络。不复杂但容易忽略细节。











