• TCPdump指定时间或者指定大小进行循环抓取报文


    背景:我们用tcpdump工具循环抓取网卡上的报文,我们会遇到如下情况:

    1. 抓取报文后隔指定的时间保存一次;

    2. 抓取报文后达到指定的大小保存一次;

    本文就这两种情况给出tcpdump的使用方法

     tcpdump -x udp port 6789 -i em2 -nn--------------------------------------->可输出从em2 网卡上的详细的数据包

     -nn--------------------------------------> 可输出相应源IP地址到目的IP地址详细信息

    tcpdump -X udp port 6789  -nn--------------------------------------------->可输出从端口6789的详细数据包,

    1. 抓取报文后隔指定的时间保存一次:

    tcpdump -i eth3 -s0 -G 60 -Z root -w %Y_%m%d_%H%M_%S.pcap

    这里解释下-G选项 后面接时间 单位为秒 本例中的时间为60

     

     

    2. 抓取报文后达到指定的大小保存一次;

    tcpdump -i eth3 -s0 -C 1 -Z root -w jiangsuyinhang.pcap

    setsid tcpdump udp port 6789 -s0 -C 1 -Z root -w udp_port_listener.pcap &==========>>>>>后台启动监听端口6789-->udp数据包

    -i 指定网卡名称

    这里的-s0 表示每个报文的大小是接收到的指定大小,如果没有这个选项,则超过比如1500字节的报文,就会被切除1500字节以外的部分

    -C(小写) 表示每当文件达到指定大小时进行重新保存一个新文件,单位是MB

    -Z(小写) 表示下面的新文件也是用root权限来执行的,如果用-c时必须配合-Z(大写z.

    -w(小写) 后面跟具体的文件名称

    注意:这个命令行保存下来的文件名是jiangsuyinhang.pcap jiangsuyinhang.pcap0 jiangsuyinhang.pcap1……jiangsuyinhang.pcapN

    截图如下:

     

  • 相关阅读:
    PL/SQL:these query result are not updateable,include the ROWID to get updateab -----for update
    JDBC ORACLE
    ORACLE 分页 java 用jdbc方式以 sys账号连接oracle数据的问题
    浅析Linux DeviceTree
    linux驱动开发—基于Device tree机制的驱动编写
    高通9X07模块QMI架构使用入门
    man iptables 8
    man iptables(8)
    使用fakeroot模拟root权限执行程序(转)
    linux system()函数详解
  • 原文地址:https://www.cnblogs.com/dpf-learn/p/7686113.html
Copyright © 2020-2023  润新知