学习DHCP动态主机配置协议

目录:                        dhcp 动态主机配置协议

                                      ftp文件传输协议


  dhcp 动态主机配置协议

服务器配置好了地址池 192.168.124.10 -192.168.124.20

客户端从地址池当中随机获取一个ip地址,ip地址会发生变化,使用服务端提供的ip地址,时间限制,重启之后也会更换。

dhcp优点:

1、降低了配置和部署的时间

2、降低了发生配置错误的可能性

3、ip地址可以进行集中化管理

4、提高了ip的利用率

服务端和客户端

服务端 :提供某种特定的服务

客户端 :使用这种特定的服务

c/s :client servers 客户端 服务端 应用程序之间通过端口进行通信,实现c/s

b/s : browser server 浏览器 服务端 页面

dhcp分配方式:

自动分配:自动分配然后永久使用(最常用)

动态分配:自动分配,但是有时间限制,重启之后,ip地址会被回收,给下一个客户机继续使用。

手动分配: 管理员用过dhcp给客户手动分配一个ip地址(不常用)

DHCP 的工作原理 
DHCP的交互过程总共有六个步骤组成,前四步是完成交互的主要过程。
重点:
第一步:客户端在网络中搜索服务端(通过发送一个dicover报文寻找DHCP的服务器),是通过广播的方式进行大量搜寻,
并且等待响应

第二步:服务器向客户端响应服务(其中是通过发送offer报文,以广播的方式进行响应,另外:华为的路由为单播方式)。

第三步:客户端向服务端发送服务请求(其中是通过发送request报文以广播的形式,
只给第一个响应自己的服务端发送服务请求)。
第四步:服务端向客户端提供确认可用的IP和租期信息(以广播形式,回复ACK报文)。

了解:
第五步:客户端进行重新登录,发送一个以包含之前DHCP服务端分配的IP地址信息的renew Request报文,
当服务端收到该请求后,会尝试让DHCP客户端继续使用该IP地址。并回答一个ACK报文。

第六步:DHCP获取到的IP地址都有一个租约,租约过期后,服务端将回收该IP地址,
所以如果客户端如果想继续使用该IP地址,则必须更新器租约。更新的方式就是,当当前租约期限过了一半后,
客户端都会发送renew报文来续约租期。


小实验:

test1 服务端 dhcp服务 192.168.233.10 192.168.233.100-192.168.233.110

test2 客户端 修改获取ip地址的方式。

dhcp服务端的端口是67

dhcp客户端的端口是68

第一步:先创建两个终端

打开工具栏里面的“发送键输入到所有会话”

在一个终端里面输入,另外一个终端也会同时写入命令

先关闭两个终端的防火墙及安全机制

我们对两个终端进行分配:

Test1作为服务端

Test2作为客户端

Test1既然作为服务端,我们就对其进行文件配置

先安装dhcp这个软件包

安装好软件包之后,我们对其进行配置文件

我们在这个里面对其进行文件配置

我们切换到dhcp-4.2.5里面去有一个文件名为dhcpd.conf.example

Yum安装的一些程序默认都在etc下面

这里也有一个conf文件,但这个文件里面是空的

所以我们要把dhcpd.conf.example复制到dhcp.conf里面来。

这个时候再打开看里面的内容就不一样了

注意在该所有的配置文件之前都要先进行备份,养成一个良好的习惯,这样即便是现有文件配置里面出现任何问题,都可以还原到一开始的文件配置,下面我们就对文件配置进行配置,注意我们这里的文件格式

相当于我人为的给他设置了一个还原点

然后我们在进入文件配置里面

然后我们通过mac地址来对主机分配一个固定的ip

然后我们保存退出

记住我们对文件配置完成之后一定要重新启动,否则是不生效的。

这时我们的服务端就配好了

接下来我们来配置客户端,客户端就比较简单了

进入test2这个终端里面输入

Vim /etc/sysconfig/network-scripts/ifcfg-ens33

把这里改成dhcp即可。然后wq!保存退出

到这里我们就不能远程操作了,我们回到虚拟机里面

我们打开两个终端窗口在其中一个里面重启网卡,在另外一个里面看获取过程中的日志

这时候我们的固定网址就配置好了。


  ftp文件传输协议

tp:file transfer protocol 文件传输协议 。 在网络上用于双向进行传输,也是一个应用程序

什么叫双向:我能传给你,你也能传给我

c/s 架构

不同的操作系统有不同的ftp的软件,使用的协议都是一样的。

FTP基于tcp协议,有两个端口

20 建立数据连接,传输数据

21 连接控制,传输ftp的控制命令

ftp也是有服务端和客户端,建立连接之后,双向进行的文件传输。

ftp 建立数据连接的模式:

主动模式:服务器主动向端口发起数据连接。

被动模式:服务器等待客户端发起连接。

一般常用的模式是被动模式,被动模式更容易穿越防火墙,默认就是被动模式。

第一步我们还是正常关闭防火墙和安装机制

我们安装ftp服务的软件包

然后我们改下他的配置文件

我们yum安装的所有软件都在etc下面

