Wireshark(前称Ethereal)是一个网络数据包分析软件。网络数据包分析软件的功能是截取网络数据包,并尽可能显示出最为详细的网络数据包数据。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。可以直接双击打开tcpdump保存的.pcap文件
常用功能键,以及IO图功能,见下图:
抓包设置和预设过滤条件等,见下图:
过滤条件表达式设置,当然也可以不通过Expression选项直接在左边文本框输入,如下图:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# tcpdump:linux抓包工具。需要root权限执行。 # 常用参数选项 -A 以ASCII格式打印出所有分组,并将链路层的头最小化(抓取web或sql信息时建议加上) -s 设置读取包的长度(默认为68) 如:-s 200 -i 指定监听的网络接口 -e 在输出行打印出数据链路层的头部信息 -t 在输出的每一行不打印时间戳 -v 输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息 -vv 输出详细的报文信息 -w 直接将包写入文件中,并不分析和打印出来 -r 从指定的文件中读取包(这些包一般通过-w选项产生) -q quiect output,尽量少的打印一些信息 -tttt 显示详细的日期信息 # 常用关键字 src、dst为传输方向关键字 [src|dst] host 192.168.22.228 # 指明 192.168.22.228 是一台主机(可选择指定只抓取目标主机或只抓取来源主机) [src or dst] net 192.168.22.228 # 指明 192.168.22.228 是一个网络地址(默认为目标地址或来源地址都抓取) port 80 # 指明端口是80 # 协议关键字 如:tcp udp ip arp等 # 逻辑关键字 如:and or not等 # 其它关键字 如:gateway broadcast less greater等 # 保存到.pcap文件中(.pcap后缀方便使用wireshark分析) tcpdump -i any -w test.pcap port 80 # tcp打印任意端口为80并且包长度大于100的 tcpdump -i any -tttt port 80 and greater 100 # 11:18:58.628467 628467是微妙数 # localhost.46356 46356是客户端的一个随机端口 # Flags [S] Flags [S.] Flags [.] tcp三次握手 S(SYN同步请求) S.(ACK确认并附带一个同步请求) .(ACK确认) # P表示push,数据推送 # F表示这是个FIN包,连接关闭 # R表示这是个RST包,与F包相同,但RST表示连接关闭时,仍然有数据未被处理,可以理解为强制切断连接 [root@BestLove ~]# tcpdump -i any tcp port 9501 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on any, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes 11:18:58.628467 IP localhost.46356 > localhost.9501: Flags [S], seq 3755854020, win 32792, options [mss 16396,sackOK,TS val 150268897 ecr 0,nop,wscale 6], length 0 11:18:58.628467 IP localhost.9501 > localhost.46356: Flags [S.], seq 2825523425, ack 3755854021, win 32768, options [mss 16396,sackOK,TS val 150268898 ecr 150268897,nop,wscale 6], length 0 11:18:58.628467 IP localhost.46356 > localhost.9501: Flags [.], ack 1, win 513, options [nop,nop,TS val 150268898 ecr 150268898], length 0 11:19:02.739454 IP localhost.46356 > localhost.9501: Flags [P.], seq 1:13, ack 1, win 513, options [nop,nop,TS val 150273009 ecr 150268898], length 12 11:19:02.739465 IP localhost.9501 > localhost.46356: Flags [.], ack 13, win 512, options [nop,nop,TS val 150273009 ecr 150273009], length 0 11:19:02.739664 IP localhost.9501 > localhost.46356: Flags [P.], seq 1:21, ack 13, win 512, options [nop,nop,TS val 150273009 ecr 150273009], length 20 11:19:02.739669 IP localhost.46356 > localhost.9501: Flags [.], ack 21, win 513, options [nop,nop,TS val 150273009 ecr 150273009], length 0 11:19:02.739679 IP localhost.9501 > localhost.46356: Flags [F.], seq 21, ack 13, win 512, options [nop,nop,TS val 150273009 ecr 150273009], length 0 11:19:02.739723 IP localhost.46356 > localhost.9501: Flags [F.], seq 13, ack 22, win 513, options [nop,nop,TS val 150273009 ecr 150273009], length 0 11:19:02.739730 IP localhost.9501 > localhost.46356: Flags [.], ack 14, win 512, options [nop,nop,TS val 150273009 ecr 150273009], length 0 |