计算机网络实验 Labexercise1-1 Protocol Layers(Wireshark抓包与协议分析实验)


前言:本博客包含Windows10下安装wget、Wireshark。

一些有用的链接:

一些有用的提示:

开始实验进行抓包时,校园网环境下的同学不建议使用一些 [ 上网不涉密涉密不上网 ] 的校园网进行抓包,可能会导致抓不到包捏 (找了半天bug,气死我了)

1. 下载安装wget

参考资料:wget for windows 下载与安装

点击此链接,选择合适的版本下载.exe文件,然后把下好的.exe文件放在C:/windows/system32目录下即可。

在cmd终端输入wget --version,显示如下,则安装成功:

C:\Users\hp\Desktop>wget --version
GNU Wget 1.21.2 built on mingw32. +cares +digest +gpgme +https +ipv6 +iri +large-file +metalink -nls
+ntlm +opie +psl +ssl/openssl Wgetrc:
/win32dev/misc/wget/out64/etc/wgetrc (system)
Compile:
x86_64-w64-mingw32-gcc -DHAVE_CONFIG_H
-DSYSTEM_WGETRC="/win32dev/misc/wget/out64/etc/wgetrc"
-DLOCALEDIR="/win32dev/misc/wget/out64/share/locale" -I.
-I../../src -I../lib -I../../lib
-I/win32dev/misc/wget/out64/include
-I/win32dev/misc/wget/out64/include
-I/win32dev/misc/wget/out64/include
-I/win32dev/misc/wget/out64/include -DCARES_STATICLIB
-I/win32dev/misc/wget/out64/include -DPCRE2_STATIC
-I/win32dev/misc/wget/out64/include -DHAVE_LIBSSL
-I/win32dev/misc/wget/out64/include
-I/win32dev/misc/wget/out64/include -DNDEBUG -ggdb
Link:
x86_64-w64-mingw32-gcc -I/win32dev/misc/wget/out64/include
-I/win32dev/misc/wget/out64/include
-I/win32dev/misc/wget/out64/include -DCARES_STATICLIB
-I/win32dev/misc/wget/out64/include -DPCRE2_STATIC
-I/win32dev/misc/wget/out64/include -DHAVE_LIBSSL
-I/win32dev/misc/wget/out64/include
-I/win32dev/misc/wget/out64/include -DNDEBUG -ggdb
-L/win32dev/misc/wget/out64/lib -L/win32dev/misc/wget/out64/lib
-lmetalink -lunistring -liconv -L/win32dev/misc/wget/out64/lib
-lcares -L/win32dev/misc/wget/out64/lib -lpcre2-8
-L/win32dev/misc/wget/out64/lib -lssl -lcrypto
-L/win32dev/misc/wget/out64/lib -lz -L/win32dev/misc/wget/out64/lib
-lpsl -lidn2 -lunistring -liconv -lws2_32 -lole32 -lcrypt32 -lexpat
-L/win32dev/misc/wget/out64/lib -lgpgme -lassuan -lgpg-error
ftp-opie.o mswindows.o openssl.o http-ntlm.o ../lib/libgnu.a
-lws2_32 -lws2_32 -lws2_32 -lws2_32 -lws2_32 -lws2_32
/win32dev/misc/wget/out64/lib/libiconv.a
/win32dev/misc/wget/out64/lib/libunistring.a -lws2_32 Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://www.gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Originally written by Hrvoje Niksic <hniksic@xemacs.org>.
Please send bug reports and questions to <bug-wget@gnu.org>.

尝试使用wget时,可以在终端输入wget 网址把目标链接下载到当前目录下,也可以输入wegt -p 指定目录 网址把目标链接下载到指定目录下。

2. 下载安装Wireshark

参考资料:win10安装抓包工具wireshark

Wireshark的官网下载地址中,在Stable Release中选择符合你计算机型号的安装包,我Windows10 64位电脑选择的是 Windows Installer (64-bit),双击下载的.exe文件进行安装。

如果你仅仅只是为了完成课程实验,在安装的过程当中可以一路无脑next,在选择安装路径时可以更改为你想要的路径。

3.开始实验

Step 1-3

打开Wireshark,界面如下图所示,选择WLAN,点击捕获-选项。

在捕获选项界面,仅勾选WLAN,取消其他接口的混杂,在下方绿色的部分输入tcp port 80,使用“tcp端口80”筛选器启动捕获。

打开cmd终端,抓包一个网站,这里选择的是https://www.baidu.com/,网页获取完成后,立刻在Wireshark点击左上角的停止(红色正方形),显示如下图。



找到上方Protocol为HTTP,且Info是GET的,点击蓝色部分的Hypertext,可以看到整个窗口的最下方显示415 byte(s),这是HTTP的实际有效开销。

接下来分别查看以太网(Ethernet)、IP、TCP占用的字节,分别如下为14 types、20 types、20 types。





由此,可以回答实验报告中的第一个 turn in:

Step 3: Packet Structure

Turn-in: Hand in your packet drawing.

Step 4

Protocol Overhead指的是协议开销,由于协议本身的报头等内容也需要占用一定的空间,用来标识该种协议、报文内各个字段的含义等信息,这种内容就是协议开销了。

下载的包从一个Info中带有SYN,ACK信号的包开始,到下面第一个遇到的HTTP包后面的TCP包为止。

由此,可以回答实验报告中的第二个 turn in:

Your estimate of download protocol overhead as defined above. Tell us whether you find this overhead to be significant.



协议开销一共有 66+54+469+66=665字节

HTTP有效开销一共有415字节,415/665≈62.41%,协议开销占比较小。

Step 5

点击中间那一栏的以太网和IP,分别可以从Type和Protocol中找到第五步问题的答案。

