计算机网络实验 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. 洛谷P7814 「小窝 R3」心の記憶

    题意 第一行给定两个数字\(n\) \(m\) \((m \ge n)\)分别代表给定字符串长度以及需要构造出的字符串长度 第二行给定一个长度为\(n\)的字符串 (假设原来的字符串是\(a\) 需要 ...

  2. ApacheCN Python 译文集 20211108 更新

    Think Python 中文第二版 第一章 编程之路 第二章 变量,表达式,语句 第三章 函数 第四章 案例学习:交互设计 第五章 条件循环 第六章 有返回值的函数 第七章 迭代 第八章 字符串 第 ...

  3. AT2657 [ARC078D] Mole and Abandoned Mine

    简要题解如下: 记 \(1\) 到 \(n\) 的路径为关键路径. 注意到关键路径只有一条是解题的关键,可以思考这张图长什么样子. 不难发现关键路径上所有边均为桥,因此大致上是关键路径上每个点下面挂了 ...

  4. 分布式缓存系统——memcache

    一.简介 memcache是一个自由开源的.高性能的.分布式内存对象缓存系统.它是一种基于内存的key-value存储,用来存储小块的任意数据(字符串.对象).这些数据可以是数据库调用.API调用等. ...

  5. 线程池与Callable接口

    定义: 一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多资源. 使用方法 public void lockDemo() throws Inter ...

  6. JAVA异常与异常处理详解【转】

    感谢!!!原文地址:https://www.cnblogs.com/knightsu/p/7114914.html 一.异常简介 什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错.在ja ...

  7. bom案例1-div拖拽

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  8. JVM学习七-(复习)垃圾收集策略与算法

    垃圾收集策略与算法 程序计数器.虚拟机栈.本地方法栈随线程而生,也随线程而灭:栈帧随着方法的开始而入栈,随着方法的结束而出栈.这几个区域的内存分配和回收都具有确定性,在这几个区域内不需要过多考虑回收的 ...

  9. htc 简单的移动效果

    转载请注明来源:https://www.cnblogs.com/hookjc/ 1.创建 HTC 文件的架构.一个标准的 HTC 文件含有一个 SCRIPT 块和一对可选的 COMPONENT 标记. ...

  10. kebernet--新手填坑

    1.安装好kubernet之后,新建rc后,里面的容器一直ImagePullBackOff ,镜像无法拉取: ----需要配置docker镜像为国内镜像,记得在各个Node上都要配置!!! vim / ...