Wireshark:把網路上流動的每一個封包看穿
摘要
最多人使用的協定分析器,能深入解析數千種協定、即時擷取封包,取得金鑰後可解密 TLS 與無線流量,還能分析語音通話。免費開源,三個桌面系統都有。
推薦- 軟體名稱
- Wireshark
- 版本
- 4.7.3
- 收費
- 免費
- 開源
- 開源
- 作業系統
- WindowsmacOSLinux
- 更新時間
- 2026-10-05 23:04
網路變慢了。說出原因。
某個東西變慢了,而誠實的答案是你不知道為什麼。可能是名稱解析在連線還沒開始之前就拖了太久;可能是路徑上有東西在丟封包,導致重傳;也可能是伺服器自己想了兩百毫秒才回應。沒有擷取封包的話,這三種情況從外面看起來一模一樣,而手上能用的工具只剩 ping 與猜測。
Wireshark 就是能把這個問題定案的工具,也是全世界最多人使用的協定分析器,由一個基金會而不是公司維護,以通用公共授權第二版免費開源。它每年被下載超過兩千萬次,在 Windows、macOS 與 Linux 上都能跑。它的前身誕生於 1998 年,算下來是二十八年不間斷的開發——長到網路上大多數奇怪的角落,都已經被某個人遇過並寫進解析器裡了。
核心能力是即時擷取介面上流過的每一個封包,然後沿著協定堆疊一層一層攤開欄位:乙太網路框架、IP 標頭、TCP 序號、HTTP 標頭。每一層都照它實際的樣子顯示,一個位元組一個位元組——這就是「知道某件事失敗了」與「知道它在哪裡失敗」之間的差別。
三千多種協定的解析器
程式內建超過三千種協定的解析器。常見的那幾個——TCP/IP、HTTP、DNS、TLS——只是起點,不是範圍。工業控制協定、VoIP、資料庫協定、無線協定全都涵蓋在內,這也是它會出現在離一般網頁除錯很遠的地方的原因。

擷取下來的封包裡任何一個欄位都能標亮,篩選引擎支援布林邏輯與正規表達式,於是真的要緊的那些封包可以用一行表達式挑出來,而不是一路滾動。這個組合,把一整片混亂的流量變成一條讀得下去的故事。
一個具體的例子說明為什麼它無法被別的工具取代。某個網站的 HTTPS 請求逾時。擷取結果裡,用戶端的招呼送出去了、伺服器的招呼也回來了,然後在憑證階段卡住。這個順序說明網路沒問題,是伺服器的憑證鏈設定有誤——這個結論,ping 與瀏覽器的開發者面板都到不了,因為它們看不到握手本身。
加密流量,有金鑰就打得開
只要有材料,加密協定是可以解開的:TLS、IPsec,以及 WPA 或 WPA2 下的無線流量。給它一組工作階段金鑰或預共享金鑰,加密的串流就會還原成明文的 HTTP、SQL 查詢,甚至遠端桌面操作——安全團隊就是這樣檢查加密流量裡有沒有不該出現的行為。VoIP 模組則能回放 SIP 與 RTP 串流,於是一通聽起來壞掉的電話,可以照它抵達時的樣子被聽見。
圖表,以及為不同工作準備的設定檔
視覺化分析是做在裡面的,不是外掛上去的:吞吐量隨時間的變化、TCP 流的形狀、擁塞視窗的改變、封包抵達時間的分布。再配合顏色規則與自訂設定檔,介面可以為不同性質的工作重新排列——追查延遲用的設定檔,跟閱讀應用層流量用的設定檔看起來完全兩回事,而切換它們只是一個選單項目,不是一次重新設定。
這不是你每天都會打開的工具。但當問題是「線上到底發生了什麼」,沒有別的東西能回答。以自由授權開源、由非營利基金會維護、二十八年的持續迭代——對於做網路維運、安全分析或後端開發的人來說,學會它是對自己最划算的投資之一。