• tcpdump工具使用


    一.简单介绍

    tcpdump命令是一款sniffer工具,它可以打印所有经过网络接口的数据包的头信息,也可以使用-w选项将数据包保存到文件中,方便以后分析。

    二.使用语法

    语法:

    tcpdump (选项参数)
    

    抓包选项:

    -c <数据包数目>:    指定要抓取的包数量
    -i <网卡接口>:    指定tcpdump需要监听的接口,默认会抓取第一个网络接口;
    -n:    对地址以数字方式显示,否则显示为主机名,也就是说-n选项不做主机名解析;
    -nn:   除了-n的作用外,还把端口显示为数值,否则显示端口服务名;
    -P:    指定要抓取的包是流入还是流出的包,可以给定的值为"in"、"out"和"inout",默认为"inout";
    -s <数据包长度>:    设置tcpdump的数据包抓取长度为len,如果不设置默认为65535字节。对于要抓取的数据包较大时,长度设置不够可能会产生包截断。
    

    输出选项:

    -e:    输出的每行中都将包括数据链路层头部信息,例如源MAC和目标MAC。
    -q:    快速打印输出。即打印很少的协议相关信息,从而输出行都比较简短。
    -X:    输出包的头部数据,会以16进制和ASCII两种方式同时输出。
    -XX:   输出包的头部数据,会以16进制和ASCII两种方式同时输出,更详细。
    -v:    当分析和打印的时候,产生详细的输出。
    -vv:   产生比-v更详细的输出。
    -vvv:  产生比-vv更详细的输出
    

    其它功能选项:

    -D:    列出可用于抓包的接口,将会列出接口的数值编号和接口名,它们都可以用于"-i"后。
    -F:    从文件中读取抓包的表达式,若使用该选项,则命令行中给定的其它表达式都将失效。
    -w:    将抓包数据输出到文件中而不是标准输出,这里可以同时配合"-G time"选项使得输出文件每time秒就自动切换到另一个文件。可通过"-r"选项载入这些文件以进行分析和打印。
    -r:    从给定的数据包文件中读取数据。使用"-"表示从标准输入中读取。
    

    三.具体使用示例

    3.1 默认启动

    tcpdump
    

    默认情况下,直接启动tcpdump将监视第一个网络接口(非lo口)上所有流通的数据包,这样抓取的结果会非常多,滚动非常快。

    3.2 监视指定网口的数据包

    tcpdump -i em2
    

    3.3 监视指定主机的数据包

    例如这里监视所有进入或离开node1的数据包:

    tcpdump -i em2 host node1
    

    3.4 打印node1和node2或者node1和node3之间通信的数据包

    tcmdump -i em2 host node1 and node2
    tcmdump -i em2 host node1 and node3
    

    3.5 打印node1和其它所有(不包含node4)主机之间通信的IP数据包

    tcpdump -i em2 host node1 and not node4
    

    3.6 截获主机node1发送的所有数据

    tcpdump -i em2 src host node1
    

    3.7 监视所有发送到主机node1的数据包

    tcpdump -i em2 dst host node1
    

    3.8 监视指定主机和端口的数据包

    tcpdump -i em2 port 22 and host node1
    

    3.9 监视指定网络的数据包

    例如这里监视本机与192.168网段通信的数据包,"-c 10"表示只抓取10个包

    tcpdump -i em2 -c 10 net 192.168
    

    3.10 抓取ping包

    tcpdump -c 5 -nn -i ens33
    

    3.11 抓取到本机22端口的包

    tcpdump -c 10 -nn -i em2 tcp dst port 22
    

    3.12 解析包的数据

    tcpdump -c 2 -q -XX -vvv -nn -i em2 tcp dst port 22
    

    参考链接:https://www.jianshu.com/p/d9162722f189

  • 相关阅读:
    OOP、DI、IOC的情爱恩仇录
    NuGet:添加EntityFramework
    DataGrid之DataGridComboBoxColumn,DataGridCheckBoxColumn,DataGridHyperlinkColumn,DataGridTextColumn
    JohnSon:动态创建模块选项卡
    maf实例
    MVVM理解之逐步重构成为MVVM模式,比MVC的独到之处
    我学Unity系列1:Unity和Mef的比较
    微软一站式代码资料
    匿名方法,泛型委托,Lambda表达式
    关于JS表单验证(转)
  • 原文地址:https://www.cnblogs.com/yuhaohao/p/13825694.html
Copyright © 2020-2023  润新知