博客 / 詳情

返回

tcpdump 常用命令

最後更新時間 2021-10-05.

Linux 的命令太多,tcpdump 是一個非常強大的抓包命令。

有時候想看線上發生的一些問題:

  • nginx 有沒有客户端連接過來……
  • 客户端連接過來的時候 Post 上來的數據對不對……
  • 我的 Redis 實例到底是哪些業務在使用……

tcpdump 作為網絡分析神器就派上用場了!

它本身的命令和參數有點多,我也簡單記錄下一些常用的操作。

網上的資料其實挺多(見文末),

但真的派上用場的,可能也就是我下面列出來的這幾個 :)

抓取 eth0 網卡的 80 端口:

tcpdump -nnA 'port 80' -i eth0

-A:以ASCII格式打印出所有分組,並將鏈路層的頭最小化
-nn:顯示IP地址和端口號

抓取發往 10.48.31.56 的數據包:

tcpdump -i eth0 dst host 10.48.31.56

指定網絡過濾:

tcpdump -i eth0 src net 10.48

指定協議過濾:

tcpdump -i eth0 tcp

表達式過濾:

tcpdump -i eth0 '((tcp) and (port 80) and ((dst host 10.48.31.56) or (dst host 10.48.31.58)))'

參考資料

  1. 《tcpdump使用技巧》
  2. 《肝了三天,萬字長文教你玩轉 tcpdump,從此抓包不用愁》
  3. 《tcpdump原理及常用命令》
  4. 《Linux系統 tcpdump 抓包命令使用教程》
  5. 《聊聊 tcpdump 與 Wireshark 抓包分析》

文章來源於本人博客,發佈於 2018-06-02,原文鏈接:https://imlht.com/archives/185/
user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.