tcpdump

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

tcpdump
tcpdump console output
tcpdump 在終端里的輸出
開發者The Tcpdump team
當前版本
  • 4.99.4 (2023年4月7日;穩定版本)[1]
編輯維基數據鏈接
源代碼庫 編輯維基數據鏈接
操作系統Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Mac OS X, 其它類 *NIX 系統, Windows
類型封包式嗅探
許可協議BSD許可證
網站https://www.tcpdump.org/

tcpdump是一個運行在命令行下的數據包分析器。它允許用戶攔截和顯示發送或收到過網絡連接到該計算機的TCP/IP和其他數據包。tcpdump 是一個在BSD許可證下發布[2]自由軟件

tcpdump 適用於大多數的類Unix系統 操作系統:包括LinuxSolarisBSDMac OS XHP-UXAIX 等等。在這些系統中,tcpdump 需要使用libpcap這個捕捉數據的。其在Windows下的版本稱為WinDump;它需要WinPcap驅動,相當於在Linux平台下的libpcap.

歷史[編輯]

它最初由范·雅各布森Craig LeresSteven McCanne在1987年於勞倫斯伯克利國家實驗室擔任研究小組時寫成,當時,20世紀90年代末,有許多不同的操作系統,和無數的補丁,沒有很好地協調分布的tcpdump版本。於是Michael Richardson (mcr)Bill Fenner在1999年創建了www.tcpdump.org。

用途[編輯]

tcpdump能夠分析網絡行為,性能和應用產生或接收網絡流量。它支持針對網絡層、協議、主機、網絡或端口的過濾,並提供and、or、not等邏輯語句來幫助你去掉無用的信息,從而使用戶能夠進一步找出問題的根源。

也可以使用 tcpdump 的實現特定目的,例如在路由器網關之間攔截並顯示其他用戶或計算機通信。通過 tcpdump 分析非加密的流量,如TelnetHTTP的數據包,查看登錄的用戶名、密碼、網址、正在瀏覽的網站內容,或任何其他信息。因此系統中存在網絡分析工具主要不是對本機安全的威脅,而是對網絡上的其他計算機的安全存在威脅。[3]

有很多用戶喜歡使用柏克萊封包過濾器來限制 tcpdump 產生的數據包數量,這樣BPF會只把「感興趣」的封包到上層軟件,可以避免從操作系統 內核向用戶態複製其他封包,降低抓包的CPU的負擔以及所需的緩衝區空間,從而減少丟包率。

權限要求[編輯]

一些類Unix操作系統,用戶有必須擁有超級用戶權限方可使用 tcpdump,因為在這些系統需要使用超級用戶權限將網絡界面設置為混雜模式。然而,可以通過使用 -Z 選項在完成嗅探之後站即下降到一個特定的非特權用戶的權限。在某一些類Unix操作系統,數據包嗅探機制可以配置為允許非特權用戶可以使用它,如果做到這一點,就不需要超級用戶權限。

參考[編輯]

  • Packetsquare, 一個協議編輯器和回放工具
  • Tcptrace, 網絡通訊消息截取工具
  • EtherApe, 一個圖形化的網絡流量嗅探器
  • Ngrep, 一個在網絡通訊的數據包中匹配指定內容的工具
  • netsniff-ng, 一個自由、高性能的Linux下基於命令行的網絡包分析工具
  • Wireshark, 跨平台的圖形抓包軟件

引用[編輯]

  1. ^ tcpdump-4.99.4. 2023年4月7日 [2023年4月8日]. 
  2. ^ 在源代码里关于许可证的说明(GIT 软件仓库). [2012-03-20]. (原始內容存檔於2009-08-27). 
  3. ^ 网络数据采集分析工具. [2012-03-22]. (原始內容存檔於2012-05-01). 

外部連結[編輯]