ubuntu預設是安裝好了tcpdump工具的,如果沒有安裝的話使用sudo apt-get install tcpdump即可安裝。
(如果遇到tcpdump: no suitable device found的問題,檢查一下是不是在用root許可權執行tcpdump,tcpdump只能在root許可權下工作)
安裝好tcpdump之後,執行tcpdump:
1. tcpdump -d 獲取網路介面卡列表,以下是在ubuntu上獲取到的結果:
root@holmesian-laptop:~# tcpdump -d
1.eth0
2.wlan0
3.usbmon1 (usb bus number 1)
4.usbmon2 (usb bus number 2)
5.usbmon3 (usb bus number 3)
6.usbmon4 (usb bus number 4)
7.usbmon5 (usb bus number 5)
8.any (pseudo-device that captures on all inte***ces)
9.lo
2. tcpdump -i 《需要監控的網路介面卡編號》,例如我想監控我的無線網絡卡wlan0,則使用tcpdump -i 2。
root@holmesian-laptop:~# tcpdump -i 2
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on wlan0, link-type en10mb (ethernet), capture size 96 bytes
21:24:14.578430 00:24:f9:05:78:00 (oui unknown) unknown ssap 0x78 > 00:1f:3a:18:fa:06 (oui unknown) unknown dsap 0xd8 information, send seq 0, rcv seq 16, flags [command], length 70
21:24:14.578447 00:24:f9:05:78:00 (oui unknown) unknown ssap 0x78 > 00:1f:3a:18:fa:06 (oui unknown) unknown dsap 0xd8 information, send seq 0, rcv seq 16, flags [command], length 223
21:24:14.995603 00:24:f9:05:78:00 (oui unknown) unknown ssap 0x20 > 78:dd:08:d1:b2:ca (oui unknown) unknown dsap 0x76 information, send seq 0, rcv seq 16, flags [command], length 70
21:24:15.019811 00:24:f9:05:78:00 (oui unknown) unknown ssap 0xa6 > 2c:81:58:ec:9c:54 (oui unknown) unknown dsap 0x0a information, send seq 0, rcv seq 16, flags [command], length 72
如果不使用-i來定義監控介面卡的話,預設使用列表中的第乙個;
tcpdump -i 2 host 172.16.86.111 and tcp port 443
4. 如果想要顯示資料報的內容,需要使用-x引數,如,我想要顯示捕獲的https資料報http header的內容:
tcpdump -x -i 2 host 172.16.86.111 and tcp port 443
顯示結果如下:
.c可以看到該結果只顯示了https頭的一部分,沒有顯示全,是因為tcpdump預設將顯示的資料長度截斷了,可以使用-s後面加資料長度,來設定資料顯示長度:
tcpdump -x -s 0 -i 2 host 172.16.86.111 and tcp port 443
以上的例子中,-s 0 表示自動設定長度使其能夠顯示所有資料。
5. 捕獲的資料太多,不斷刷屏,可能需要將資料內容記錄到檔案裡,需要使用-w引數:
tcpdump -x -s 0 -w aaa host 192.9.200.59 and tcp port 8000
則將之前顯示在螢幕中的內容,寫入tcpdump可執行檔案同級目錄下的aaa檔案中。
檔案檢視方式如下,需要使用-r引數:
tcpdump -x -s 0 -i 2 -r holmesian host 172.16.86.111 and tcp port 443
如果這樣寫:
tcpdump -r holmesian
則只能看到最簡單的資料傳輸互動過程,看不到資料報內容,檢視時也需要使用相應的引數。
6.總結
總結一下,tcpdump的引數分兩個部分,選項(options)和表示式(expression):
root@holmesian-laptop:~# tcpdump -h
tcpdump version 4.0.0
libpcap version 1.0.0
usage: tcpdump [-aaddefikllnnopqrstuuvxx] [ -b size ] [ -c count ]
[ -c file_size ] [ -e algo:secret ] [ -f file ] [ -g seconds ]
[ -i inte***ce ] [ -m secret ] [ -r file ]
[ -s snaplen ] [ -t type ] [ -w file ] [ -w filecount ]
[ -y datalinktype ] [ -z command ] [ -z user ]
[ expression ]
linux下TCPDUMP抓包工具
非圖形化介面的時候,只能用命令列下面的 一般來說是安裝好了的 直接在shell介面下輸入tcpdump 每一行顯示的都是乙個資料報 預設情況下不儲存資料只顯示 tcpdump c 10 只抓取10個資料報 tcpdump c 10 w linux cap.log w為寫入linux cap.log,...
linux抓報 linux下抓包工具
13 列出所有的網路連線 lsof i 14.列出所有tcp 網路連線資訊 lsof i tcp 15.列出所有udp網路連線資訊 lsof i udp 16.列出誰在使用某個埠 lsof i 3306 17.列出誰在使用某個特定的udp埠 lsof i udp 55 特定的tcp埠 lsof i ...
linux下的抓包工具tcpdump
由netstat檢視網路情況,引出的tcp建立連線 終止連線過程,以及tcp狀態分析 2.soap xml http引出的http協議分析 3.soap object access protocol 簡單物件訪問協議分析及應用 4.番外一 awk的使用 5.番外二 linux 下抓包工具 篇四 這篇...