云计算【第一阶段(27)】DHCP原理与配置以及FTP的介绍

一、DHCP工作原理

1.1、DHCP概念

动态主机配置协议 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议,该协议允许服务器向客户端动态分配 IP 地址和配置信息。

DHCP协议支持C/S(客户端/服务器)结构,主要分为两部分:

1、DHCP客户端:通常为网络中的PC、打印机等终端设备,使用从DHCP服务器分配下来的IP信息,包括IP地址、DNS等。

2、DHCP服务器:所有的IP网络设定信息都由DHCP服务器集中管理,并处理客户端的DHCP请求。负责集中分配 各种网络地址参数(主要包括 IP 地址、子网掩码、广播地址、默认网关地址、DNS 服务器地址)

DHCP采用UDP作为传输协议,客户端发送消息到DHCP服务器的的67号端口,服务器返回消息给客户端的68号端口

DHCP 服务端和客户端需要保持通信,DHCP 基于 UDP 协议,双方都有可能会主动向对方发起通信,因此双方都需要监听端口。
Server 端:DHCP Server(运行 dhcp 服务)
UDP 服务:监听端口 67(bootps)
Client 端:DHCP Client(运行 dhcp 程序)
UDP 服务:监听端口 68 (bootpc)

注意:路由里通常有DHCP(动态主机配置协议)功能或者其他高级方式dhcp,所以现在企业不会在系统自己配置dhcp但是原理要搞清楚。


1.2、DHCP的作用

由于上网时间的不确定性以及使用人员的技术水平不同,为每位用户分配一个固定的 IP 地址,不仅造成了IP 地址的浪费,也会为 ISP 服务商带来高额的维护成本。而使用 DHCP 服务则有以下好处。

减少管理员的工作量。 
避免输入错误的可能。  
避免 IP 地址冲突。 
当网络更改 IP 地址段时,不需要再重新配置每个用户的 IP 地址。
提高了 IP 地址的利用率。 
方便客户端的配置。


DHCP 服务避免了因手动设置 IP 地址所产生的错误,同时也避免了把一个 IP 地址分配给多台工作站所造成的地址冲突。DHCP 提供了安全、可靠且简单的 TCP/IP 网络设置,降低了配置 IP 地址的负担。
 

1.3、DHCP的分配方式

自动分配   : DHCP 客户机第一次成功地从 DHCP 服务器获取到一个 IP 地址后, 就永久地使用这个 IP 地址。
手动分配   : DHCP 服务器管理员专门指定 IP 地址。
动态分配   : DHCP 客户机第一次从 DHCP 服务器获取到 IP 地址后,并非永久地使用该地址,而是在每次使用完后,DHCP 客户机就会释放这个 IP 地址,供其他客户机使用。

1.4、DHCP的租约过程

广播进行,先到先得 ,一个网络中只能有一个DHCP
四次回话
(1)客户机请求 IP 地址 当一个 DHCP 客户机启动时,客户机还没有 IP 地址,所以客户机要通过 DHCP 获取一个合法的地址。此时DHCP客户机以广播方式发送 DHCP Discover 发现信息来寻找 DHCP 服务器

(客户端在网络中搜索服务器)

(2)服务器响应 当 DHCP 服务器接收到来自客户机请求 IP 地址的信息时,它就在自己的 IP 地址池中 查找是否有合法的 IP 地址提供给客户机。如果有,DHCP 服务器就将此 IP 地址做上标记, 加入到 DHCP Offer 的消息中,然后 DHCP 服务器就广播一则 DHCP Offer 消息 

(服务器向客户端响应服务)

(3)客户机选择 IP 地址 DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP 服务器将该地址保留,这样该地址就不能再分配给另一个 DHCP 客户机。之后 DHCP 客户机会向服务器发送 DHCP Request 消息。

(客户端向目标服务器发送服务请求)


