DHCP原理及配置

目录

一、DHCP服务

1.了解DHCP服务

2.使用DHCP服务的好处

3.DHCP的分配方式

 4.使用DHCP动态配置主机地址

4.1 DHCP服务

4.2 可分配的地址信息主要包括

 二、DHCP 租约过程

1.客户机请求IP地址

2. 服务器响应

3. 客户机选择IP地址

 4. 服务器约定租约

 5.重新登录

 6.更新租约

 三、虚拟机进行DHCP场景实验

 1.DCHPD 实验

2.vsftp 实验

 2.1 设置匿名访问

2.2配置本地访问ftp ,禁止匿名用户登录

2.3 黑名单和白名单的使用 


一、DHCP服务

1.了解DHCP服务

DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议),由Internet工作任务小组设计开发专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议。

2.使用DHCP服务的好处

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

3.DHCP的分配方式

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

 4.使用DHCP动态配置主机地址

4.1 DHCP服务
  • 为大量客户机自动分配地址,提供集中管理
  • 减轻管理和维护成本、提高网络配置效率
4.2 可分配的地址信息主要包括
  • 网卡的IP地址、子网掩码
  • 对应的网络地址、广播地址
  • 默认网关地址
  • DNS服务器地址

 二、DHCP 租约过程

客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程

分为四个步骤:

1.客户机请求IP地址

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

2. 服务器响应

DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机

如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer消息

3. 客户机选择IP地址

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

 4. 服务器约定租约

DHCP服务器接收到DHCPRequest消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息

当客户机收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化

 5.重新登录

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

 6.更新租约

当DHCP服务器向客户机出租的IP地址租期达到50%时就需要更新租约

客户机直接向提供租约的服务器发送DHCP Request包要求更新现有的地址租约

 三、虚拟机进行DHCP场景实验

实验环境:三台虚拟机 centos 7.1 :DHCP服务端(为了实验方便,将此IP定义为该网段的网关)centos 7.1 :DHCP服务端   :windows :DHCP客户端

网络环境:① 均要VMnet2 仅主机模式   :关闭虚拟编辑中的DHCP功能  ③ :确定好VM2中主机模式的IP地址是多少   :注意DHCP服务端的网卡信息配置 (GATEWAY 不要写)

系统环境:① :先安装好DHCP服务,再进行修改网络配置  :或者,修改完网络配置后,配置本地yum仓库,再安装DHCP :三台机器都要关闭防火墙、核心防护。

systemctl stop filewalld     #关闭防火墙
systemctl disanle filewalld  #永久关闭
setenforce 0   #关闭安全防护

 1.DCHPD 实验

实验目的:在单位时,运用DHCP协议设置地址池,让公司员工的主机都能自动识别,并且分发范围内的IP地址作为服务器的主机不用调整网卡的dhcp状态
 

ip a  #找到服务端的IP地址 
vim /etc/sysconfig/network-scripts/ifcfg-ens33 
DHCP->static
IPADDR=192.168.216.2
NETMASK=255.255.255.0    #配置IP地址及关闭DHCP
wq
systemctl restart network  #重启网络

配置本地yum
cd /etc/yum.repos.d
mkdir repobak
mv *.repo  repobak
vim local

[local]
name=local
baseurl=file:///mnt
gpgcheck=0
enabled=1

yum clean all && yum makecache fast   #配置完成
mount /dev/cdrom /mnt     #挂载

yum  install -y  dhcp    #安装dhcp
cd /usr/share/doc/dhcp-4.2.5/
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf   #复制并且覆盖
cp dhcpd.conf.example  /etc/dhcp/dhcp.conf
y
vim /etc/dhcp/dhcpd.conf  #编辑DHCP

subnet 192.168.216.0 netmask 255.255.255.0{
 range 192.168.216.10  192.168.216.30;
  option routers 192.168.216.2;
}                                               #复制四行并写入

开第二台Linux 必须是主机模式

vim /etc/sysconfig/network-scripts/ifcfg-ens33 
static-> DHCP
wq
systemctl restart network    #重启网卡
  
IP a   #查看IP

less /var/lib/dhcpd/dhcpd.lease   #查看租约

 ps: 实在完成不了 换一台客户机

2.vsftp 实验

FTP是文件传输协议(FileTransferProtocol)的英文简称,而中文简称为"文传协议"。用于互联网上的控制文件的双向传输。

同时,它也是一个应用程序(Application)。
基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。

 FTP服务器默认使用TCP协议的20、21端口与客户端进行通信。

  • 20端口用于建立数据连接,并传输文件数据
  • 21端口用于建立控制连接,并传输FTP控制命令

 ftp的数据连接模式

  • 主动模式:服务器主动发起数据连接
  • 被动模式:服务器被动等待数据连接
 2.1 设置匿名访问
yum install -y vsftpd   #安装vsftpd
cd /etc/vsftpd
ls                # 切换到安装好vsftpd目录下查看文件
cp vsftpd.conf vsftpd.conf.bak   # 将vsftpd的配置文件进行备份

vim /etc/vsftpd/vsftpd.conf