一般的配置文件都是以.conf为结尾

同样的我们先备份,这个和dhcp文件不一样,里面是有东西的

一定要养成这种习惯

之后我们进行文件配置

我们演示一下匿名用户登录的情况

我们把允许匿名用户上传/允许匿名用户创建目录这个给他取消注释

我们在下面一行加入一个允许匿名用户进行删除,重命名和覆盖等操作。

然后我们把这个服务重启一下(每次文件配置之后都要重启一下)

重启之后我们用windows来登录

这里我们不能切换

匿名用户默认的更目录:

/var/ftp/pub

上传是put 本地文件上传到服务器

下载 get 把服务器的文件下载到本地

先创建一个你好的文件,然后切换到windows里面

这时我们就看见有test.txt这个文件了

我们打开看一下

我们在从这个文件添加一些文字

匿名用户权限太高,存在安全隐患。

演示禁止匿名用户登录:

我们先创建一个用户,设置密码。

然后打开他的配置文件

把这个选项改成no,注意不要注释,注释掉默认还是yes

改完配置文件一定要重启。重要的话说三遍

登陆失败。

匿名用户不能登录了,我们来看看普通用户能不能登录

普通用户可以登录

不仅可以登录而且还可以切换目录。

普通用户随意且换目录也不行,只要是系统用户都禁锢在家目录。

我们在进入配置文件中更改文件

我们把这项注释掉。

我们把服务在重新启动(重要的事情说四遍)

