
文章插图
概述用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具 。
tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析 。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息 。
tcpdump基于底层libpcap库开发,运行需要root权限 。
一、tcpdump安装
- 环境 虚拟机:vmware 15.5.2 os: ubuntu 12.04
- 安装tcpdump
sudo apt-get install tcpdump
文章插图
3. 版本查看
tcpdump --h
文章插图
tcpdump version 4.0 。
libpcap version 1.1.1 表示libpcap的版本 。
二、tcpdump参数常用参数选项说明:

文章插图
三、命令选项使用举例
1. 截获主机收到和发出的所有数据包 。命令:
tcpdump说明:tcpdump截取包默认显示数据包的头部 。
普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包 。
基础格式:时间 数据包类型 源IP 端口/协议 > 目标IP 端口/协议 协议详细信息

文章插图
按下Ctrl+C会终止tcpdump命令 。且会在结尾处生成统计信息 。

文章插图
终止tcpdump
2. 指定抓包数量 -c指定抓取2个数据包 。
命令:
tcpdump -c 2说明:最后会自动生成统计信息 。

文章插图
【注意,已经切换到管理员了,虚拟机中要产生数据包,可以另外开一个窗口ping baidu.com后面不再提示】

文章插图
ping baidu.com
3. 将抓包信息写入文件 -w使用-w选项指定记录文件 。
命令:
tcpdump -c 10 -w tcpdump_test.log【网络/命令行抓包工具tcpdump详解】说明:保存的文件不是文本格式,不能直接查看 。tcpdump保存的文件的格式是几乎所有主流的抓包工具软件都可以读取 。所以可以使用更易读的图形界面工具来查看记录文件 。

文章插图
4. 读取记录文件 -r使用-r选项读取文件 。
命令:
tcpdump -r tcpdump_test.log
文章插图
5. 打印出所有可工作的接口 -D命令:
tcpdump -D
文章插图
其中网卡为eth0 。
6. 指定监控的网卡 -i命令:
tcpdump -i eth0如果不指定网卡,默认tcpdump只会监视第一个网络接口,一般是eth0 。7. 显示更详细的数据包信息 -v -vv选项-v,-vv可以显示更详细的抓包信息 。

文章插图
tcpdump -v

文章插图
tcpdump -vv
8. 不使用域名反解 -n使用-n后,tcpdump会直接显示IP地址,不会显示域名(与netstat命令相似) 。
9. 增加抓包时间戳 -tttt选项tcpdump的所有输出打印行中都会默认包含时间戳信息;时间戳信息的显示格式如下
hh:mm:ss.frac (nt: 小时:分钟:秒.)此时间戳的精度与内核时间精度一致, 反映的是内核第一次看到对应数据包的时间;而数据包从物理线路传递到内核的时间, 以及内核花费在此包上的中断处理时间都没有算进来;
使用-tttt选项,抓包结果中将包含抓包日期:
命令:
tcpdump -tttt
文章插图
推荐阅读
- 2021年云计算面临的5大网络安全威胁
- 全球13台根服务器,中国没有任何一台,一旦断网中国网络会瘫痪吗
- Python网络编程实现自动化,简化Telnet网络配置工作
- 家里无线网络每天不定时段出现网速很慢或者直接无连接,这是怎么回事?
- 为什么黑客总是能赢得“网络战争”?
- 连上 Wi-Fi 就能上网了吗?健全家庭网络需要这些设备
- 利用网络引爆传播的方法
- IT外包浅谈应对SolarWinds的网络安全技巧
- 如何利用网络搭建“零信任”?4个窍门帮你搞定!
- FreakOut 僵尸网络分析
