tcpdump

tcpdump是一个功能强大的网络抓包工具,它被广泛用于捕获和分析网络流量。

tcpdump采用命令行方式,它的命令格式为:

tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ]

[ -i 网络接口 ] [ -r 文件名] [ -s snaplen ] [ -T 类型 ] [ -w 文件名 ] [表达式 ]

-a 将网络地址和广播地址转变成名字;

-d 将匹配信息包的代码以人们能够理解的汇编格式给出;

-dd 将匹配信息包的代码以c语言程序段的格式给出;

-ddd 将匹配信息包的代码以十进制的形式给出;

-e 在输出行打印出数据链路层的头部信息,包括源mac和目的mac,以及网络层的协议;

-f 将外部的Internet地址以数字的形式打印出来;

-l 使标准输出变为缓冲行形式;

-n 指定将每个监听到数据包中的域名转换成IP地址后显示,不把网络地址转换成名字;

-nn 指定将每个监听到的数据包中的域名转换成IP、端口从应用名称转换成端口号后显示

-t 在输出的每一行不打印时间戳;

-v 输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息;

-vv 输出详细的报文信息;

-c Count 在收到指定的包的数目后,tcpdump就会停止;

-F 从指定的文件中读取表达式,忽略其它的表达式;

-i interface 指定监听的网络接口;

-p 将网卡设置为非混杂模式,不能与host或broadcast一起使用;

-r 从指定的文件中读取包(这些包一般通过-w选项产生);

-w 直接将包写入文件中,并不分析和打印出来;

-s snaplen snaplen表示从一个包中截取的字节数。0表示包不截断,抓完整的数据包。默认的话 tcpdump 只显示部分数据包,默认68字节;

-T 将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单网络管理协议);

-X 需要把协议头和包内容都显示出来(tcpdump会以16进制和ASCII的形式显示),便于协议分析;

host 只捕获与指定主机通信的数据包;

port 只捕获指定端口的数据包。例如,port 80表示只捕获80端口的数据包;

src 和 dst 只捕获源或目标地址为指定地址的数据包;

and, or, 和 no用于组合多个条件,以过滤数据包;

tcpdump --i eth0 'port 1111' -X -c 3

相关推荐
狼头长啸李树身4 分钟前
眼儿媚·秋雨绵绵窗暗暗
大数据·网络·服务发现·媒体
SizeTheMoment1 小时前
初识HTTP协议
网络·网络协议·http
哲伦贼稳妥2 小时前
一天认识一个硬件之机房地板
运维·网络·经验分享·其他
99乘法口诀万物皆可变2 小时前
CANoe_TestModule截图功能TestReportAddWindowCapture
测试工具
hgdlip3 小时前
如何快速切换电脑的ip地址
网络·tcp/ip·电脑
程序员-珍5 小时前
虚拟机ip突然看不了了
linux·网络·网络协议·tcp/ip·centos
4647的码农历程5 小时前
Linux网络编程 -- 网络基础
linux·运维·网络
向李神看齐5 小时前
RTSP协议讲解
网络
Death2005 小时前
使用Qt进行TCP和UDP网络编程
网络·c++·qt·tcp/ip
魏大橙6 小时前
linux RCE本地/公网测试
网络·网络协议·udp