【网络技术】【Kali Linux】Wireshark嗅探(八)动态主机配置协议(DHCP)

一、实验目的

本次实验使用 Wireshark (“网鲨”)流量分析工具进行网络流量嗅探,旨在初步了解动态主机配置协议(DHCP协议)的工作原理。

二、DHCP协议概述

动态主机配置协议( D ynamic H ost C onfiguration P rotocol, DHCP)的作用是协助计算机在加入新的网络时获取新的IP地址

三、实验网络环境设置

本次实验使用 Kali Linux 虚拟机完成,主机操作系统为 Windows 11,虚拟化平台选择 Oracle VM VirtualBox,网络模式(先后)选择 网络地址转换(NAT)和桥接网卡,如下图所示:

虚拟机设置:
在这里插入图片描述

网络模式1
在这里插入图片描述

网络模式2
在这里插入图片描述

四、DHCP协议报文捕获及分析

1、必要设置

在开始本次实验之前,需要将Kali Linux虚拟机获得IPv4地址的方式设定为“DHCP”。具体做法如下:

All Applications(所有应用)—— Advanced Network Configuration(高级网络配置项)—— Wired connection 1(当前网络连接)—— IPv4 Settings(IPv4设置)
将Method(方法)一栏设置为Automatic(DHCP)

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

2、实验组网

为了理解DHCP协议的工作原理,先后使用两种不同的组网模式,如下2图所说明:
网络地址转换(NAT) 模式下,虚拟机IP地址为10.0.2.15:
在这里插入图片描述
组网简图:

在这里插入图片描述

桥接网卡 模式下,虚拟机IP地址为192.168.1.23:
在这里插入图片描述组网简图:
在这里插入图片描述

3、DHCP协议报文捕获及分析

(1) 在网络地址转换模式下,在 Kali Linux 虚拟机上启动 Wireshark,开始抓包,“过滤条件(Filter)”一栏中填写 dhcp

在这里插入图片描述

(2) 在“设备”——“网络”中将网络模式更改为“桥接网卡”,点击OK,此时抓取到更换网络(获取新IP地址)过程中的DHCP协议报文(共6条):

在这里插入图片描述

(3) 请求报文协议字段内容:

在这里插入图片描述

(4) Offer报文协议字段内容:

在这里插入图片描述

包含了新的客户机IP地址。

简单说来,DHCP协议使得计算机在更换网络环境时,可以从DHCP服务器自动更新其IP地址。

至此,本次实验结束。

五、参考文献

《计算机网络(第7版)》,谢希仁 编著,北京,电子工业出版社,2017年10月。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/300920.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Transformer - Attention is all you need 论文阅读

虽然是跑路来NLP,但是还是立flag说要做个project,结果kaggle上的入门project给的例子用的是BERT,还提到这一方法属于transformer,所以大概率读完这一篇之后,会再看BERT的论文这个样子。 在李宏毅的NLP课程中多次提到了…

Latex + Overleaf 论文写作新手笔记

.tex 文件main.tex 文件 Latex 的文档层次结构不同文档类型的层次结构report 6 层结构实例article 5 层结构实例 Latex 语法图表插入与引用使用 figure 环境来插入图片使用 ref 命令来引用已有的图表格的插入与引用 代码块列表无序列表 itemize有序列表 enumerate 学位论文项目…

基于SSM的企业员工管理系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

实验笔记之——Linux实现COLMAP

之前博客跑instant-NGP的时候,除了用官方的数据集,用自己的数据则是通过手机采集,同时获得pose与image。但是这种获取的方式对于3D gaussian而言,并不支持对应的数据格式,为此采用COLMAP来根据image获取pose&#xff0…

Java网络编程之IP,端口号,通信协议(UDP,TCP)

目录 1.软件架构2.网络编程三要素3.IP1.IPV42.IPV6 4.端口号5.协议1.UDP协议1.单播2.组播3.广播 2.TCP协议1.三次握手2.四次挥手 1.软件架构 ①C/S:客户端/服务器 在用户本地需要下载安装客户端程序,在远程有一个服务器端程序。 优点:画面精美…

Windows系统任务栏应用图标显示成空白的解决方案

背景 任务栏应用图标为空白: 原因 Windows系统为了加快系统响应速度,在安装完应用第一次显示完应用图标后,会将应用的图标放入缓存中,以后每次显示应用直接在缓存中获取,如果缓存中的图标信息发生错误,…

SSM医院预约挂号系统【源码】【最详细运行文档】

SSM医院预约挂号系统【源码】【最详细运行文档】 系统简介系统涉及系统运行系统演示源码获取 系统简介 随着医疗水平的提高,以及人们对于健康的观念越来越重视,出入医院成了一种常见的现象。而随着看病人数增多,经常出现挂号难的现象。一部分…