(4)服务器确定租约 DHCP 服务器接收到 DHCP Request 消息后,以 DHCP ACK 消息的形式向客户机广播成功确认,该消息包含有 IP 地址的有效租约和其他可配置的信息。当客户机收到 DHCP ACK 消息时,它就配置了 IP 地址,完成 TCP/IP 的初始化。

(服务器向客户端提供服务)

关于重新登录的情况
DHCP 客户机每次重新登录网络时,不需要再发送 DHCP Discover 信息,而是直接发送包含前一次所分配的 IP 地址的 DHCP Request 请求信息。 

更新租约
当dhcp服务器向客户机出租的ip地址租期达到50%时,就需要更新租约,客户机直接向提供租约的服务器发送dhcprequest包,要求更新现有的地址租约。

如果收到DHCP服务器回应的DHCP ACK报文,则租期更新成功(即租期从0开始计算)

如果收到DHCP NAK报文(不同意),则重新发送DHCP DISCOVER报文请求新的IP地址。

二、安装DHCP服务

不怎么用dhcp服务器的配置(了解)

2.1、实验步骤

1、yum安装dhcp服务
2、配置dhcp配置文件
3、启动服务
4、查看端口
5、验证服务

yum -y install dhcp

rpm -q dhcp

cat /etc/dhcp/dhcpd.conf

在初始状态没有配置,需要把模板拷贝过来 

cp  -fp  /usr/share/doc/dhcp*/dhcpd.conf.example    /etc/dhcp/dhcpd.conf

拷贝模板起名为dhcpd.conf

vim /etc/dhcp/dhcpd.conf         

编辑全局配置文件

systemctl start  dhcpd开启

查看状态

systemctl status dhcpd

测试

或者看到mac地址

或者

 

指定格式如下

重启

 

在window上

查看租约信息

less /var/lib/dhcpd/dhcpd.leases

释放端口

dhclient -r ens33

 

三、FTP

3.1、FTP的含义

File Transfer Protocol,文件传输协议,是典型的C/S架构的应用层协议,需要由服务端软件、客户端软件两个部分共同实现文件传输功能。FTP客户端和服务器之间的连接是可靠的,面向连接的,为数据的传输提供了可靠的保证。tcp协议:20
21端口: 用于传输指令
20端口:用于传输数据

只有传输的时候才会看见20端口

3.2、FTP的两种模式

它支持两种模式

  • Standard模式
  • 一种方式叫做Standard (也就是 Active,主动方式), Standard模式 FTP的客户端发送 PORT 命令到FTP server。

FTP 客户端首先和FTP Server的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。

  • Passive模式
  • 一种是 Passive (也就是PASV,被动方式)。Passive模式FTP的客户端发送 PASV命令到 FTP Server

在建立控制通道的时候和Standard模式类似,当客户端通过这个通道发送PASV 命令的时候,FTP server打开一个位于1024和5000之间的随机端口并且通知客户端在这个端口上传送数据的请求,然后FTP server 将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。

3.3、FTP作用与工作原理

主动模式的工作原理:
FTP 客户端连接到 FTP 服务器的 21 号端口,发送用户名和密码,客户端随机开放一个端口(1024 以上),发送PORT 命令到FTP 服务器,告知服务器客户端采用主动模式并开放端口,FTP 服务器收到PORT主动模式命令和端口后,通过服务器的 20 号端口和客户端开放的端口连接,发送数据,原理画图所示,(无论是主动还是被动模式,首先的控制通道都是先建立起来,只是在数据传输模式上的区别)


#2.2.2 被动模式的工作原理:
 PASV 是 Passive 的缩写,中文成为被动模式,工作原理:FTP 客户端连接到 FTP 服务器所监听的21 号端口,发送用户名和密码,发送 PASV 命令到 FTP 服务器,服务器在本地随机开放一个端口(1024 以上),然后把开放的端口告知客户端,而后客户端再连接到服务器开放的端口进行数据传输,原理画图所示。
 
 
注:以上的说明主动和被动,是相对于的 FTP server 端而判断,如果 server 去连接client开放的端口,说明是主动的,相反,如果 client去连接server开放的端口,则是被动。


