DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。
网络配置
静态指定
动态获取: bootp:boot protocol MAC与IP一一静态对应
dhcp:增强的bootp,动态
DHCP: (Dynamic Host Configuration Protocol)
动态主机配置协议
局域网协议,UDP协议
主要用途:
用于内部网络和网络服务供应商自动分配IP地址给用户
用于内部网络管理员作为对所有电脑作集中管理的手段
使用场景
自动化安装系统
解决IPV4资源不足问题
续租
50% :租赁时间达到50%时来续租,刚向DHCP服务器发 向新的DHCPREQUEST请求。如果dhcp服务没有拒绝的理 由,则回应DHCPACK信息。当DHCP客户端收到该应答信 息后,就重新开始新的租用周期
87.5%:如果之前DHCP Server没有回应续租请求,等到 租约期的7/8时,主机会再发送一次广播请求
DHCP服务简介
同网段多DHCP服务DHCP服务必须基于本地
相关协议先到先得的原则
Arp
跨网段rarp
RFC 1542 Compliant Routers
dhcrelay: 中继
DHCP共有八种报文
1、 DHCP DISCOVER:客户端到服务器
2、DHCP OFFER :服务器到客户端
3、DHCP REQUEST:客户端到服务器
4、 DHCP ACK :服务器到客户端
5、 DHCP NAK:服务器到客户端,通知用户无 法分配合适的IP地址
6、DHCP DECLINE :客户端到服务器,指 示地址已被使用
7、DHCP RELEASE:客户端到服务器,放弃 网络地址和取消剩余的租约时间
8、DHCP INFORM:客户端到服务器, 客户 端如果需要从DHCP服务器端获取更为详细 的配置信息,则发送Inform报文向服务器 进行请求,极少用到
dhcp工作原理
![20160321233138127.png](https://i-blog.csdnimg.cn/blog_migrate/b8cb1d038bdb372df0c1d2158c12e899.png)
![](https://i-blog.csdnimg.cn/blog_migrate/22d01e336d4051fcbf707a046c6b929d.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/eab26e87287e27ea3c742bbeeb266ed1.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/64a5d67b27edb42417aa2192a3757dc5.gif)
![图片.png](https://i-blog.csdnimg.cn/blog_migrate/38ff27f5be07e3d4ba7023bab56c4586.png)
dhcp discover:由客户端发送广播,请求ip地址
dhcp offer:由dhcp服务器发送广播,告知客户端,我能提供IP地址
dhcp request:由客户端再次发送广播,告知全网络我选择了谁向我提供ip地址
dhcp ack:由指定的dhcp服务器向客户端提供信息(ip,mask,gateway,release,dns)
免费ARP(自发自收):当机器重新启动后,接入网络后会发送一个arp广播即免费ARP,以告诉玩网络中的其他主机该地址已被使用,间接实现检测地址是否可以使用。
![图片.png](https://i-blog.csdnimg.cn/blog_migrate/dac957d983f2f8e40bcc4db411b9aec9.png)
DHCP实现
安装dhcp
]# yum install dhcp
dhcp配置文件
~]# cat /etc/dhcp/dhcpd6.conf
配置文件模板文件
~]# cat /usr/share/doc/dhcp*/dhcpd6.conf.example
地址分配记录
~]# cat /var/lib/dhcpd/dhcpd.leases
客户端查看获取地址过程信息
[root@localhost dhclient]# dhclient
DHCP配置文件
其它配置选项:
filename: 指明引导文件名称
next-server:提供引导文件的服务器IP地址
示例:
filename "pxelinux.0"; next-server 192.168.100.100;
检查语法
service dhcpd configtest
dhcpd.conf 文件示例:
![](https://i-blog.csdnimg.cn/blog_migrate/74a904599d457836231bbbbf8fc0441e.gif)
[root@localhost ~]#cat /etc/dhcp/dhcpd.conf
#
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.example
# see dhcpd.conf(5) man page
#
option domain-name "magedu.com";
option domain-name-servers 192.168.77.77 ;
#地址租期时间
default-lease-time 3000;
#地址最大租期时间
max-lease-time 7200;
log-facility local7;
#指明地址段{分配地址范围;指明路由(网关);[ 指明引导文件名称;提供引导文件的服务器IP地址; ]}
subnet 192.168.77.0 netmask 255.255.255.0 {
range 192.168.77.7 192.168.77.70;
option routers 192.168.77.77;
next-server 192.168.77.77;
filename "pxelinux.0";
}
#mask绑定
host fantasia {
hardware ethernet 08:00:07:26:c0:a5;
fixed-address fantasia.fugue.com;
}