文章图片
1 tcpdump 是什么?
tcpdump 可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、端口的过滤,并提供and、or、not等逻辑语句来帮助你过滤掉不关注的信息。
通常用 tcpdump 抓包数据输出到文件(如在 linux 服务器上抓包数据),把文件下载拖到工作电脑 Wireshark 软件上配合分析(Wireshark 使用自行白度,也可以使用 wireshark 直接抓包分析)。
2 tcpdump 常用命令参数
还有非常多的参数,只简单备注一些常用的
- -i<网络界面> 使用指定的网络截面送出数据包。
- -w<数据包文件> 把数据包数据写入指定的文件。
- -v 详细显示指令执行过程。
- -n 不把主机的网络地址转换成名字。
//ip 瞎写的哈,脱敏
tcpdump -i en0'((src or dst host 163.235.251.6) or (src or dst host 163.235.251.7) or (src ordst host 163.235.251.8))'-w wss-log.cap
- (1)eth0 是网卡,可以通过 ifconfig 查看你的网卡。
- (2)((src or dst host 163.235.251.6) or (src or dst host 163.235.251.7) or (src or dst host 163.235.251.8)) 这一段表示,一次监听抓取多个远端的主机地址,src or dst 可以把交互都抓出来,就是从这台发出来的,到这台回复的都可以抓出来,可以看到 TCP 完整的握手挥手过程。
- (3)-w wss-log.cap 这个是把抓取的日志,写到 wss-log.cap,文件名以.cap 结尾。
- (4)工作电脑下载 Wireshark 并打开,把上面的文件 wss-log.cap 拖到 Wireshark 界面即可看到协议交互过程。
- (5)下面是一次 wss 的抓包(websocket+TLS),图片信息做脱敏处理。
文章图片
4 tcpdump 抓包白度,配合Wireshark分析) (1)抓包命令
tcpdump -ien0'src or dsthost www.baidu.com' -w baidu.cap
(2)访问下白度
curl www.baidu.com
(3)Wireshark分析下抓的数据
文章图片
5 tcpdump 其他一些用例 1 抓取经过指定端口的数据包,不指定网卡
tcpdump -vn -ianyport 7280-w tcptemp.cap
- (1)-i interface 指定 tcpdump 需要监听的接口,'any' 这个虚拟网络接口可被用来接收所有网络接口上的数据包。
- (2)-v 当分析和打印的时候,产生详细的输出。比如包的生存时间,标识,总长度以及 IP 包的一些选项。这也会打开一些附加的包完整性检测,比如对IP或ICMP包头部的校验和。
- (3)-n 不对地址(比如主机地址,端口号)进行数字表示到名字表示的转换。
tcpdump tcp port 23 and host 163.235.251.6
6 小结 【019 Linux tcpdump 抓包案例入门可真简单啊()】tcpdump 可以将网络中传送的数据包完全截获下来提供分析。通常用 tcpdump 抓包数据输出到文件(如在 linux 服务器上抓包数据),把文件下载拖到工作电脑 Wireshark 软件上配合分析。本文记录了最简单的一些 case 使用,起到抛砖引玉的作用。
「不甩锅的码农」原创,转载请注明来源,未经授权禁止商业用途!同名 GZH 请关注!
推荐阅读
- ECS 34 编程指南
- 蓝桥真题|【蓝桥真题4】练练填空就想进国赛(拿下大题才能让你真正有底气(蓝桥31日冲刺打卡))
- 护网|流量分析 (护网面试题)
- 护网|护网(面试常见问题)
- 后端|大名鼎鼎的 Linux —— 进程,线程,协程
- 程序人生|在阿里干了10年Java开发的表哥放假回来了,聊完之后大彻大悟
- Java|开年新来一个卷王,主动加班,张口闭口就是高并发,太让人崩溃...
- java|98年阿里P6架构师晒出工资单,看完扎心了。。。
- java人生|八年Java开发薪水被应届生倒挂,32岁裸辞了,闭关三个月拿到阿里Offer,定级 P7