总结:

主动模式:服务器主动发起数据连接
被动模式:服务器被动等待数据连接

FTP的使用

3.3 设置用户模式登录
设置本地用户验证访问ftp,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录)
#修改配置文件

vim /etc/vsftpd/vsftpd. conf
local_enable=Yes              #启用本地用户
anonymous_enable=NO          #关闭匿名用户访问
write_enable=YES              #开放服务器的写权限(若要上传,必须开启) 
local_umask=077               #可设置仅宿主用户拥有被上传的文件的权限(反掩码)
chroot_local_user=YES         #将访问禁锢在用户的宿主目录中
allow_writeable_chroot=YES    #允许被限制的用户主目录具有写权限

#anon_mkdir_write_enable=YES  注释    
#anon_other_write_enable=YES  注释

重启服务
systemctl restart vsftpd

ftp 192.168.10.12

ftp://zhangsan@192.168.10.12
修改匿名用户、本地用户登录的默认根目录
anon_root=/var/www/html       #anon_root 针对匿名用户
local_root=/var/www/html      #local_root针对系统用户

使用user_list用户列表文件
vim /etc/vsftpd/user_list
//末尾添加zhangsan用户
zhangsan


vim /etc/vsftpd/vsftpd.conf
userlist_enable=YES    #启用user_list用户列表文件
userlist_deny=NO       #设置白名单,仅允许user_list用户列表文件的用户访问。默认为YES,为黑名单,禁用

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

break 和 continue 的区别与用法

break 和 continue 的区别与用法 1、break 语句2、continue 语句3、总结 💖The Begin💖点点关注,收藏不迷路💖 在JAVA中,break 和 continue 是两种常用的控制流语句,它们主要用于在循环结构中改变程序的执行…

Nacos 进阶篇---集群:选举心跳健康检查劳动者(九)

一、引言 本章将是我们第二阶段,开始学习集群模式下,Nacos 是怎么去操作的 ? 本章重点: 在Nacos服务端当中,会去开启健康心跳检查定时任务。如果是在Nacos集群下,大家思考一下,有没有必要所有的…

无人直播系统源码开发:功能~优势~开发方法

自动直播通常是指通过自动化技术来实现实时内容分发的过程,它结合了流媒体技术和人工智能(如机器学习)。以下是自动直播实现的基本步骤: 内容采集:通过摄像头、手机等设备捕捉实时画面,并通过编码将其转换成…

rocketmq主从切换测试

服务器 192.168.1.23 nameserver、broker nameserver、brokerA,brokerB 192.168.1.35 nameserver、broker nameserver、brokerA,brokerB 192.168.1.88 nameserver nameserver 主从切换 关闭master:等待几秒钟23成为新的master slave消费测…

超市收银系统源码

今天给大家分享一套线上线下打通的收银系统,安卓/win双端线下收银台,可DIY、多模板的三端线上小程序商城,除此之外ERP进销存管理、商品管理、会员营销都很完善。 重点是系统支持OEM贴牌独立部署和全开源源码,非常适合一些正在寻找…

南航秋招指南,线上测评和线下考试

南航秋招简介 南航作为国内一流的航空公司,对人才的需求量非常旺盛,每年也有很多专业对口的工作提供给应届毕业生,对于应届毕业生而言,一定要抓住任何一个应聘机会,并且在规定的范围内进行简历的提交,以便…

CSS content 计数器

CSS content 计数器 CSS 计数器通过一个变量来设置,根据规则递增变量。 使用计数器自动编号 CSS 计数器根据规则来递增变量。 CSS 计数器使用到以下几个属性: counter-reset - 创建或者重置计数器,给计算器命名。注意声明计算器不能在自身…

孕产妇(产科)管理信息系统源码 三甲医院产科电子病历系统成品源代码

