系列目录
Wireshark/Ethereal
介绍
参考《计算机网络:自顶向下方法》
- Wireshark是一种运行在主流OS上的免费的分组嗅探器
- 分组嗅探器(Packer Sniffer):一种用来观察执行协议的实体之间交换的报文的基本工具
顾名思义,一个分组嗅探器被动地拷贝(嗅探)由你的计算机发送和接收的报文,也能显示出这些被捕获报文各个协议字段的内容
对了这本书配套的资源以及课后的Wireshark实验生肉我也一并附在这里了,有兴趣可以借助翻译尝试自行理解~
安装
推荐使用Wireshark作为我们的抓包工具
当然,如果学校上机要求使用Ethereal,大致的思路是相通的
下载链接:
Ethereal
Wireshark
放心下载安装,这里不需要进行过多的配置;当然不要把它放到D盘里了 /doge
接下来,我将以安徽工业大学的门户网站举例说明:
实验步骤
一、获取目标网站的IP地址
方法一
操作简单,但查询结果不直观且不一定全面
操作步骤:
- win+r打开运行,并在运行中输入cmd
- 打开命令提示符窗口(Cmd, Command Promp)
- 使用
nslookup
命令查询IP地址——当然也可用dig
命令——这里不做拓展
如图所示:
⚠️如果嫌cmd(命令提示符)窗口太乱,可以使用cls
命令清空屏幕内容
拓展
- 使用
nslookup
对IP地址“反向”查找域名,即反向DNS查找
如:nslookup 211.70.155.63
如图所示:
⚠️不是所有的IP地址都有反向DNS记录
🌟方法二
使用域名查询网站,如:ip138.com,查询其对应的IP地址
二、筛选目的地址并捕获
打开安装好的Wireshark,选择且配置好(见下文的⚠️),筛选目的地址并捕获
- 筛选目的地址(Destination)为
211.70.155.63
,即在上方标黄窗口输入ip.dst_host == 211.70.155.63
- 点击捕获里的开始
如图所示:
此时是没有任何数据包可以抓取的
⚠️选择并配置好指的选择捕获(Capture) 中的选择(Option) 并配置好,若使用的是WIFI,则需要选择WLAN或者以太网
⚠️如果是Ethereal,则操作类似,即
- 在上方标黄窗口(Filter)输入
ip.dst_host == 211.70.155.63
- 点击Capture(捕获)里的Start
如图所示:
三、使用ping命令请求访问
返回cmd
窗口,使用ping
命令请求访问
⚠️使用ping
命令的时,保持Wireshark在后台(这也是引导第二步的原因)
四、二次捕获
与操作二类似,若已选择并配置好,则只需要再次捕获
⚠️使用ping
命令的时候,请将Wireshark保持在后台
前后为两次不同时刻的数据包抓取
知识点补充
ping
ping
是一种流行的网络应用程序,用于测试位于远程的某个特定的主机是否开机和可达;也经常用于测量客户主机和目标主机之间的时延
⚠️ping
不可以查询DNS(Domain Name System, 域名系统)ping
测量RRT(Round-Trip Time, 往返时间)、记录分组丢失和计算多个ping-pong交换(往返时间的最小、平均、最大和标准差)的统计汇总- 工作过程
向目标主机发送ICMP“回显请求”分组(即ping分组),并且侦听ICMP“回显请求”应答(即pong分组)
ICMP(Internet Control Message Protocol, 网际控制报文协议)
主机或路由器使用ICMP来发送差错报告报文和询问报文
ICMP可以发送询问报文——联系我们在cmd窗口使用ping命令,向该门户网站发送ICMP回显请求(Echo Request)