由此,可以回答实验报告中的第三个 turn in:

  1. Which Ethernet header field is the demultiplexing key that tells it the next higher layer is IP? What value is used in this field to indicate “IP”?



    以太网报头字段是Type,对应的值是0x0800。
  2. Which IP header field is the demultiplexing key that tells it the next higher layer is TCP? What value is used in this field to indicate “TCP”?



    IP报头字段是Protocol,对应的值是6。

计算机网络实验 Labexercise1-1 Protocol Layers(Wireshark抓包与协议分析实验)的更多相关文章

  1. wireshark 抓包分析 TCPIP协议的握手

    wireshark 抓包分析 TCPIP协议的握手 原网址:http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html 之前写过一篇 ...

  2. Wireshark抓包分析TCP协议

      版权声明:本文为作者原创文章,可以随意转载,但必须在明确位置表明出处!!! 之前有一篇文章介绍了http协议「初识http协议」, http协议协议是基于tcp协议的,所以作者觉得有必要针对tcp ...

  3. 【计算机网络】wireshark抓包分析1

    学习计算机网络很久了,但总是局限于书本知识,感觉get不到重点.经师兄建议用wireshark抓包分析看看. 我自己以前并没有做过抓包分析,所以这篇博文可能会有很多错误,只是我自己的一个记录,路过的亲 ...

  4. 用wireshark抓包分析TCP三次握手、四次挥手以及TCP实现可靠传输的机制

    关于TCP三次握手和四次挥手大家都在<计算机网络>课程里学过,还记得当时高超老师耐心地讲解.大学里我遇到的最好的老师大概就是这位了,虽然他只给我讲过<java程序设计>和< ...

  5. 通过Wireshark抓包分析谈谈DNS域名解析的那些事儿

    文/朱季谦 本文主要想通过动手实际分析一下是如何通过DNS服务器来解析域名获取对应IP地址的,毕竟,纸上得来终觉浅,绝知此事要躬行. 域名与IP地址 当在浏览器上敲下"www.baidu.c ...

  6. Wireshark抓包工具解析HTTPS包

    目录 一.遇到的问题 二.解决方案 1. 动态生成签名证书 2. Wireshark配置 3. 最终效果 一.遇到的问题 本学期的计算机网络课程需要使用到Wireshark抓包工具进行网络抓包实验,原 ...

  7. Wireshark抓包分析/TCP/Http/Https及代理IP的识别

    前言 坦白讲,没想好怎样的开头.辗转三年过去了.一切已经变化了许多,一切似乎从没有改变. 前段时间调研了一次代理相关的知识,简单整理一下分享之.如有错误,欢迎指正. 涉及 Proxy IP应用 原理/ ...

  8. wireshark怎么抓包、wireshark抓包详细图文教程

    wireshark怎么抓包.wireshark抓包详细图文教程 作者:佚名  来源:本站整理  发布时间:2013-05-02 19:56:27 本日:53 本周:675 本月:926 总数:3749 ...

  9. Wireshark抓包分析HTTPS与HTTP报文的差异

    一.什么是HTTPS: HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换 ...

随机推荐

  1. 人口信息普查系统-JavaWeb-四

    今天给大家分享前端人口登记页面,人口查询页面 人口登记 <%@ page language="java" contentType="text/html; chars ...

  2. shell脚本的分发,测试,查看

    #!/bin/bash for i in {2..64} do #远端复制文件或目录 rcp /test/cpuburn-in 10.1.1.$i:/test/ done #!/bin/bash fo ...

  3. Redis 中如何保证数据的不丢失,Redis 中的持久化是如何进行

    Redis 中数据的持久化 前言 AOF 持久化 什么是 AOF 持久化 为什么要后记录日志呢 AOF 的潜在风险 AOF 文件的写入和同步 AOF 文件重写机制 AOF 的数据还原 RDB 持久化 ...

  4. Redis 常见面试题(2020最新版)

    阶段汇总集合:001期~180期汇总,方便阅读(增加设计模式) 概述 什么是Redis Redis(Remote Dictionary Server) 是一个使用 C 语言编写的,开源的(BSD许可) ...

  5. 无脑安装java编程语言开发的集成环境 IDEA 白嫖版本

    无脑安装java编程语言开发的集成环境  IDEA 根python很类似:可以借鉴无脑安装--Python 及 安装python集成开发环境pycharm - 隐姓埋名4869 - 博客园 (cnbl ...

  6. TCP的报文详细解读

    这张图好像挺有名的,其实一开始我看见的时候是一脸懵逼的,但是通过翻书(大学时代最害怕的计算机网络),查阅他人博客等等办法,最后终于有了一个系统的了解,当然,这里知识点多而杂,大家可以多看几遍,结合上面 ...

  7. kubernetes基础——1.基本概念

    一.kubernetes特性 自动装箱,自我修复,水平扩展,服务发现和负载均衡,自动发布和回滚,密钥和配置管理,存储编排,批量处理执行. 二.kubernetes cluster Masters * ...

  8. 作业2.7_3(给UVA548 树 Tree单独一个帖子)🍺

    代码:(输入函数很香建议保留)我不理解他是绿的但 The Blocks Problem 是黄的 #include<bits/stdc++.h> using namespace std; i ...

  9. DelayQueue延迟队列-实现缓存

    延迟阻塞队列DelayQueue DelayQueue 是一个支持延时获取元素的阻塞队列, 内部采用优先队列 PriorityQueue 存储元素, 同时元素必须实现 Delayed 接口:在创建元素 ...

  10. Solution -「洛谷 P6292」区间本质不同子串个数

    \(\mathcal{Description}\)   Link.   给定长度为 \(n\),仅包含小写字符的字符串 \(s\),\(m\) 次询问,每次询问一个子串 \(s[l:r]\) 的本质不 ...