① 抓包分析涉及的内容
关于: 'TCP理论'知识和'tcpdump'命令的知识,前面已经'铺垫'过了,这里不再'赘述'
下面罗列了'TCP'的重点知识
客户端工具: curl、wget、'postman'、telnet、'浏览器'、'nc'
wget --bind-address=ADDRESS 指定本地'使用地址'
抓包工具: tcpdump、'wireshark'、tcptrace、tshark
本文'报文'分析方式:
1、先用 'tcpdump 命令' 在 Linux服务器上 '抓包'
2、接着把抓包的文件'拖出'到 Windows 电脑后,用 Wireshark '可视化分析'
强调: 关于'tcpdump' 掌握一些'常用'选项和过滤表达式,就可以满足'大部分场景'的需要了
备注1: 涉及'iptales'命令的使用
备注2: 重点关注'wireshark'的使用'和'技巧
二 wireshark专栏
说明: 整个专题不会像'tcpdump'那样有个专栏讲解'wireshark',而是通过实战'穿插'
wireshark 除了可以'抓包'外,还提供了'可视化'分析网络包的'图形'页面
三 抓取ICMP包
说明: 从最简单的'ICMP'协议抓包,刚好衔接'上篇'的'理论'
案例: 假设我们要抓取下面的 'ping' 的数据包
① tcpdump分析
1、先通过'tcpdump'启动抓包进行'监听'
sudo tcpdump -i enp5s0 icmp and host 14.119.104.254 -nn
2、客户端测试
ping -I enp5s0 -c 3 www.baidu.com
备注: 这里'发送请求'和'抓包'使用同一台机器
分析1: tcpdump 抓取到 icmp 数据包后,'输出格式' 如下:
分析2: tcpdump 抓取到 icmp 数据包后,'输出格式' 的 '交互过程':
② tcpdump + wireshark分析
1、把'tcpdump'抓取的数据包'保存'到 ping.pcap 文件
sudo tcpdump -i enp5s0 icmp and host 14.119.104.254 -nn -w ping.pcap
2、接着'用 wireshark' 软件打开 ping.pcap 文件,可以看到'如下'的界面:
File --> Open
小结: 从 ping 的 '例子' 中
1、我们可以看到'网络分层'就像'有序的分工',每一层都有'自己的'责任范围和信息
2、上层协议完成工作后就交给'下一层',最终形成一个'完整'的网络包