DHCP服务详解(原理+搭建)

文章目录

  • 详解DNS服务的搭建与解析
  • 参考阅读
  • 前言
  • 一、工作原理
    • 1.1 租约四部曲
    • 1.2 续租
  • 二、DHCP服务器的搭建
    • 2.1 配置文件
    • 2.2 搭建步骤
      • 【基础—IP池/固定IP】
      • 【进阶—超级作用域】
      • 【高级—DHCP中继】
    • 2.3 总结

详解DNS服务的搭建与解析

工作过程简单解释

1、首先,客户端向DHCP服务器发送一个DHCPdiscover的 文(广播发送,可以理解为海投简历)

2、服务器端对客户端回应DHCPoffer (单播回应,可以理解为企业提供offer)

3、客户端向服务器发送DHCPrequest(广播发送,可以理解为告诉那些收到我的简历的企业,我不去你们那里)

4、服务器端向客户端回复一个DHCPack(单播回应,可以理解为企业与求职者的确认关系)

总结:
客户端发送的 文都是广播包,第一次的广播是为了让所有的企业看到自己,第二次广播是为了告诉其他企业自己已签到offer

(2)服务器端:提供客户端 络相关的租约以供选择。(DHCP Offer)
DHCP服务器在监听到客户端发出的dhcp discover广播后,会针对这个客户端的硬件地址( MAC)与本身的设置数据进行下列工作:

到服务器的日志文件中查找该用户之前是否曾经租用过某个IP,若有且该IP目前无人使用,则提供此IP给客户端。
若配置文件针对该MAC地址提供特定的固定IP时,则提供该固定的IP给客户端。
若不符合上述两个条件,则随机选取当前没有被使用的IP参数给客户端,并记录下来。

(3)客户端:决定选择DHCP服务器提供的 络参数租约并向服务器确认。
由于局域 内可能并非仅有一台DHCP服务器,但客户端仅能接收一组 络参数租约,因此客户端只会挑选其中一个DHCP offer(通常是最先抵达的那个)。当决定好使用此服务器的 络参数租约后,客户端便开始使用这组 络参数来配置自己的 络环境。此外,客户端会发送一个dhcp request广播数据包给所有物理 段内的主机,告知已经接受该服务器的租约(此时若有两台以上的DHCP服务器,则这些没有被接受的服务器会收回该IP租约)。同时,客户端还会向 络发送一个ARP封包(免费ARP),查询 络上面有没有其他机器使用该IP地址;如果发现该IP地址已经被占用,客户端则会送出一个DHCPDECLIENT包给DHCP服务器,拒绝接受其DHCP offer,并重新发送DHCP discover信息。

(4)服务器端:记录该次租约行为后并向客户端发送响应数据包信息以确认客户端的使用。
当服务器端收到客户端的确认选择后,服务器会回送确认的dhcp ack响应数据包,并且告知客户端这个 络参数租约的期限,并且开始租约计时。那么该次租约何时会到期而被解约,有以下几种情况:
客户端脱机:关闭 络接口、重新启动、关机等行为,都算是脱机状态,这个时候server端就会将该IP地址收回,并放到server的备用区中,以便日后使用。
客户端租约到期:dhcp server端发放的IP有使用的期限,客户端使用这个IP到达期限规定的时间,而且没有重新提出DHCP的申请时,server端就会将该IP收回,这个时候就会断线。但用户也可以向DHCP服务器再次要求分配IP。

? 由于目前的DHCP客户端程序大多数会主动依据租约时间去重新申请IP,所以即使有租约期限,也不需要在某个时间点手动去重新申请IP。一般情况下,假设租约时间是T小时,那么客户端程序在0.5T时会主动向DHCP服务器发出重新要求 络参数的数据包。如果这次数据包请求没有成功,那么在0.875T后还会再次发送数据包一次。

正因如此,所以服务器端会启动port67监听客户端请求,而客户端会启动port68主动向服务器请求。

1.2 续租

注意:当软件安装后,主配置文件中默认是没有内容的

详细步骤

1、首先关闭虚拟机自带的DHCP功能;防火墙、SENLinux

5、重启服务后测试

在客户端上进行IP的获取,留意以下MAC地址,一会检查日志文件会用到

简单解释一下

  1. 首先服务器收到客户端的discover请求,即discover
  2. 服务器将101这个地址分配给请求的客户端,即offer
  3. 服务器收到客户端的这个地址的请求,即request
  4. 服务器发送一个这个地址的确认,即ack

对于固定IP的配置其实就是修改主配置文件中的内容即可

需求:如果一个客户端不想在IP池中被分配IP,而是想要一个固定的IP

步骤:

1、首先,要获取到这个客户端的 卡的MAC地址;在客户端上使用ifconfig命令即可获得

3、重启服务测试即可;可见与预期一致

实验步骤

1、关闭防火墙、Senlinux、虚拟机的 卡这几步跟第一个实验相同

2、在DHCP服务器上开启子 卡;复制 卡的配置文件即可

在子 卡的配置文件中,不需要删除MAC、UID,因为这是一个子 卡,只需修改一下IP即可

4、重启服务后,使用两个客户机进行测试,可见与预期相符,分别分配到了10和20段的IP


【高级—DHCP中继】

DHCP中继被称为DHCP Relay;是为了实现不同子 和物理 段之间处理和转发dhcp信息

实验环境

注意,使用两个客户机来代称一类客户机

实验设计

3、安装软件、修改主配置文件

主配置文件中对于不需要的subnet删除或注释即可;然后配置所需的subnet

  • 开启路由转发并使其生效

  • 开启中继服务

5、客户端进行测试

VM10的客户机

可见,与预期相符


2.3 总结

  • 根据不同的DHCP域的需求来部署配置不同的DHCP服务器

  • 扩大作用域与否要针对客户机是否在一个子 中

  • 关于DHCP的攻击与防护如下

    浅谈DHCP欺骗攻击

    《协议栈攻击》思维导图


文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux25131 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年9月6日
下一篇 2020年9月6日

相关推荐