1、什么是DHCP
Dynamic Host Configuration Protocol 动态主机配置协议
作用:自动分配IP地址
2、DHCP相关概念
地址池/作用域:(IP、子网掩码、网关、DNS、租期),DHCP的端口号是UDP 67/68
3、DHCP优点
减少工作量、避免IP冲突、提高地址利用率
4、DHCP原理
也称为 DHCP 的租约过程,分为4个步骤:
1)客户机发送DHCP Discovery 广播包
客户机广播请求IP地址(包含客户机的MAC地址)
2)服务器响应DHCP Offer 广播包
服务器响应提供的IP地址(不包含子网掩码、网关等参数)
3)客户机发送DHCP Request 广播包
客户机选择IP(确认使用哪个IP)
4)服务器发送DHCP ACK 广播包
服务器确定了租约,并提供网卡详细参数IP、子网掩码、网关、DNS、租期等
5、DHCP续约
当租约到50%之后,客户机会再次发送DHCP Request包,请求续约,如服务器未响应,则继续使用并在87.5%再次发送DHCP Request包,请求续约,如仍未响应,则释放IP地址,重新发送DHCP Discovery包来获取IP。
当无任何服务器响应获取不了地址的时候,网卡就会自己生成一个IP(全球统一的,是一个无效地址不能上网):169.254.x.x/16,子网掩码:255.255.0.0,这样在DHCP服务器挂了之后还可以实现内部通信。
6、部署DHCP服务器
1)IP地址固定(服务器必须固定IP地址)
2)安装DHCP服务插件
点击确定之后,一定要选择下一步,然后等一会儿就安装完成了
这时候我们发现DHCP端口已经打开了
3)新建作用域及作用域选项
开始—管理工具—DHCP,双击打开DHCP服务,右键可以控制服务端口的关闭和开放
点击新建作用域—下一步
下一步,分配IP范围
下一步,添加分配IP中想要排除的部分IP
下一步,设置租约
下一步—是,现在配置这些选项(网关和DNS)
下一步让配置WINS服务器,不用管直接下一步
然后让激活,可以现在激活,也可以以后激活
这样作用域就建立好了
4)激活
5)客户机验证
发现获取失败,查看详细信息是因为它没有使用我们配置的DHCP服务器。
我们打开虚拟机设置,发现网络适配器是选择vmnet1。
而我的虚拟机的vmnet1中DHCP是开启的,他就会使用vmware的DHCP服务器来分配IP
解决方法:这时候我们可以选择将它关闭它或者重新选择网络适配器,注意不要选择vmware默认的虚拟网卡,我这里选择用vmnet2,两台机器都要做更改。
改完之后重新获取,发现它用了我们自己设置的DHCP服务器,成功!!!
打开服务器查看地址租约,已经分配
- ipconfig /release 释放IP(取消租约,或者改为手动配置IP,也可以取消租约)
- ipconfig /renew 重新获取IP(当有IP时,发送Request包进行续约;当无IP时,发送Discovery包重新获取IP)
7、地址保留
首先我们看一下地址保留的作用,简单来说就是你想要动态分配给你的IP是自己设置的,就可以使用它
服务器会记住你的MAC地址
8、选项优先级
作用域选项>服务器选项
当一台服务器上有多个作用域时,可以在服务器选项上设置DNS服务器,设置之后,如果作用域没有单独配置自己的作用域选项,则会继承服务器选项的配置,如果有自己的配置,则用自己的配置。
9、DHCP备份与恢复
- 备份
- 还原
注意:服务器的IP与提供的地址池里的IP必须在同一网段
10、DHCP攻击与防御
1)攻击DHCP服务器:频繁的发送伪装DHCP请求(伪装MAC地址),直到将DHCP地址池资源耗光
防御:在交换机(管理型)的端口上做动态的MAC地址绑定
2)伪装DHCP服务器攻击:hack通过将自己部署为DHCP服务器,为客户机提供非法的IP地址
防御:在交换机(管理型)上除合法的DHCP服务器所在的接口外,全部设置为禁止发送DHCP Offer包