anonymous_enable=YES            #开启匿名用户访问。默认已开启
local_enable=YES                #允许系统用户进行访问(useradd zhangsan)
write_enable=YES                #开放服务器的写权限(若要上传,必须开启)。默认已开启
anon_umask=022                  #设置匿名用户所上传数据的权限掩码(反掩码)。o:没有要插入代码

让匿名用户拥有访问本机和各种权限 
anon_umask=022                  #设置匿名用户所上传数据的权限掩码(反掩码)。
anon_upload_enable=YES          #允许匿名用户上传文件。默认已注释,需取消注释
anon_mkdir_write_enable=YES     #允许匿名用户创建(上传)目录。默认已注释,需取消注释
anon_other_write_enable=YES     #允许删除、重命名、覆盖等操作。需添加

重启vsftpd服务,关闭安全防护
systemctl restart vsftpd
systemctl stop firewalld
setenforce 0

 cd /var/ftp/pub 这是匿名用户的默认根目录
chmod 777 /var/ftp/pub   #为实验给权限
echo 'hello world!' > centos.txt

#匿名访问测试
在Windows系统打开开始菜单,输入cmd 命令打开命令提示符
#建立ftp连接
ftp 192.168.216.2
#匿名访问,用户名为ftp,密码为空,直接回车即可完成登录
ftp> pwd          #匿名访问ftp的根目录为Linux系统的/var/ftp/目录
ftp> ls           #查看当前目录
ftp> cd pub       #切换到pub目录ftp> get文件名    #下载文件到当前Windows本地目录
ftp> cd pub
250 Directory successfully changed.
ftp> ls
ftp> get centos.txt #获取目录中的文件下载到电脑
ftp> ls
ftp> put windows.txt    #上传文件

2.2配置本地访问ftp ,禁止匿名用户登录
vim /etc/vsftpd/vsftpd.conf
local_enable=Yes            #启用本地用户
anonymous_enable=NO     	#关闭匿名用户访问
write_enable=YES            #开放服务器的写权限(若要上传,必须开启)
local_umask=077             #可设置仅宿主用户拥有被上传的文件的权限(反掩码)

systemctl restart vsftpd    #重启vsftpd

useradd zhangsan
echo abc123 | passwd  --stdin  zhangsan
useradd lisi
echo abc123 | passwd  --stdin  lisi

win  cmd:
ftp 192.168.233.21 
zhangsan
abc123

centos服务端:
对本地用户访问切换目录进行限制
添加、切换目录的限制配置 :
vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES   		        #将访问禁锢在用户的宿主目录中 取消注释即可
allow_writeable_chroot=YES		 #允许被限制的用户主目录具有写权限

systemctl restart vsftpd

win  cmd:
ftp 192.168.10.2
name:ftp    #匿名用户
#访问拒绝
 
ftp 192.168.10.2
name:zhangsan
passwd:123
#访问成功
2.3 黑名单和白名单的使用 
  • 黑名单:在黑名单上标记的用户,是我们禁止访问的对象。
  • 白名单:在白名单上标记的用户是我们允许访问的对象,白名单比黑名单的制定更为严格和安全
vim /etc/vsftpd/vsftpd.conf
 
黑名单:
userlist_enable=YES				#启用user_list用户列表文件
userlist_deny=YES				#默认为YES,为黑名单,禁止user_list名单里的用户进行访问
 
白名单:
userlist_enable=YES				#启用user_list用户列表文件
userlist_deny=NO				#NO为白名单,仅允许user_list名单里的用户访问。

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DHCP Snooping是一种网络安全技术,用于防止恶意DHCP服务器DHCP欺骗攻击。它基于交换机上的DHCP Snooping表,通过检查和验证DHCP消息的源MAC地址、IP地址和租约信息,确保只有授权的DHCP服务器可以提供IP地址给客户端。 工作原理如下: 1. 所有接入交换机端口默认为未信任状态,不允许发送DHCP请求或响应。 2. 管理员将指定的接入交换机端口标记为信任状态,允许发送DHCP消息。 3. 交换机在信任端口上监听DHCP Discover消息,并将源MAC地址、IP地址和租约信息添加到DHCP Snooping表中。 4. 当交换机接收到DHCP Offer、Request和Ack消息时,会验证源MAC地址、IP地址和租约信息是否与DHCP Snooping表中的相符。 5. 如果验证通过,交换机将允许该消息继续转发。否则,该消息将被丢弃。 配置步骤如下: 1. 开启DHCP Snooping功能: ``` switch(config)# ip dhcp snooping ``` 2. 标记信任和非信任接口: ``` switch(config)# interface <interface> switch(config-if)# ip dhcp snooping trust ``` 3. 配置DHCP绑定: ``` switch(config)# ip dhcp snooping binding <mac-address> vlan <vlan-id> interface <interface> ``` 4. 配置DHCP Snooping数据库保存位置(可选): ``` switch(config)# ip dhcp snooping database <filename> ``` 5. 配置DHCP Snooping选项(可选): ``` switch(config)# ip dhcp snooping option <option-name> <option-value> ``` 请注意,具体的配置步骤可能因不同的交换机型号和操作系统而有所差异,请参考相关厂商文档或命令行帮助进行配置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值