且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

linux命令之tcpdump

更新时间:2022-10-02 21:05:03

【tcpdump】

1 抓指定的包

2 和wireshark功能一样

3 流量回放



【语法】

确保有tcpdump命令 来自包 tcpdump

tcpdump  选项  过滤条件



【常用选项】

-i  指定抓指定的网卡

-nn  不反解析 如 53号端开口翻译成为dns等,可以加快速度

-vv  能够打印出更多的详细信息

-c   指定抓取的数目,一旦到了数目,就会停止抓包

-e   将以太网头部信息打印出来,如mac地址



【深入选项

-l 指定缓冲模式为行模式,

    选项的作用就是将tcpdump的输出变为“行缓冲”方式,这样可以确保tcpdump遇到的内容一旦是换行符即将缓冲的内容输出到标准输出,以便于利用管道或重定向方式来进行后续处理。

众所周知,Linux/UNIX的标准I/O提供了全缓冲、行缓冲和无缓冲三种缓冲方式。标准错误是不带缓冲的,终端设备常为行缓冲,而其他情况默认都是全缓冲的。


-F  指定过滤表达式所在的文件(将过滤表示写入一个文件了)。 通常用不到,过滤表示一般还是直接写在命令行中

-w 将流量保存到文件中,但是是flowdata文件,二进制的不能直接打开看

-r 以flowdata形式读取flowdata文件,和mysqlbinlog命令工作方式类似



[常用过滤条件]


指定端口和主机

tcpdump -nn -i eth0 port 80  and host 192.168.100.13


抓取icmp协议 ping包

cpdump -nn -vv -i eth0 icmp


抓取指定网段的某端口连接

tcpdump -nn -i eth0 net 192.168.100 and port 22

tcpdump -nn -i eth0 net 192.168.100 and tcp port 22 

本文转自残剑博客51CTO博客,原文链接http://blog.51cto.com/cuidehua/1786294如需转载请自行联系原作者


cuizhiliang