DHCP服务流程

1、DHCP客户端初次接入网络时,会发送DHCP发现报文(DHCP Discover),用于查找和定位DHCP服务器。

2、DHCP服务器在接收到DHCP发现报文后,发送DHCP提供报文(DHCP Offer),此报文中包含ID地址等配置信息。

3、在DHCP客户端接收到服务器发送的DHCP提供报文后,会发送DHCP请求报文(DHCP Request),另外在DHCP客户端获取IP地址并重启后,同样会发送DHCP请求报文,用于确认分配的IP地址等配置信息。DHCP客户端获取的IP地址租期快要到期时,也发送DHCP请求报文向服务器申请延长IP地址租期。

4、收到DHCP客户端发送的DHCP请求报文后,DHCP服务器会回复DHCP确认报文(DHCP ACK)。客户端接收到DHCP确认报文后,会将获取的IP地址等信息进行配置和使用。

5、如果DHCP服务器收到DHCP-REQUEST报文后,没有找到相应的租约记录,则发送DHCP-NAK报文作为应答,告知DHCP客户端无法配合使用IP地址。

6、DHCP客户端通过发送DHCP释放报文(DHCP Release)来释放IP地址。收到DHCP释放报文后,DHCP服务器可以把该IP地址分配给其他DHCP客户端。

Linux部署DHCP服务

一、部署环境:

1、CentOS Linux release 7.5.1804 (Core)

2、dhcp-4.2.5-77.el7.centos.x86_64

二、安装dhcp服务端

# yum -y install dhcp

三、修改配置文件

默认的配置文件/etc/dhcp/dhcpd.conf为空,可参考安装dhcp包时的模板文件

/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example

dhcpd.conf大致可以分为3段

1、全局地址分配属性:

option router X.X.X.X;

option domain-name-servers 202.106.0.20,8.8.8.8;    #全局DNS服务器

default-lease-time 86400;                               #默认租期,单位为秒

2、子网配置:

通常每个作用域通过一个subnet定义,此处以10.10.10.0/24网段为例

subnet 10.10.10.0 netmask 255.255.255.0 {

range 10.10.10.100  10.10.10.150;              #可分配出去的IP地址池

option routers 10.10.10.1;                       #网关,此处配置的优先级比全局的高

}

3、主机配置:

通常为某特定MAC地址固定分配一个地址,

host 'host222' {                                               # host222自定义的名字

hardware ethernet 08:00:07:26:c0:05;               # 绑定主机的MAC地址

fixed-address 10.10.10.222;                         # 绑定主机可分配的IP地址

}

四、启动服务

# systemctl start dhcpd

五、查看ip分配情况

# cat /var/lib/dhcpd/dhcpd.leases

最新文章

  1. 【分布式】Zookeeper的Leader选举
  2. [协议]ICMP协议剖析
  3. SAP CRM 使用Javascript触发SAP Server Event
  4. PHPStorm技巧篇 -- 观感优化
  5. Python 之路 Day5 - 常用模块学习
  6. Vector和Stack(已过时,不建议使用)
  7. 弹出层js让DIV居中
  8. 助手系列之连接mysql数据库
  9. python 字符串复制
  10. Handlebars的使用方法文档整理(Handlebars.js)
  11. MongoDB命令模式下的条件过滤总结
  12. .Net有许多Office,PDF,Email,HTML的控件
  13. Spring 加载静态资源
  14. Hive drop table卡住的问题
  15. springboot 学习之路 8 (整合websocket(1))
  16. 20175208 实验二 《Java面向对象程序设计》实验报告
  17. Restful下的token认证方案
  18. ScriptOJ-unique#89
  19. codeforces736b Taxes (Codeforces Round #382 (Div. 1))
  20. IDEA快捷键--与Eclipse快捷键的对比--IDEA快捷键设置成Eclipse默认快捷键

热门文章

  1. 01-Spring的概述
  2. [蓝桥杯][基础训练]2n皇后问题
  3. netty笔记-:Channel与ChannelHandlerContext执行write方法的区别
  4. dropna fillna
  5. Chrome浏览器切页快捷键
  6. 传奇gee引擎,智能假人,假人脚本,geeM2假人
  7. P1598
  8. python编程出现:expected an indented block错误。
  9. 刷题15. 3Sum
  10. pair node stack vector string priority_queue