Tcmdump使用说明
主要用于Linux系统进行抓包,保存为cap文件,然后使用wireshark等工具打开文件查看报文信息,可以进行相关统计分析。
tcpdump的安装方法
1)、rpm包的形式安装:
#rpm -ivh tcpdump-3_4a5.rpm
这样tcpdump就顺利地安装到你的linux系统中
2)、源程序的安装:
第一步取得源程序 在源程序的安装方式中,我们首先要取得tcpdump的源程序分发包,这种分发包有两种形式,一种是
tar压缩包(tcpdump-3_4a5.tar.Z),另一种是rpm的分发包(tcpdump-3_4a5.src.rpm)。这两种形式的内容都是一样的,不
同的仅仅是压缩的方式.tar的压缩包可以使用如下命令解开:
#tar xvfz tcpdump-3_4a5.tar.Z
rpm的包可以使用如下命令安装:
#rpm -ivh tcpdump-3_4a5.src.rpm
这样就把tcpdump的源代码解压到/usr/src/redhat/SOURCES目录下.
第二步做好编译源程序前的准备活动
在编译源程序之前,最好已经确定库文件libpcap已经安装完毕,这个库文件是tcpdump软件所需的库文件。同样,你同
时还要有一个标准的c语言编译器。在linux下标准的c 语言编译器一般是gcc。在tcpdump的源程序目录中。有一个文件是
Makefile.in,configure命令就是从Makefile.in文件中自动产生Makefile文件。在Makefile.in文件中,可以根据系统的配
置来修改BINDEST 和 MANDEST 这两个宏定义,缺省值是
BINDEST = @sbindir@
MANDEST = @mandir@
第一个宏值表明安装tcpdump的二进制文件的路径名,第二个表明tcpdump的man 帮助页的路径名,你可以修改它们来满足
系统的需求。
第三步编译源程序
使用源程序目录中的configure脚本,它从系统中读出各种所需的属性。并且根据Makefile.in文件自动生成Makefile文件,
以便编译使用.make命令则根据Makefile文件中的规则编译tcpdump的源程序。使用make install命令安装编译好的tcpdump
的二进制文件。
总结一下就是:
# tar xvfz tcpdump-3_4a5.tar.Z
# vi Makefile.in
# . /configure
# make
# make install
tcmdump常用实例
tcpdump 的抓包保存到文件的命令参数是-w xxx.cap
抓eth1的包
tcpdump-i eth1 -w /tmp/xxx.cap
抓 192.168.1.123的包
tcpdump-i eth1 host 192.168.1.123 -w /tmp/xxx.cap
抓192.168.1.123的80端口的包
tcpdump-i eth1 host 192.168.1.123 and port 80 -w /tmp/xxx.cap
抓192.168.1.123的icmp的包
tcpdump-i eth1 host 192.168.1.123 and icmp -w /tmp/xxx.cap
抓192.168.1.123的80端口和110和25以外的其他端口的包
tcpdump-i eth1 host 192.168.1.123 and ! port 80 and ! port 25 and ! port 110 -w/tmp/xxx.cap
抓vlan 1的包
tcpdump-i eth1 port 80 and vlan 1 -w /tmp/xxx.cap
抓pppoe的密码
tcpdump-i eth1 pppoes -w /tmp/xxx.cap
以100m大小分割保存文件, 超过100m另开一个文件 -C100m
抓10000个包后退出 -c10000
后台抓包, 控制台退出也不会影响:
nohuptcpdump -i eth1 port 110 -w /tmp/xxx.cap &
抓下来的文件可以直接wireshark打开查看