在Linux中,如何使用 tcpdump 監聽主機為 192.168.1.1,tcp 端⼝為 80 的資料,並將將輸出結果儲存輸出到tcpdump.log?

黄嘉波發表於2024-06-23

在Linux中,要使用tcpdump監聽目標為主機IP為192.168.1.1,且TCP埠為80的資料包,並將輸出結果儲存到名為tcpdump.log的檔案中,可以按照以下步驟操作:

  1. 開啟終端:首先,你需要在具有足夠許可權的使用者賬戶下開啟一個終端視窗。通常,root許可權是必要的,因為普通使用者可能無法監聽網路介面的所有流量。

  2. 確定網路介面:使用ifconfig(在某些較新的系統上可能是ip addr)命令來檢視你的網路介面名稱。常見的介面名有eth0enp0s3ens33等。

  3. 執行tcpdump命令:接下來,執行以下tcpdump命令來捕獲資料。這裡假設你的網路介面名為eth0,請根據實際情況替換。

    sudo tcpdump -i eth0 host 192.168.1.1 and port 80 -w tcpdump.log
    
    • -i eth0:指定監聽的網路介面為eth0
    • host 192.168.1.1:指定要捕獲的資料包中源IP或目的IP為192.168.1.1。
    • and port 80:進一步限定,只有當資料包的目標埠或源埠為80(HTTP埠)時才捕獲。
    • -w tcpdump.log:將捕獲的資料包寫入到tcpdump.log檔案中,而不是輸出到終端。
  4. 停止tcpdump:一旦你完成了資料包的捕獲,可以按Ctrl+C來停止tcpdump的執行。

  5. 檢視捕獲的資料:捕獲完成後,你可以使用tcpdump -r tcpdump.log命令來讀取並分析儲存的資料包。

綜上所述,長時間執行tcpdump可能會產生大量的資料,因此確保你有足夠的磁碟空間來儲存tcpdump.log檔案。此外,出於隱私和法律考慮,在捕獲網路資料時應當遵守相關的法律法規,並確保你有權對所監控的網路流量進行分析。

相關文章