# 找出是哪個 App 在使用你的 Mac 網路

> 活動監視器 統計的是每個行程啟動後的累計流量，當下佔滿頻寬的 App 會被藏起來，即時流量用 nettop，連線對象用 lsof。

Published: 2026-08-12 | Updated: 2026-08-16

有東西在用網路。你什麼都沒做，Wi-Fi 指示燈卻一直在動，用手機熱點一個下午就把額度燒光，或是每次坐下工作，視訊通話就開始卡。macOS 能回答這個問題，但工具散落各處，而且每個工具最顯眼的數字都是累計值而不是即時流量，於是大家常常抓錯程式。

**簡短答案：** 活動監視器的「網路」分頁會標出程式名稱，但欄位統計的是每個程式啟動後的累計流量。要看*此刻*在傳資料的是誰，用 `nettop`。要看某個程式連到哪些遠端主機，用 `lsof -i`。

## 活動監視器會標出程式名稱

打開活動監視器，選 **網路** 分頁。每個傳過資料的程式都會列出已傳送與已接收的位元組。

依這些欄位排序，就是大家抓錯程式的原因。它們是各程式啟動後一路累加的總量，所以從上次重新開機就一直跑的常駐程式，會排在此刻佔滿頻寬的 App 前面。依「已接收位元組」排序，幾乎一定把錯的東西排到最上面。

有兩列常讓人緊張，通常不必：

- **mDNSResponder** 負責整個系統的 DNS 與區域網路探索。Mac 開機好幾週後，它可能顯示數 GB。它只是其他程式解析名稱時的代理，不是自己在背景下載的 App。
- **kernel_task** 會出現，是因為網路工作會經過核心。同樣的誤判也發生在 CPU 上，見 [kernel_task CPU 占用過高](https://mole.fit/tw/blog/kernel-task-high-cpu-mac)。

視窗底部有每秒傳入與傳出的即時圖表。改動什麼時該盯的是這張圖，不是上面的欄位。

## `nettop` 顯示此刻誰在傳資料

`nettop` 才是能回答真正問題的工具。它隨 macOS 附帶，不必另外安裝。

```
nettop -P -L 1 -J bytes_in,bytes_out
```

```
,bytes_in,bytes_out,
syslogd.362,0,22701,
apsd.368,685304,414375,
mDNSResponder.480,4189609493,104188210,
```

`-P` 依程式彙總，而不是依連線，`-L 1` 只取一次樣本就結束，不會進入互動模式，`-J` 用來選欄位。拿掉 `-L` 以互動方式執行，畫面會就地重新整理，追查時該用這個模式。

要看增量而不是總量，隔幾秒取兩次樣本再比較。兩次之間多了數十 MB 的程式，才是該查的對象。總量很大、兩次樣本卻沒變的，只是閒置的歷史紀錄。

## `lsof -i` 顯示它連到哪裡

有了名稱之後，下一個問題通常是資料送到哪裡。

```
sudo lsof -i -n -P | grep ESTABLISHED
```

`-n` 略過反向 DNS，`-P` 略過連接埠名稱查詢，輸出會又快又直白。你會看到每個已開啟連線的程式、本機連接埠與遠端位址。不加 `sudo` 只能看到自己的程式，通常也夠用。

解析這些位址時要老實面對：屬於大型雲端業者的 IP 幾乎說明不了什麼，因為大半個網際網路都託管在那裡。把它當線索，不要當成指認。

## 常見原因

先別急著認定出事了，檢查那些本來就會在沒人要求時使用網路的東西。

| 原因 | 怎麼辨認 | 在哪裡控制 |
|---|---|---|
| iCloud 照片同步 | 匯入照片後持續上傳 | 照片 > 設定 > iCloud |
| iCloud 雲碟 | 大型檔案變更後出現活動 | 系統設定 > Apple 帳號 > iCloud |
| macOS 或 App Store 更新 | `softwareupdated`、`appstoreagent` | 系統設定 > 一般 > 軟體更新 |
| 第三方同步用戶端 | Dropbox、Google Drive、OneDrive 的輔助程式 | App 自己的偏好設定 |
| 備份軟體 | 按排程長時間穩定上傳 | 備份 App 本身 |
| 瀏覽器分頁 | 影片、卡住的上傳、自動播放的頁面 | Chrome 的工作管理員、Safari 的活動視窗 |

軟體更新值得特別提，因為它預設會在背景下載，完整的 macOS 安裝程式有好幾 GB。在計量連線上，常常就是這一個設定在搞鬼。

## macOS 不會告訴你的事

三個限制，因為不少熱門文章會略過：

- **沒有內建的各 App 頻寬歷史。** 活動監視器和 `nettop` 都只從程式啟動，或從你開始監看的那一刻起算。macOS 裡沒有一份事後能查的各 App 紀錄。
- **各程式的總量不是各 App 的總量。** 瀏覽器會把流量分散到多個轉譯程式，一個輔助常駐程式也可能同時承載好幾個 App 的流量。
- **經過 VPN 或系統延伸功能的流量，可能被算在延伸功能頭上**，而不是產生流量的那個 App。

宣稱能完整拆出各 App 歷史流量的工具，要嘛自己裝了網路過濾器，要嘛是在估算，相信那個數字之前，先弄清楚是哪一種。

## 一套可重複的檢查

1. 看活動監視器「網路」分頁底部的即時圖表，不要看欄位。
2. 隔幾秒取兩次 `nettop -P -L 1` 樣本，再比對差異。
3. 對流量增加的那個程式執行 `lsof -i -n -P`，看它連到哪裡。
4. 暫停嫌疑 App 或同步服務，確認圖表掉下來。
5. 如果什麼都沒掉，流量不是來自使用者 App；去查軟體更新和 iCloud。

第四步是大家會跳過的，也是辨認與猜測的分界。

## 監視工具適合放在哪

[Mole](https://mole.fit/) 把即時網路吞吐量放在選單列，跟 CPU、記憶體、溫度狀態排在一起，連線忙碌時當下就看得到，不必事後重建。它回報自己量得到的吞吐量，不會為了宣稱一份 macOS 根本沒有的各 App 歷史，去安裝網路過濾器。

## 常見問題

### 為什麼 mDNSResponder 用掉這麼多資料？

它為整個系統解析名稱並處理區域網路探索，所以許多其他程式的流量會算在它頭上。它自己並沒有在下載東西。

### 能看到某個 App 昨天用了多少資料嗎？

macOS 本身不行。沒有內建的各 App 歷史。提供這項功能的第三方工具會安裝網路延伸功能，自己觀察流量。

### 用熱點時怎麼找出誰在吃流量？

在系統設定 > Wi-Fi > 詳細資訊 為該網路開啟低資料用量模式，這會停掉包含自動更新下載在內的多項背景服務，剩下的再用上面的 `nettop` 比對法查。

### 網路活動偏高代表有惡意軟體嗎？

很少是第一個跡象，上面那些常見原因幾乎涵蓋所有情況。先把它們過一遍，再把穩定的背景流量當成可疑。

---

Canonical HTML page: https://mole.fit/tw/blog/what-app-is-using-my-network-mac
Blog index for agents: https://mole.fit/tw/blog/llms.txt
Site index for agents: https://mole.fit/llms.txt
