• tcpdump网络包分析工具使用


    Debian9 安装 tcpdump 工具

    apt-get install tcpdump

    使用

    不指定任何参数,默认监听第一块网卡上经过的数据包

    tcpdump

    监听指定网卡经过的数据包

    tcpdump -i ens33

    监听所有网卡经过的数据包

    tcpdump -i any

    监听指定的主机

    例子:监听本机跟主机 192.168.3.1 之间往来的通信包。

    备注:出、入的包都会被监听。

    tcpdump host 192.168.3.1

    指定来源、目标地址的通信

    指定来源

    tcpdump src host hostname

    指定目标地址

    tcpdump dst host hostname

    如果不指定src跟dst,那么来源或者目标是 hostname 的通信都会被监听

    tcpdump host hostname

    监听指定的端口或者端口范围

    tcpdump port 80
    tcpdump portrange 22-125

    监听 TCP/UDP

    OSI七层网络模型传输层有TCP、UDP两种协议,假如只想监听TCP协议的数据包

    tcpdump tcp

    来源主机+端口+TCP

    监听来自主机 192.168.3.1 在端口22上的TCP数据包

    tcpdump tcp port 22 and src host 192.168.3.1

    监听特定主机之间的通信

    tcpdump ip host 192.168.3.1 and 192.168.3.129

    192.168.3.1 除了和 192.168.3.129 之外的主机之间的通信

    tcpdump ip host 192.168.3.1 and ! 192.168.3.129

    稍微详细点的例子

    tcpdump tcp -i ens33 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.3.0/24 -w ./target.cap

    (1)tcp: ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据报的类型
    (2)-i ens33 :只抓经过接口ens33的包
    (3)-t :不显示时间戳
    (4)-s 0 :抓取数据包时默认抓取长度为68字节。加上-s 0 后可以抓到完整的数据包
    (5)-c 100 :只抓取100个数据包
    (6)dst port ! 22 :不抓取目标端口是22的数据包
    (7)src net 192.168.3.0/24 :数据包的源网络地址为192.168.3.0/24
    (8)-w ./target.cap :将所有捕获的包写入cap文件,方便用ethereal(即wireshark)分析

    从使用 -w 选项写入的 ./target.cap 文件中读取内容

    tcpdump -r ./target.cap

    限制抓包的数量

    如下,抓到1000个包后,自动退出

    tcpdump -c 1000

    保存到本地

    备注:tcpdump默认会将输出写到缓冲区,只有缓冲区内容达到一定的大小,或者tcpdump退出时,才会将输出写到本地磁盘

    tcpdump -n -vvv -c 1000 -w /tmp/tcpdump_save.cap

    也可以加上-U强制立即写到本地磁盘(一般不建议,性能相对较差)

    src 和 dst 选项连用来捕获指定源端口或指定目的端口的报文

    使用“与”(and,&&)、“或”(or,|| ) 和“非”(not,!)来将两个条件组合起来,基于某些条件来分析网络报文是非常有用

    使用 and 或者符号 && 来将两个或多个条件组合起来

    tcpdump src 192.168.3.1 and port 22

    “或”会检查是否匹配命令所列条件中的其中一条

    tcpdump src 192.168.3.1 or dst 192.168.3.130 && port 22
    tcpdump port 443 or 80

    不想匹配某项条件时可以使用“非”

    监听 ens33 网卡上除了 22 号端口的所有通讯

    tcpdump -i ens33 src port not 22

    本文参考自:

    (1)https://www.cnblogs.com/chyingp/p/linux-command-tcpdump.html

    (2)https://linux.cn/article-9210-1.html

  • 相关阅读:
    GridView&ObjectDataSource新特性小记 懒人篇(一) 分页上路
    HyperLink多个属性的数据绑定
    关于客户端改变ListBox的一个小问题
    xmlhttp对象调用webservice要点补疑
    GridView&ObjectDataSource 新特性小记 懒人篇(二) 分页加速
    让VisualStudio的StartPage关联自己的博客
    JavaScript null 和 undefined 的比较 Better
    JavaScript 构造函数 Better
    mysql 常用命令汇总 Better
    Vue2前端项目构建&码云托管 Better
  • 原文地址:https://www.cnblogs.com/opsprobe/p/14460587.html
Copyright © 2020-2023  润新知