【微服务】springcloud集成skywalking实现全链路追踪

目录 一、前言 二、环境准备 2.1 软件环境 2.2 微服务模块 2.3 环境搭建 2.3.1 下载安装包 2.3.2 解压并启动服务 2.3.3 访问web界面 三、搭建springcloud微服务 3.1 顶层公共依赖 3.2 用户服务模块 3.2.1 准备测试使用数据库 3.2.2 添加依赖 3.2.3 添加配置文件 …

1329:【例8.2】细胞 广度优先搜索

1329:【例8.2】细胞 时间限制: 1000 ms 内存限制: 65536 KB 【题目描述】 一矩形阵列由数字0 到9组成,数字1到9 代表细胞,细胞的定义为沿细胞数字上下左右还是细胞数字则为同一细胞,求给定矩形阵列的细胞个数。如: 4 10 0234500067 1034560500 2045600671 00000000…

Ubuntu22.04开机左上角下划线闪烁不开机

按下CtrlAltF2,打开TTY系统,然后通过用户名和密码登录,随后使用 sudo apt --fix-broken install 根据提示排除错误信息,然后使用apt安装lightdm安装就行。 tips:当使用EasyConnect的时候,你可能参考了下面这篇文章知…

Open CASCADE学习|Draw Harness

目录 显示长方体 提供帮助信息 执行文件 记录交互式命令 使用getsourcefile可以快速查找到Tcl命令对应的C源文件 在Tcl中内置了一些变量,并赋予了一定的功能。内置变量列表如下: 退出 加载插件 在屏幕显示变量 返回绘图变量信息 视图 mu, md…

Linux程序、进程和计划任务

目录 一.程序和进程 1.程序的概念 2.进程的概念 3.线程的概念 4.单线程与多线程 5.进程的状态 二.查看进程信息相关命令: 1.ps:查看静态进程信息状态 2.top:查看动态进程排名信息 3.pgrep:查看指定进程 4.pstree&#…

大模型实战营Day2 作业

基础作业 1 使用 InternLM-Chat-7B 模型生成 300 字的小故事 2 熟悉 hugging face 下载功能,使用 huggingface_hub python 包,下载 InternLM-20B 的 config.json 文件到本地 进阶作业 1 完成浦语灵笔的图文理解及创作部署 2 完成 Lagent 工具调用 Demo…

shp文件与数据库(创建表)

前言 第三方库准备 shp文件是什么?笔者就不多做解释。后面将使用python的一些第三方库 1、sqlalchemy 2、pyshp 3、geoalchemy2 4、geopandas 这四个是主要的库,具体怎么使用可以参考相关教程,当然还有其他库,后面在介绍。…

C语言数据在内存中的存储

1.整数在内存中的存储 我们知道数据在内存中都是以2进制的形式存储的;比如int,char,double,float这些类型的数据都是以2进制的形式去存储的,那么这些数据又是如何去存入/取出的呢? 前面我们知道,整数分为有符号整数和无符号整数…

关键字、标志符、变量

1、关键字 1.1、定义 定义:被JAVA语言赋予了特殊含义,用作专门用途的字符串(或单词) 特点:全部关键字都是小写字母 上源码: 代码中定义类的关键字class,定义一个订单控制器类 ​​​​​​​…

搭建React开发环境-webpack实现

周末在家学会React前端知识,记录下来,方便备查。 webpack版本:webpack5 编译器:vscode 第一步、新建项目及初始化 1)新建项目文件夹 可命名为 my_webpack 2)初始化项目 使用命令 npm init -y,…

Android getApplication()、getApplicationContext的区别

在Android中,getApplication()和getApplicationContext()是两种获取应用程序上下文的方法,但它们有一些细微的区别。 getApplication()方法: getApplication()方法通常用于Activity或Fragment中,它返回当前Activity或Fragment所属…

深度学习:解决CNN的困境——胶囊网络

从2017年底到2018年初,整个人工智能学术研究领域谈论最多的应该就是被誉为深度学习之父Geoffrey E. Hinton 发表的论文 Dynamic Routing Between Capsules,其中介绍了全新的深度学习模型——胶囊网络(Capsule Network) 1. 普通CNN的困境 虽…

电子学会C/C++编程等级考试2023年12月(三级)真题解析

C/C++编程(1~8级)全部真题・点这里 第1题:因子问题 任给两个正整数N、M,求一个最小的正整数a,使得a和(M-a)都是N的因子。 时间限制:10000 内存限制:65536 输入 包括两个整数N、M。N不超过1,000,000。 输出 输出一个整数a,表示结果。如果某个案例中满足条件的正整数不存…