一、说明
在分析了wireshark使用方法后,其表达式书写基本没什么问题,但在linux上使用的更多是tcpdump。
tcpdump自大学就开始在用了,但一直没搞懂其表达式的书写规律,基本每次使用都得查、每次用后都会忘。
二、安装
三、使用
tcpdump命令用法如下,可概括为”tcpdump + 选项 + 表达式”;表达式用于指示过滤哪些数据包,选项用于指示如何处理表达式过滤出来的这些数据包。
选项也没什么说的,看上边的写法也大概能猜出选项的意思,如果不能那就”man tcpdump”看一下具体的意思。提一下最常用的三个参数
-A—-以可打印字符形式打印包的所有内容。在想查看应用层(如http)内容这个选项很有用。
-i—-用于指定要捕获数据包的网卡。如eth1。
-r—-可以从指定的文件中读入数据包。
-w—-将捕获的数据包存入到文件。一般保存成.pcap方便使用wireshark打开。
tcpdump使用pcap-filter语法,详情可以查看”man pcap-filter”,下边是对man手册的一些总结。当然另外还要说明,tcpdump有一些高级的用法,不一定都符合下边的规律。
与wireshark表达式相较而言,虽然tcpdump也不叫难,但总体还是wireshark表达式更简单明了一些。
一条基本的表达式写法如下:
proto—-protocol,流量协议。可以为ether(数据链路层), ip, ip6, arp, rarp, decnet, tcp 及 udp。另外也可以是fddi, tr, wlan但这三个都是数据链路层在不同数据链路层协议的叫法,与ether相互之间等价。tcpdump不支持应用层协议,只能借助端口实现某种应用层协议的过滤。
dir—-direction,流量方向。可以为src, dst, src or dst 及 src and dst。另外也可以是ra, ta, addr1, addr2, addr3 及 addr4但这几个只适用于wlan数据链路层。
type—-过滤项的值的类型。可以为host(ip或可解析的域名/主机名), net(网段) , port(端口或/etc/services可解析的服务) 及 portrange(端口范围)。
非—-!或not。最高优先级。
与—-&&或and。次优先级。
或—-||或or。最低优先级。
改变运算优先级—-大括号。
Original: https://www.cnblogs.com/lsdb/p/13950477.html
Author: 诸子流
Title: tcpdump使用教程
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/552590/
转载文章受原作者版权保护。转载请注明原作者出处!