Ubuntu默认是安装好了tcpdump工具的,如果没有安装的话使用sudo apt-get install tcpdump即可安装。
   (如果遇到tcpdump: no suitable device found的问题,检查一下是不是在用root权限运行tcpdump,tcpdump只能在root权限下工作)

  安装好tcpdump之后,运行tcpdump:

  1. tcpdump -D 获取网络适配器列表,以下是在Ubuntu上获取到的结果:
  root@holmesian-laptop:~# tcpdump -D
  1.eth0
  2.wlan0
  3.usbmon1 (USB bus number 1)
  4.usbmon2 (USB bus number 2)
  5.usbmon3 (USB bus number 3)
  6.usbmon4 (USB bus number 4)
  7.usbmon5 (USB bus number 5)
  8.any (Pseudo-device that captures on all interfaces)
  9.lo

  2. tcpdump -i <需要监控的网络适配器编号>,例如我想监控我的无线网卡wlan0,则使用tcpdump -i 2。
  root@holmesian-laptop:~# tcpdump -i 2
  tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
  listening on wlan0, link-type EN10MB (Ethernet), capture size 96 bytes
   21:24:14.578430 00:24:f9:05:78:00 (oui Unknown) Unknown SSAP 0x78 > 00:1f:3a:18:fa:06 (oui Unknown) Unknown DSAP 0xd8 Information, send seq 0, rcv seq 16, Flags [Command], length 70
   21:24:14.578447 00:24:f9:05:78:00 (oui Unknown) Unknown SSAP 0x78 > 00:1f:3a:18:fa:06 (oui Unknown) Unknown DSAP 0xd8 Information, send seq 0, rcv seq 16, Flags [Command], length 223
   21:24:14.995603 00:24:f9:05:78:00 (oui Unknown) Unknown SSAP 0x20 > 78:dd:08:d1:b2:ca (oui Unknown) Unknown DSAP 0x76 Information, send seq 0, rcv seq 16, Flags [Command], length 70
   21:24:15.019811 00:24:f9:05:78:00 (oui Unknown) Unknown SSAP 0xa6 > 2c:81:58:ec:9c:54 (oui Unknown) Unknown DSAP 0x0a Information, send seq 0, rcv seq 16, Flags [Command], length 72
  如果不使用-i来定义监控适配器的话,默认使用列表中的第一个;

  3. 使用无线网卡wlan0监控IP地址为172.16.86.111上443端口的tcp协议:
  tcpdump -i 2 host 172.16.86.111 and tcp port 443

  4. 如果想要显示数据包的内容,需要使用-X参数,如,我想要显示捕获的https数据包http header的内容:
  tcpdump -X -i 2 host 172.16.86.111 and tcp port 443

  显示结果如下:
   21:27:53.662741 IP holmesian-laptop.local.44239 > 172.16.86.111.https: Flags [S], seq 24296623, win 5840, options [mss 1460,sackOK,TS val 153804 ecr 0,nop,wscale 6], length 0
  0x0000: 4500 003c e463 4000 4006 514a ac10 567e E..<.c@.@.QJ..V~
  0x0010: ac10 566f accf 01bb 0172 bcaf 0000 0000 ..Vo.....r......
  0x0020: a002 16d0 66a8 0000 0204 05b4 0402 080a ....f...........
  0x0030: 0002 58cc 0000 0000 0103 0306 ..X.........
   21:27:56.660488 IP holmesian-laptop.local.44239 > 172.16.86.111.https: Flags [S], seq 24296623, win 5840, options [mss 1460,sackOK,TS val 154554 ecr 0,nop,wscale 6], length 0
  0x0000: 4500 003c e464 4000 4006 5149 ac10 567e E..<.d@.@.QI..V~
  0x0010: ac10 566f accf 01bb 0172 bcaf 0000 0000 ..Vo.....r......
  0x0020: a002 16d0 63ba 0000 0204 05b4 0402 080a ....c...........
  0x0030: 0002 5bba 0000 0000 0103 0306 ..[.........

.c
    可以看到该结果只显示了https头的一部分,没有显示全,是因为tcpdump默认将显示的数据长度截断了,可以使用-s后面加数据长度,来设置数据显示长度:
  tcpdump -X -s 0 -i 2 host 172.16.86.111 and tcp port 443

  以上的例子中,-s 0 表示自动设置长度使其能够显示所有数据。

  5. 捕获的数据太多,不断刷屏,可能需要将数据内容记录到文件里,需要使用-w参数:
  tcpdump -X -s 0 -w aaa host 192.9.200.59 and tcp port 8000
  则将之前显示在屏幕中的内容,写入tcpdump可执行文件同级目录下的aaa文件中。
  文件查看方式如下,需要使用-r参数:
  tcpdump -X -s 0 -i 2 -r holmesian host 172.16.86.111 and tcp port 443

  如果这样写:
  tcpdump -r holmesian
  则只能看到最简单的数据传输交互过程,看不到数据包内容,查看时也需要使用相应的参数。

  6.总结
  总结一下,tcpdump的参数分两个部分,选项(Options)和表达式(expression):
  root@holmesian-laptop:~# tcpdump -h

  tcpdump version 4.0.0
  libpcap version 1.0.0
  Usage: tcpdump [-aAdDefIKlLnNOpqRStuUvxX] [ -B size ] [ -c count ]
  [ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
  [ -i interface ] [ -M secret ] [ -r file ]
  [ -s snaplen ] [ -T type ] [ -w file ] [ -W filecount ]
  [ -y datalinktype ] [ -z command ] [ -Z user ]
  [ expression ]

转载于:https://www.cnblogs.com/0616--ataozhijia/p/3670856.html

Ubuntu使用tcpdump工具相关推荐

  1. Linux卸载tcpdump,Ubuntu下tcpdump命令(一)选项

    Ubuntu下tcpdump命令(一)选项 说明,本文翻译自man tcpdump,若遇到不能理解的地方请参考man文档. Ubuntu默认是安装好了tcpdump工具的,如果没有安装的话使用sudo ...

  2. 【转】Ubuntu 安装截图工具Shutter,并设置快捷键 Ctrl+Alt+A

    原文地址:https://www.linuxidc.com/Linux/2015-07/119753.htm 对一些错误内容做了纠正. Ubuntu 安装截图工具Shutter,并设置快捷键 Ctrl ...

  3. ubuntu 软件包管理工具 dpkg,apt-get,aptitude 区别

    ubuntu 软件包管理工具 dpkg,apt-get,aptitude 区别 一:dpkg dpkg 是一种比较低层的软件包安装管理工具,在安装时,不会安装软件包的依赖关系:只能安装所要求的软件包: ...

  4. Ubuntu 安装截图工具Shutter,并设置快捷键 Ctrl+Alt+A

    一.Ubuntu安装截图工具 Shutter 1. 添加安装包软件源 sudo add-apt-repository ppa:shutter/ppa 2. 更新源并安装 shutter sudo ap ...

  5. tcpdump工具编译记录

    本文主要记录tcpdump,一个linux平台的抓包工具在arm平台上的编译方法,不涉及其使用. 下载tcpdump工具,地址:http://www.tcpdump.org/ 需要下载2个压缩包: l ...

  6. 视频压缩工具linux,Ubuntu视频转换工具-mencoder命令行参数

    因为刚好有些视频要转,google了一下,网上有很多Ubuntu视频转换工具mencoder的介绍,使用以后,觉得有必要汇总一下,留以他用. CODE: mencoder [options] file ...

  7. Ubuntu软件管理工具

    dpkg 包管理器 语法格式 dpkg [option] [package] Ubuntu软件管理工具 常见用法 #安装包,不支持包的依赖 dpkg -i package.deb #删除包,不建议,不 ...

  8. Ubuntu16.04安装和开机卡在Ubuntu的logo上的解决办法(附加一个Ubuntu的截图工具)

    在安装win10+Ubuntu16.04双系统的过程中,安装开始就卡在Ubuntu的界面上,看了一些博文说是我们笔记本的NVIDIA显卡驱动的兼容问题,我也是根据一些博文的总结下来的解决办法: ①在安 ...

  9. linux下使用tcpdump工具分析UDP报文

    1.背景 在调试UDP协议时,总是会遇到需要查看UDP报文的内容情况,或许是为了验证自己写的序列化组包是否正确,或者接受到的报文是否合法,亦或是为了查看自己发送或者接收的报文频率是否合格.无论出于什么 ...

最新文章

  1. 为什么鲜有炫富的程序员?看看中国各阶级收入统计表
  2. 【UIKit】UITableView 1
  3. VS代码提示不出现或者提示变成英文或者各种奇葩问题的解决
  4. typedef的用法
  5. IOS 自定义NIB视图
  6. Devexpress VCL Build v2014 vol 14.1.4 发布
  7. 五分钟用Docker快速搭建Go开发环境
  8. node生成uuid
  9. Logback配置一(按时间归档)
  10. mysql5.5.17源代码安装
  11. Java 学习经验[转]
  12. element 使用阿里图标变形了_2TB不限速的阿里网盘App来了 终于不再忍受众生平等盘...
  13. cdsn自动添加目录
  14. 百度诉被奇虎科技有限公司(以下简称北京奇虎公司)、奇虎三六零软件(北京)有限公司(以下简称奇虎三六零公司)不正当竞争纠纷一案
  15. Vuepress 如何引入百度统计和谷歌统计
  16. 谈谈 DNS 原理及“域名劫持”和“域名欺骗/域名污染”
  17. 选择结构与分支结构 计算器的实现
  18. HDR视频生态系统纵览
  19. 2022苹果ios个人开发中注册遇到的问题
  20. UOS服务器操作系统部署EKL

热门文章

  1. 2018-10-05学习笔记
  2. springboot+druid+mybatis+mysql+多数据源
  3. JQGrid 在页面加载时展开SubGrid
  4. ZenHub Epics创造了GitHub中敏捷Epics
  5. 【USACO 1.3】Ski Course Design
  6. 贝叶斯网络(Bayesian network))简介(PRML第8.1节总结)概率图模型(Graphical models)...
  7. Flask源码解析:从第一个版本开始阅读Flask源码
  8. python笔记9-多线程Threading之阻塞(join)和守护线程(setDaemon)
  9. 2015.7.29 上学前在家的最后一晚
  10. phpmyadmin的安装和使用