在Linux中,如何實時抓取並顯示當前系統中tcp 80 埠的網路資料資訊?

黄嘉波發表於2024-06-23

在Linux中,實時抓取並顯示當前系統中TCP 80埠的網路資料資訊,可以使用tcpdump這個強大的命令列工具。以下是詳細的步驟和命令:

  1. 開啟終端:首先,開啟一個具有足夠許可權的終端視窗。通常,需要使用sudo或以root身份執行tcpdump,因為它需要訪問底層網路介面。

  2. 確定網路介面:使用ifconfig(在某些新系統上可能是ip addr)命令列出網路介面,確定你要監聽的網路介面名稱,如eth0enp0s3等。

  3. 執行tcpdump命令:接下來,執行以下tcpdump命令來實時捕獲並顯示所有流向或來自TCP 80埠的資料包。這裡以監聽所有網路介面上的資料為例,如果你已知具體的網路介面,可以將其替換掉any

    sudo tcpdump -i any 'tcp port 80'
    
    • -i any:監聽所有網路介面。如果你想監聽特定介面,比如eth0,則應改為-i eth0
    • 'tcp port 80':這是一個過濾表示式,指明只捕獲TCP協議且埠為80的資料包。
  4. 檢視實時資料:執行上述命令後,tcpdump會立即開始工作並在終端實時顯示匹配條件的網路資料包資訊。這包括源IP、目的IP、埠號、TCP標誌位以及其他網路層和傳輸層頭部資訊。

  5. 停止抓取:要停止抓取,只需按Ctrl+C中斷tcpdump程序。

注意事項

  • 實時抓包會顯示大量資訊,特別是對於繁忙的Web伺服器,因此可能需要結合管道和lessgrep等命令進一步篩選和檢視資料。
  • 如果你希望儲存抓取的資料而不是直接顯示,可以使用-w選項指定一個檔案來儲存資料包,如-w http_traffic.pcap
  • 對於生產環境,謹慎使用tcpdump,因為它可能會記錄敏感資訊,且大量抓包可能影響網路效能。

綜上所述,透過上述步驟,你就可以實時監控並分析Linux系統中透過TCP 80埠的網路資料互動情況了。

相關文章