您的位置:首页 > 理论基础 > 计算机网络

Linux系统命令之tcpdump

2015-04-17 16:56 218 查看
tcpdump 转储网络接口的数据包信息,并将这些数据包信息打印出来提供给用户查看。

如果不指定任何参数时,默认会转储第一个网口的数据包信息。
tcpdump
监视指定网口的数据包
tcpdump -i eth0
监视指定主机的数据包
tcpdump host "hostname"
也可以指定ip来获取该ip的收发数据包信息
tcpdump host 10.28.8.1
输出主机A与主机B或C间的IP数据包信息(也可以指定IP地址)
tcpdump ip host A and \( B or C \)
tcpdump ip host 10.28.8.1 and 10.28.8.2
输出除主机A以任何与B主机通讯的IP包数据

tcpdump ip host B and not A
输出主机发送的所有数据包
tcpdump -i eth0 src host "hostname"
输出主机接收到的所有数据包
tcpdump -i eth0 dst host "hostname"
监视指定主机和端口的数据包
tcpdump tcp port 22 and host 10.28.8.1
对本机的udp 22 端口进行监视(22为ssh的服务端口)
tcpdump udp port 22
监视指定的网络数据包
输出所有通过网关snup的ftp数据包(用单引号防止shell对括号错误解释)
tcpdump 'gateway snup and (port ftp or ftp-data)'
输出源地址和目标地址皆非本地主机的数据包
tcpdump ip and not net localnet
监视指定的协议数据包
输出TCP会话中的的开始和结束数据包, 并且数据包的源或目的不是本地网络上的主机。
tcpdump 'tcp[tcpflags] & (tcp-syn|tcp-fin) != 0 and not src and dst net localnet'
输出所有源或目的端口是80, 网络层协议为IPv4, 并且含有数据,而不是SYN,FIN以及ACK-only等不含数据的数据包。
tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
(ip[2:2]表示整个ip数据包的长度,
(ip[0]&0xf)<<2)表示ip数据包包头的长度(ip[0]&0xf代表包中的IHL域, 而此域的单位为32bit,
要换算
成字节数需要乘以4, 即左移2. (tcp[12]&0xf0)>>4 表示tcp头的长度, 此域的单位也是32bit, 换算成比特数为
((tcp[12]&0xf0) >> 4) << 2, 

((tcp[12]&0xf0)>>2). ((ip[2:2] - ((ip[0]&0xf)<<2)) -
((tcp[12]&0xf0)>>2)) != 0 表示: 整个ip数据包的长度减去ip头的长度,再减去
tcp头的长度不为0,
这就意味着, ip数据包中确实是有数据.对于ipv6版本只需考虑ipv6头中的'Payload

Length' 与 'tcp头的长度'的差值,
并且其中表达方式'ip[]'需换成'ip6[]'.)
打印长度超过576字节, 并且网关地址是snup的IP数据包
tcpdump 'gateway snup and ip[2:2] > 576'
打印所有IP层广播或多播的数据包, 但不是物理以太网层的广播或多播数据报
tcpdump 'ether[0] & 1 = 0 and ip[16] >= 224'
打印除'echo request'或者'echo reply'类型以外的ICMP数据包( 比如,需要打印所有非ping 程序产生的数据包时可用到此表达式
.
(nt: 'echo reuqest' 与 'echo reply' 这两种类型的ICMP数据包通常由ping程序产生))
tcpdump 'icmp[icmptype] != icmp-echo and icmp[icmptype] != icmp-echoreply'
使用tcpdump抓取HTTP包
tcpdump  -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854
0x4745 为"GET"前两个字母"GE",0x4854 为"HTTP"前两个字母"HT"。

参照:
http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: