tcpdump抓包

tcpdump是一个抓包工具,学名 嗅探器(sniffer)通过网卡的混杂模式来实现获取网络中信息包。

tcpdump可以直接在http://www.tcpdump.org/下载源码进行编译使用。
解压源码后,./configure 然后make下就行了。

本人不喜欢将软件装到系统下,so 直接在编译目录下 ./tcpdump就行了。

tcpdump选项

-i选项
     指定监听网卡
-nn选项
     显示端口号,不显示协议名
-X选项
    协议头和包内容都原原本本的显示出来(16进制和ASICC)
-c选项
    抓包个数
'port 53'
    指定端口号
-e选项
    输出以太网帧头部
-l选项
    缓存式输出
-t选项
    不输出时间戳
-v选项
    原有基础上输出 tos值、ttl值、ID值、总长度、校验值
-F选项
    指定过滤文件过滤
-w选项
    将流量保存到文件中
-r选项
    从文件中读取流量文件

命令实例

抓指定端口包

sh-3.2# tcpdump -i en0 -nn -X -c 1 'port 8080'

抓udp、目的(源)地址的包

sh-3.2# ./tcpdump -i en0 -X 'dst host 219.243.0.161'

其中dst(目的)还支持src、host还支持 net(指定网段,)、portrange(80-1000)

抓和主机通讯的包

sh-3.2# ./tcpdump -i en0 host www.bdxing.cn

抓取一个host和另一个host通讯的包(暂时不知道咋用)

sh-3.2# ./tcpdump -i en0 host 'www.bdxing.cn and (www.baidu.com or www.tute.edu.cn)'

获得三次握手包

sh-3.2# ./tcpdump 'tcp[tcpflags] & tcp-syn !=0 and host www.bdxing.cn'

抓取包长超过567字节的包

tcpdump 'ip[2:2] > 576'

打印广播包或多播包,同时数据链路层不是通过以太网媒介进行的

sh-3.2# tcpdump 'ether[0] & 1 = 0 and ip[16] >= 224'

抓取数据,wireshark显示

./tcpdump tcp -i en0 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap

版权声明:本文为博主原创文章,未经博主允许不得转载。

你可能感兴趣的:(工具)