close

 

 

linux tcpdump 用法

基本選項有:
.-n:以數字顯示,不對 IP 作反解,但仍顯示服務名稱。
.-nn:直接以 IP 及 port number 顯示,而非主機名與服務名稱。
.-p:不要以 promiscuous mode 執行。
.-t:不要顯示 timestamp。
.-i:指令要監控的網路介面,如 eth0、lo、any 等。
.-e:使用資料連接層 (OSI 第二層) 的 MAC 封包資料來顯示。
.-c:監聽的封包數,如果沒有這個參數,tcpdump 會持續不斷的監聽,直到使用者輸入 [ctrl]-c 為止。
.-q:僅列出較為簡短的封包資訊,每一行的內容比較精簡。
.-s:抓比較長的 data 做一筆記錄。
.-v:輸出一個稍微詳細的資訊,例如在 IP 封包中可以包括 ttl 和服務類型的資訊。
.-A:封包的內容以 ASCII 顯示,通常用來捉取 WWW 的網頁封包資料。
.-X:可以列出十六進位 (hex) 以及 ASCII 的封包內容,對於監聽封包內容很有用。
.-w:如果你要將監聽所得的封包資料儲存下來,用這個參數就對了!後面接檔名。
.-r:從後面接的檔案將封包資料讀出來。那個『檔案』是已經存在的檔案,並且這個『檔案』是由 -w 所製作出來的。

*按下 [ctrl]-c 之後結束tcpdump

範例

抓取eth0介面的封包並直接以IP 及 port number顯示
tcpdump -nn -i eth0

抓取eth0介面的TCP封包
tcpdump -i eth0 'tcp'

抓取eth0介面的封包,來源或目的IP是192.168.0.1
tcpdump -i eth0 'host 192.168.0.1'

抓取eth0介面的封包,限定來源IP為192.168.0.1
tcpdump -i eth0 'src host 192.168.0.1' 

抓取eth0介面的TCP封包,且來源或目的IP是192.168.0.1
tcpdump -i eth0 'tcp and host 192.168.0.1' 

抓取eth0介面的TCP22封包,且來源或目的IP是192.168.0.1
tcpdump -i eth0 'tcp port 22 and host 192.168.0.1' 

抓取eth0介面的TCP封包,但不包含TCP22封包,且來源或目的IP是192.168.0.0/24
tcpdump -i eth0 'tcp and (not port 22) and (net 192.168.0.0/24)'  


詳細用法參考網站
http://linux.vbird.org/linux_server/0140networkcommand.php#tcpdump
http://blog.xuite.net/jyoutw/xtech/23669726

 

 

arrow
arrow
    文章標籤
    linux tcpdump
    全站熱搜

    鵝 發表在 痞客邦 留言(0) 人氣()