DHCP原理与配置

DHCP原理与配置

文章目录

1、DHCP原理

(1)什么是DHCP

tex 复制代码
DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议):给网络内的客户机自动分配IP地址
由internet工作任务小组设计开发口专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议
DHCP采用的是UDP作为传输协议,有两个端口67和68,DHCP客户端发送请求消息给服务端的67号端口,DHCP服务端回应响应消息给客户端的68端口

(2)DHCP的好处

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

(3)DHCP的分配方式

tex 复制代码
自动分配:分配到一个IP地址后永久使用
手动分配:由DHCP服务器管理员专门指定IP地址
动态分配:使用完释放该IP,供其他客户使用

(4)DHCP的工作原理

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

分为四个步骤

shell 复制代码
(1)客户端通过广播发送DHCP Discover报文寻找DHCP服务端
(2)服务端通过广播发送DHCP Offer报文向客户端提供从地址池挑选的可用IP等信息
(3)客户端只接受第一个收到的DHCP Offer报文并提取IP地址,然后通过广播发送DHCP Request报文告知服务端要使用该IP地址
(4)服务端通过广播发送DHCP ACK报文告知客户端该IP地址是合法可用的,并提供租约信息

DHCP客户机每次登录网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次分配的IP地址的DHCP Request请求信息。如果IP地址可用,DHCP会发送DHCP ACK确认消息。如果IP地址不可用,DHCP服务器会发送DHCP Nack否认消息,此时DHCP客户端需要重新发送DHCP Discover报文寻找DHCP服务端

*linux、windows客户端和服务端都是以广播方式发送消息
华为设备客户端以广播方式发送消息,服务端以单播的方式发送消息*

2、配置DHCP实验

(1)实验目的

模拟DHCP自动获取IP地址

(2)实验准备

三台虚拟机:一台完好的linux虚拟机来当DHCP服务端,一台完好的linux虚拟机来当DHCP客户端1,一台完好的windows虚拟机来当DHCP客户端2

(3)实验要求

两台客户端虚拟机能通过服务端虚拟机来自动获取到IP地址

(4)实验步骤

1)服务端虚拟机初始化操作

将网络连接调至仅主机模式(如用nat模式,需将其本地的dhcp服务给关闭)

如果使用仅主机模式,需将电脑里网络连接的vmnet1(仅主机使用的)里的ipv4

协议属性进行修改

关闭防火墙,设置其立即开机不自启

临时关闭selinux防火墙,然后永久关闭

tex 复制代码
补充
SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。
selinux(security enhanced linux)安全强化的linux,它是一个linux内核模块,也是linux的一个安全子系统

SELinuxd的工作模式

enforcing强制模式,违反 SELinux 规则的行为将被阻止并记录到日志中
permissive
宽容模式,违反 SELinux 规则的行为只会记录到日志中。一般为调试用。
disabled
关闭 SELinux。
2)安装dhcp服务

有两种方式安装

第一种:rpm -ivhRPM包文件

第二种:yum -y install dhcp(需检查本地yum源有没有配好)

3)修改dhcp配置文件

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

由于etc/dhcp/dhcpd.conf的文件是没有什么内容的,我们需将usr/share/doc/dhcp-4.2.5/dhcpd.conf.example这个模版文件复制过来

启动dhcp服务并查看

如果启动报错,可以查看日志文件/var/log/messages或通过journalctl -xe

4)打开客户机查看验证

两台客户端虚拟机都得把网络状态设置为仅主机模式

windows客户端验证

linux客户端验证


相关推荐
AI浩5 小时前
【Labelme数据操作】LabelMe标注批量复制工具 - 完整教程
运维·服务器·前端
石像鬼₧魂石5 小时前
如何配置Fail2Ban的Jail?
linux·学习·ubuntu
sunxunyong5 小时前
doris运维命令
java·运维·数据库
Guheyunyi5 小时前
智慧消防管理系统如何重塑安全未来
大数据·运维·服务器·人工智能·安全
椰子今天很可爱6 小时前
五种I/O模型与多路转接
linux·c语言·c++
Lueeee.6 小时前
Linux kernel Makefile 语法
linux
鲨莎分不晴6 小时前
强化学习第五课 —— A2C & A3C:并行化是如何杀死经验回放
网络·算法·机器学习
爱吃山竹的大肚肚8 小时前
EasyPOI 大数据导出
java·linux·windows
极地星光8 小时前
dmesg 工具的核心功能与作用
linux
Smartdaili China8 小时前
掌握Java网页抓取:技术与示例完整指南
java·网络·学习·指南·网页·住宅ip·爬虫api