孕产妇(产科)管理信息系统源码 三甲医院产科电子病历系统成品源代码 医院智慧孕产是一种通过信息化手段,实现孕产期宣教、健康服务的院外延伸,对孕产妇健康管理具有重要意义,是医院智慧服务水平和能力的体现。实行涵盖婚前检查、孕期保健、产后康复的一…

如何把harmonos项目修改为openharmony项目

一开始分不清harmonyos和openharmony,在harmonyos直接下载的开发软件,后面发现不对劲,打脑阔 首先你要安装对应版本的开发软件,鸿蒙开发是由harmonyos和openharmony官网两个的,找到对应的地方下载对应版本的开发软件&…

C#-反射

一、概念 反射(Reflection)在C#中是一种非常重要的特性,它为开发者提供了在运行时获取和操作关于类型、成员、属性、方法等的详细信息的能力。通过反射,开发者可以在程序运行期间动态地创建对象、调用方法、设置属性值以及进行其…

【Java开发实训】day01

目录 1.Java开发步骤 2.目录的三个表达方法 3.Java的三种注释方法 4.文档注释的作用 🌈嗨!我是Filotimo__🌈。很高兴与大家相识,希望我的博客能对你有所帮助。 💡本文由Filotimo__✍️原创,首发于CSDN&…

运维锅总详解数据一致性

本文首先对数据一致性进行简要说明,然后画图分析展示9种数据一致性协议的工作流程,最后给出实现这9种协议的例子。希望对您理解数据一致性有所帮助! 一、数据一致性简介 数据一致性是数据库和分布式系统中的一个关键概念,它确保…

【Mac】Folder Icons for mac(文件夹个性化图标修改软件)软件介绍

软件介绍 Folder Icons for Mac 是一款专为 macOS 设计的应用程序,主要用于个性化和定制你的文件夹图标。以下是它的主要特点和使用方法: 主要特点: 个性化文件夹图标 Folder Icons for Mac 允许用户为 macOS 上的任何文件夹定制图标。你…

怎样优化 PostgreSQL 中对布尔类型数据的查询?

文章目录 一、索引的合理使用1. 常规 B-tree 索引2. 部分索引 二、查询编写技巧1. 避免不必要的类型转换2. 逻辑表达式的优化 三、表结构设计1. 避免过度细分的布尔列2. 规范化与反规范化 四、数据分布与分区1. 数据分布的考虑2. 表分区 五、数据库参数调整1. 相关配置参数2. 定…

融云入驻首个数字生态出海基地,加速构建数字经济出海创新生态

7 月 3 日,“2024 全球数字经济大会”重要专题论坛“2024 数字生态出海发展论坛”在北京国家会议中心举行。 论坛由全球数字经济大会组委会主办,北京市经济和信息化局、北京市政务服务和数据管理局、大兴区人民政府共同承办。来自阿联酋、日本、古巴、…

Chain-of-Verification Reduces Hallucination in Lagrge Language Models阅读笔记

来来来,继续读文章了,今天这个是meta的研究员们做的一个关于如何减少LLM得出幻觉信息的工作,23年底发表。文章链接:https://arxiv.org/abs/2309.11495 首先,这个工作所面向的LLM的问答任务,是list-based q…

动态粒子发射特效404网站HTML源码

源码介绍 动态粒子发射404网站HTML源码,粒子内容可以进行修改,默认是4,0数字还有一个页面不存在英文,可以自行修改,喜欢的朋友可以拿去使用,源码是html,记事本打开修改即可,鼠标双击…

线程池的合理使用

线程池的合理使用 一、简介二、为什么要使用线程池三、核心参数四、如何合理配置线程参数1.1 corePoolSize && maximumPoolSize1.2 Handler 拒绝策略1.2.1AbortPolicy:优势:劣势: 1.2.2 DiscardPolicy:优势:劣…

海外媒体发稿-全媒体百科

全球知名媒体机构 在全球范围内,有许多知名的新闻机构负责报道世界各地的新闻事件。以下是一些国外常见的媒体机构: AP(美联社)合众国际社(UPI)AFP(法新社)EFE(埃菲通讯社)Europa …