这个时候就已经不能切换了,只能在家目录下。(是所有用户管理员也一样


黑名单和白名单:

黑名单:在名单上的不允许登录 允许所有,拒绝个别

白名单:只有在名单上的才允许登录 允许个别。拒绝所有

我们还是进入文件配置

这个就是黑名单,这时普通用户还能继续登录。我们把它添加到黑名单里面去。

这里不用重启,直接生效!  这是再看他的登录情况

直接登录不进去。

白名单也是进入文件配置里面改

把刚才设置黑名单的选项改成no即可

但是这里我们需要重启

现在我们这个普通用户就能登录了。其他用户不在我们这个名单上就登录不了。

白名单上面有个root,但是他不能登录

为什么root就不行呢?他明明在白名单上面。

这是他最后一道保险

我们进入这个里面看一下

这是白名单里面的黑名单:虽然他在白名单上面,但是只要在这个黑名单里面的你也无法登录。

白名单里面的黑名单优先级高于白名单。

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

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

相关文章

情景题之小明的Linux实习之旅:linux实战练习1(下)【基础命令,权限修改,日志查询,进程管理...】

小明的Linux实习之旅:基础指令练习情景练习题下 前景提要小明是怎么做的场景1:初识Linux,创建目录和文件场景2:权限管理,小明的权限困惑场景3:打包与解压,小明的备份操作场景4:使用G…

vue3 递归循环展示下级盒子

index.vue主文件 <template><div><RecursiveCard :data"rootTask" /></div> </template><script> import { reactive } from vue; import RecursiveCard from ./test.vue; // 递归组件的路径export default {components: {Recu…

textattack报错:不能导入自定义search_methods (cannot import name ‘xxx‘ from ‘xxx‘)

1. 报错信息 ImportError: cannot import name AAA from textattack.search_methods (/home/666/anaconda3/envs/textattack37_env/lib/python3.7/site-packages/textattack/search_methods/__init__.py)2. 出错简述 贴一段test1.py的模块导入 #建议使用&#xff01; import…

后方碰撞预警系统技术规范(简化版)

后方碰撞预警系统技术规范(简化版) 1 系统概述2 预警区域3 预警目标4 功能需求功能条件5 显示需求6 指标需求1 系统概述 后方碰撞预警系统RCW(Rear Collision Warning)是在后方车辆即将与自车发生碰撞之前,激活危险警告灯以较高频率闪烁,从而吸引后方驾驶员的注意力,避免…

Redis 5种常用数据类型

目录 Redis简介 1.字符串 string 2.哈希 hash 3.列表 list 4.集合 set 5.有序集合 sorted set / zset Redis简介 Redis&#xff0c;全称Remote Dictionary Server&#xff0c;是一个开源的、内存中的数据结构存储系统。它可以用作数据库、缓存和消息中间件&#xff0c;支…

常用的通信协议

最近在做项目&#xff0c;用到了一些通信协议&#xff0c;这里详细整理一下相关的通信协议&#xff0c;方便以后查阅。 常用的通信协议 单工 半双工 全双工单工通信&#xff08;Simplex Communication&#xff09;半双工(Half-duplex Communication)全双工&#xff08;Full-dup…

【MySQL】聊聊唯一索引是如何加锁的

首先我们要明确&#xff0c;加锁的对象是索引&#xff0c;加锁的基本单位是next-key lock&#xff0c;由记录锁和间隙锁组成。next-key是前开后闭区间&#xff0c;间隙锁是前开后开区间。根据不同的查询条件next-key 可能会退化成记录锁或间隙锁。 在能使用记录锁或者间隙锁就…

视觉大模型(VLLM)学习笔记

视觉多模态大模型&#xff08;VLLM&#xff09; InternVL 1.5 近日&#xff0c;上海人工智能实验室 OpenGVLab 团队、清华大学、商汤科技合作推出了开源多模态大语言模型项目InternVL 1.5&#xff0c;它不仅挑战了商业模型巨头例如 GPT-4V 的霸主地位&#xff0c;还让我们不禁…

通用信息提取数据预处理

train_data./datasets/duuie output_folder./datasets/duuie_pre ignore_datasets["DUEE", "DUEE_FIN_LITE"] schema_folder./datasets/seen_schema # 对CCKS2022 竞赛数据进行预处理 import shutil # shutil.copytree(train_data,output_folder) impor…

Mysql 的分布式策略

1. 前言 MySQL 作为最最常用的数据库&#xff0c;了解 Mysql 的分布式策略对于掌握 MySQL 的高性能使用方法和更安全的储存方式有非常重要的作用。 它同时也是面试中最最常问的考点&#xff0c;我们这里就简单总结下 Mysq 的常用分布式策略。 2. 复制 复制主要有主主复制和…

5 个你不知道的隐藏 CSS 属性

层叠样式表 (CSS) 是网页设计的骨架&#xff0c;它可以帮助我们轻松的设置网页的样式和格式。虽然大多数的 CSS 属性&#xff0c;例如颜色、字体大小和边距都被大家熟知&#xff0c;但还有许多鲜为人知的属性可以帮助我们设计添加功能。在这篇文章中&#xff0c;我们将介绍 5 个…

GD32F4XX的ISP方式下载程序时的串口选择

官方资料 详细信息可参考GD32F4xx的用户手册&#xff0c;第 1.4 章节 引导配置 。 版本是 &#xff1a;GD32F4xx_User_Manual_Rev3.0_CN 资料链接: https://www.gd32mcu.com/cn/download/6?kwGD32F4

【解读】小提琴图

ref&#xff1a;解读文献中的箱线图&#xff08;Box-plot&#xff09;和小提琴图&#xff08;Violin-plot)&#xff09;_小提琴图和箱线图的区别-CSDN博客小提琴图展示了每个变量的数据分布情况&#xff0c;通过图中的“小提琴”形状可以看出数据的密度和分布情况。 在图中&…

Layui实现下拉多选功能

1、问题概述? 提供源码下载 在项目中有很多地方需要使用到下拉框,并且实现选择多个信息,下面是展示。 支持如下功能: 1、分页 2、主题自定义 3、国际化 4、下拉方向 5、Tips修改等 6、Style自定义样式 7、取值 8、赋值 2、资源准备及测试? 2.1、资源下载

管理数据必备;侦听器watch用法详解,vue2与vue3中watch的变化与差异

目录 一、侦听器&#xff08;watch&#xff09;是什么&#xff1f; 二、Vue2中的watch&#xff08;Options API&#xff09; 2.1、函数式写法 2.2、对象式写法 ①对象式基础写法 ②回调函数handler ③deep属性 ④immediate属性 三、Vue3中的watch 3.1、向下兼容&#xff…

Qt实现简易播放器

效果如图 源码地址&#xff1a; 简易播放器: 基于Qt的简易播放器&#xff0c;底层采用VLC源码 - Gitee.com GitHub:GitHub - a-mo-xi-wei/easy-player: 基于Qt的调用VLC的API的简易播放器

Running Gradle task ‘assembleDebug‘ Flutter项目

基于Android方面运行Flutter项目一直卡在 Launching lib\main.dart on Android SDK built for x86 in debug mode… Running Gradle task ‘assembleDebug’… 基础原因&#xff1a; 默认存放Gradle插件包的Maven仓库是国外(需VPN) 我的原因&#xff1a; 缺少JDK和缺少Androi…

tcp协议中机制的总结

目录 总结 分析 三次握手 总结 分析 其中,序列号不止用来排序,还可以用在重传时去重 确认应答是机制中的核心 因为都需要依靠应答来拿到协议字段,从而判断是否触发机制 保证可靠性的策略也可以提高效率,比如: 流量控制,可以根据多个因素来动态调整数据发送量拥塞控制也是,让…

支持YUV和RGB格式两路视频同时播放

1.头文件&#xff1a; sdlqtrgb.h #pragma once #include <QtWidgets/QWidget> #include "ui_sdlqtrgb.h" #include <thread> class SdlQtRGB : public QWidget {Q_OBJECTpublic:SdlQtRGB(QWidget* parent Q_NULLPTR);~SdlQtRGB(){is_exit_ true;//等…

现实转虚拟:Video2Game引领3D互动体验

在当今数字化时代&#xff0c;虚拟环境的创建对于游戏开发、虚拟现实应用和自动驾驶模拟器等多个领域至关重要。然而&#xff0c;传统的虚拟环境创建过程不仅复杂而且成本高昂&#xff0c;通常需要专业人员和专业软件开发工具的参与。例如&#xff0c;著名的《侠盗猎车手V》以其…