抓包

tcpdump命令:
1、指定接口(-i)
    tcpdump -i eth0
2、指定ip地址(host),能夠輔加and,or,!等邏輯符,以及src,dest等表示方向。
三次握手過程分析
    在主機A上開啓SSHD服務,此時不要有任何客戶端主機來鏈接主機A的SSHD服務,這樣是爲了抓包更清楚。
主機A執行:tcpdump port 22 -c 3 -n -S
#打印序列號 -S     Print absolute, rather than relative, TCP sequence numbers.
#port 端口號
-c 抓幾個包
-n 不解析端口號爲協議名

主機B執行:yum install telnet -y #安裝telnet
telnet 192.168.1.23 22 #鏈接主機A的22端口                             


[root@zq ~]# tcpdump -h
tcpdump version 4.1-PRE-CVS_2012_02_01
libpcap version 1.4.0
Usage: tcpdump [-aAdDefIKlLnNOpqRStuUvxX] [ -B size ] [ -c count ]
        [ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
        [ -i interface ] [ -M secret ] [ -r file ]
        [ -s snaplen ] [ -T type ] [ -w file ] [ -W filecount ]
        [ -y datalinktype ] [ -z command ] [ -Z user ]
        [ expression ]
eg:
[root@zq ~]# tcpdump port 22 -c 3 -n -S
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
21:18:05.554990 IP 192.168.1.100.61883 > 192.168.1.23.ssh: Flags [S], seq 919487421, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0
21:18:05.555081 IP 192.168.1.23.ssh > 192.168.1.100.61883: Flags [S.], seq 281122195, ack 919487422, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 6], length 0
21:18:05.555379 IP 192.168.1.100.61883 > 192.168.1.23.ssh: Flags [.], ack 281122196, win 256, length 0
3 packets captured
3 packets received by filter
0 packets dropped by kernel


tshark -w filename -i eth0 -q
-w    將抓包的數據寫入文件filename中
-i    指定要抓包的接口名稱
tshark -r filename
-r 指定要讀取的包文件
-V 將包儘量的解析(這個有時在包數量不少的狀況下能夠不使用,這樣它會給出一個很簡潔的報文解釋)
相關文章
相關標籤/搜索