DHCP原理与配置

本文介绍了DHCP服务的原理,包括其自动分配、手动分配和动态分配的方式,详细阐述了DHCP的租约过程,以及在Linux环境下安装DHCP服务器的步骤。同时,通过实验展示了如何在虚拟环境中配置DHCP,并探讨了FTP文件传输的基本概念和权限设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、了解DHCP服务

1、DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)

(1)由Internet工作任务小组设计开发
(2)专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议

2、使用DHCP的好处

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

3、DHCP的分配方式

(1)自动分配
分配到一个IP地址后永久使用
(2)手动分配
由DHCP服务器管理员专门指定IP地址
(3)动态分配
使用完后释放该IP,供其它客户机使用

二、DHCP的租约过程

客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程,分为四个步骤:
在这里插入图片描述

1、客户机请求IP地址

(1)当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
(2)此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找DHCP服务器

2、服务器响应

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

3、客户机选择IP地址

DHCP客户机从接受到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机

4、服务器确定租约

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

5、重新登录

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

6、更新租约

(1)当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约
(2)客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约

三、安装DHCP服务器

1、DHCP服务器软件

(1)CentOS光盘中的 dhcp-4.2.5-47.el7.centos.x86_64.rpm
(2)DHCP软件包的主要文件
主配置文件:/etc/dhcpd.conf
执行程序:/usr/sbin/dhcpd、 /usr/sbin/dhcrelay

2、在ensp中配置DHCP 中继

dhcp enable									#开启DHCP功能

interface Vlanif10
 ip address 192.168.10.254 255.255.255.0
 dhcp select relay							#开启DHCP中继功能
 dhcp relay server-ip 192.168.66.120			#指向DHCP服务器的地址

interface Vlanif20
 ip address 192.168.20.254 255.255.255.0
 dhcp select relay
 dhcp relay server-ip 192.168.66.120

interface Vlanif100
 ip address 192.168.100.254 255.255.255.0
 dhcp select relay
 dhcp relay server-ip 192.168.66.120

2、在虚拟机中配置

yum install -y dhcp 
cd /etc/dhcp/
 ls
 less dhcpd.conf 
cd /usr/share/doc/dhcp-4.2.5/
 ls
 less dhcpd.conf.example 
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 

vim  /etc/dhcp/dhcpd. conf        
#设置全局配置参数
default-lease-time  21600;         # 默认租约为6小时,单位为秒
max-lease-time    43200;           #最大租约为12小时,单位为秒
option  domain-name  "xxxx.com";           #指定默认域名
option domain-name-servers  8.8.8.8;         #指定DNS服务器地址
ddns-update-style  none;                  #禁用DNS动态更新

#subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet  192.168.66.0  netmask  255.255.255.0 {             #声明要分配的网段地址
     range 192.168.66.100   192.168.66.200;                    #设置地址池
     option routers 192.168.66.254;                                   #指定默认网关地址
}

subnet 192.168.1.0  netmask 255.255.255.0 {
   range 192.168.1.100  192.168.1.200;
   option  routers  192.168.1.254;
}
   
subnet 192.168.2.0  netmask  255.255.255.0 {
   range 192.168.2.100  192.168.2.200;
   option routers 192.168.2.254;
}   

#host主机声明(给单机分配固定的 IP 地址)
host hostname {										#指定需要分配固定 IP地址的客户机名称
  hardware ethernet 00:c0:c3:22:46:81;				#指定该主机的 MAC地址
  fixed-address 192.168.10.100;						#指定保留给该主机的 IP地址
}


#关闭防火墙并启动服务
systemctl start dhcpd
systemctl stop firewalld
setenforce 0

netstat -anpu | grep ":67"

#如果DHCP服务启动失败,可以查看日志文件
tail -f /var/log/messages

三、DHCP分配实验

1、在ensp中建立网络模型

在这里插入图片描述

设置Clound1
在这里插入图片描述

2、设置DHCP中继

设置SW1在这里插入图片描述
设置SW2
在这里插入图片描述

3、在虚拟机上

在这里插入图片描述

四、FTP文件传输

FTP服务-----用来传输文件的协议
FTP服务器默认使用TCP协议的20、 21端口于客户端进行通信
20端口用于建立数据连接,并传输文件数据
21端口用于建立控制连接,并传输FTP控制命令
FTP数据连接分为主动模式和被动模式
主动模式:服务器主动发起数据连接
被动模式:服务器被动等待数据连接

1、设置匿名用户访问的FTP服务(最大权限)

yum install -y vsftpd
cd /etc/vsftpd/
cp vsftpd.conf vsftpd.conf.bak

----修改配置文件----
vim /etc/vsftpd/vsftpd.conf
anonymous enable=YES             #开启匿名用户访问,默认已开启
write_enable=YES                 #开放服务器的写权限(若要上传,必须开启) ,默认已开启
anon_umask=022                  #设置匿名用户所上传数据的权限掩码(反掩码),默认已开启
anon_upload_enable=YES          #允许匿名用户上传文件。默认已注释,需取消注释
anon_mkdir_write_enable=YES     #允许匿名用户创建(上传)目录。默认已注释,需取消注释
anon_other_write_enable=YES     #允许删除、重命名、覆盖等操作。需添加

----为匿名访问ftp的根目录下的 pub子目录设置最大权限,以便匿名用户上传数据-----
chmod 777  /var/ftp/pub/

----开启服务,关闭防火墙和增强型安全功能-----
systemctl start vsftpd
systemctl stop firewalld
setenforce 0

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

2、匿名访问测试

在windows系统打开 "开始" 菜单,输入 cmd 命令打开  命令提示符
----建立ftp连接------
ftp 192.168.80.10
----匿名访问,用户名为ftp,密码为空,直接回车即可完成登录
ftp> pwd        #匿名访问ftp的根目录为Linux系统的/var/ftp/目录
ftp> ls         #查看当前目录
ftp> cd pub     #切换到pub目录
ftp> get 文件名   #下载文件到当前windows本地目录
ftp> put文件名   #上传文件到ftp目录
ftp> quit        #退出

在这里插入图片描述

3、设置本地用户验证访问 ftp,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录)

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

---重启服务-----
systemctl restart vsftpd

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值