九五从零开始的运维之路(其十五)

简介: DHCP(Dynamic Host Configuration Protocol)是一种网络协议,用于动态地分配IP地址和其他网络配置参数给网络中的设备。能动态的进行IP地址分配,从而实现网络的自动配置。同一个网络环境下不允许存在多个DHCP服务器

前言

本篇将简述的内容:Linux系统下的DHCP服务器管理


一、概述

DHCP(Dynamic Host Configuration Protocol)是一种网络协议,用于动态地分配IP地址和其他网络配置参数给网络中的设备。能动态的进行IP地址分配,从而实现网络的自动配置。同一个网络环境下不允许存在多个DHCP服务器


DHCP协议是在客户端-服务器(Client-Server)网络架构下运作的。在这种架构中,有一个特定的DHCP服务器负责为网络中的客户端设备提供IP地址和其他配置参数。


DHCP服务器端口(Server Port):默认为UDP端口号67

DHCP客户端端口(Client Port):默认为UDP端口号68


DHCP使用以下几种方式来分配IP地址和其他配置参数给客户端设备


动态分配(Dynamic Allocation):这是最常见的方式。DHCP服务器维护一个IP地址池,当客户端设备请求IP地址时,服务器从地址池中选择一个可用的地址分配给该设备。分配的地址在一段时间后会被回收,可以被其他设备使用。


自动分配(Static Allocation):在这种方式下,网络管理员事先为每个客户端设备手动配置一个固定的IP地址,然后将这些配置信息保存在DHCP服务器上。当设备请求IP时,DHCP服务器会直接指派给设备预先配置的静态IP地址。


手动分配(Reservation Allocation):这种方式可以将某个特定的IP地址与设备的物理地址(MAC地址)相关联。当设备根据其MAC地址发送DHCP请求时,服务器会自动将预留地址分配给该设备,保证设备获取到固定的IP地址。


二、客户端类型

客户端类型

1.Linux

DHCP服务器不存在,没有IP


2.Windows

DHCP不存在,会启用备用IP地址

169.254.0.0/16 ~ 168.254.255.255/16


三、工作流程

1、 当客户端配置为自动获得IP地址时,客户端发送discover广播包(发现),用来寻找网络中的DHCP服务器


2、假如网络存在DHCP服务器,此时服务器给出回应,向客户端发送Offer广播包,携带了IP地址的信息,询问客户端是否使用该IP地址


3、假如客户端使用上述IP地址,向服务端发送Request广播包,并将请求信息写入到该包内


4、 服务端向客户端发送Ack广播包,并确定IP地址的租约期


四、何时更新租约

当租约期达到50%时# 四、当客户端重启后


五、客户端类型

客户端直接发送Request包

1.IP地址空闲

服务端直接回应Ack

2.IP地址被占用

服务端回应noAck

客户端需要将上述“工作流程”完整执行一遍


六、DHCP部署

1.配置yum源

cd /etc/yum.repos.d
mkdir backup
mv CentOS-* backup
vim local.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
:wq
mount /dev/sr0 /mnt


bf23ff605655a5d4a2103aa3f9bc25b3_64cb71166e7e43bcaa537cf4a92877a6.pngbf23ff605655a5d4a2103aa3f9bc25b3_64cb71166e7e43bcaa537cf4a92877a6.png

image.png


2.关闭防火墙、网络图形化工具及SElinux

关闭防火墙及禁止防火墙自启

systemctl stop firewalld && systemctl disable firewalld

3eb0b76d1a4f096da560191fb0149c67_396096a5f74c4d019383c80dbbb0183e.png


关闭网络图形化工具

systemctl stop NetworkManager && systemctl disable NetworkManager

c085cf73b32467f40296cbbb6920d2fe_dc760a1a08da415ab238cad199a6d3c4.png


查看SElinux状态
`getenforce`


设置宽容模式(临时关闭SElinux)

setenforce 0

永久关闭SElinux

vim /etc/selinux/config

SELINUX=enforcing 改为 SELINUX=disabled


d1a8f1bf4d5c20ed30daa521a9c9b85d_9a3280359cd140e6afa05cda4effab51.png


3.配置静态IP

配置静态IP


cd /etc/sysconfig/network-scripts/
vim ifcfg-ens33
  TYPE=Ethernet
  BOOTPROTO=static
  NAME=ens33
  DEVICE=ens33
  ONBOOT=yes
  IPADDR=192.168.100.254
  PREFIX=24
:wq

b3e9c156f45d2b6751e4dbc4e7d17220_57193dd05d29423ba4a39a073d259b18.png



重启网络服务

systemctl restart network


4.安装DHCP软件包

yum install -y dhcp


5.核心配置文件

配置文件存储目录

/etc/dhcp

核心配置文件

/etc/dhcp/dhcpd.conf


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


配置DHCP分配的地址池–subnet

vim /etc/dhcp/dhcpd.conf

前三段subnet注释掉


subnet 192.168.100.0    #网段
netmask 255.255.255.0   #子网掩码{
  range 192.168.100.2 192.168.100.253;  #ip地址范围
  option domain-name-servers 8.8.8.8; #域名解析服务地址
  option domain-name "internal.example.org";  #域名
  option routers 192.168.100.1;  #网关地址
  option broadcast-address 192.168.100.255; #广播地址
  default-lease-time 600;  #默认最短时间
  max-lease-time 7200;    #最长时间
}

e0469af47c6598547c58510928c8a084_729d5d3c7f03441cb59c91e34d28c2fe.png

固定IP地址–host

指定分配给对应的MAC地址的主机

host fantasia {
hardware ethernet MACaddress;
fixed-address IP address;
}


6.重启DHCP服务器

systemctl restart dhcpd


7.客户端接入DHCP服务器

当客户端设备处于DHCP服务器下请求IP地址时,服务器从地址池中选择一个可用的地址分配给该设备。


七、中继配置

DHCP中继的使用使得一个DHCP服务器同时为多个网段服务成为可能,配置DHCP中继的网络设备可以在不同网段上从DHCP总服务器获取IP地址分配给下面的各主机


1.配置中继服务器–双网卡

b8e1580be38a9913e635970d5344e3d6_2a3cb2ba6ee14b21832e9b5a8c7eeb61.png


2.配置yum源

cd /etc/yum.repos.d
mkdir backup
mv CentOS-* backup
vim local.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
:wq
mount /dev/sr0 /mnt

bf23ff605655a5d4a2103aa3f9bc25b3_64cb71166e7e43bcaa537cf4a92877a6.png


3.关闭防火墙、网络图形化工具及SElinux

关闭防火墙及禁止防火墙自启

systemctl stop firewalld && systemctl disable firewalld

09a7f23f73f8112466599f1dee35a958_c9c15f2876c842e7bdd116c674aac36f.png



关闭网络图形化工具

systemctl stop NetworkManager && systemctl disable NetworkManager

1e6328aba9aa04f123ee478c8c76d8cb_c3a132b3e7ff456a9a01dc725a5bc0a1.png



查看SElinux状态

getenforce

设置宽容模式(临时关闭SElinux)

setenforce 0

永久关闭SElinux

vim /etc/selinux/config

SELINUX=enforcing 改为 SELINUX=disabled

b35790efaa00624cf97d9f7764f37adf_654c35cb88b0482c9322d1d483bad3b0.png



4.配置静态IP–双网卡

cd /etc/sysconfig/network-scripts/ vim ifcfg-ens33


TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.100.1
PREFIX=24

87ac18039f0804430f21cc163ed8d08b_127644ab6f6141dfb71f2b08355b2643.png



cp ifcfg-ens33 ifcfg-ens37 vim ifcfg-ens37


TYPE=Ethernet
BOOTPROTO=static
NAME=ens37
DEVICE=ens37
ONBOOT=yes
IPADDR=192.168.200.1
PREFIX=24

54c0242079b3248df7fe3c1b7897d42f_1f75536466434aa6bcbdd8b1d3e56926.png


重启网络服务

systemctl restart network


5.配置文件

进入文件 vim /etc/sysctl.conf 中添加一行内容

net.ipv4.ip_forward = 1


载入sysctl配置文件

sysctl -p

05e6f2dff74b8ab3d92c9189364d03f3_86cc51cde6ef43d7a08ffc2364a9cc84.png


6.安装DHCP软件包

yum install -y dhcp

9e4f6510b3dcbc12091bf5ddb1a4c541_c77c254037d64a5aa5e2d9f49a01a9f3.png

7.设置DHCP的中继命令

dhcrelay 服务器IP

4dcc047a00be5557f468ecf087696cf3_8fa4459506ad432088195fe8b52e1efd.png



8.回到DHCP服务器,添加网关配置,修改dhcp配置文件,添加多网段内容

vim /etc/sysconfig/network-scripts/ifcfg-ens33

202271eaa99ad4ccbf0b8c99b4b066c8_bd4031adddbb428485e2f4453cf7f135.png



vim /etc/dhcp/dhcpd.conf

1c28b61b9794310afcc9d042e44d25da_c043a0c5a50840dea453e6aaf7a7b4c7.png


粘贴内容后修改相应内容,保存退出

96d254859d2f537b79567e1311b8997d_424605c8247e4e12801e9cd3f897f095.png

重启DHCP服务

9ab6e04335a61a738e5a862f3be8b7c5_8844e624589446f0811faa041a4ebffa.png



9.查看使用vmnet2网卡的虚拟机是否获得地址

总结

本文介绍了在Linux系统下搭建和管理DHCP服务器的基本步骤,以及常见问题的解决方法。通过正确配置和管理DHCP服务器,我们可以实现自动化的网络配置,提高网络管理的效率。希望本文对您有所帮助!

目录
相关文章
|
4月前
|
运维 Java 应用服务中间件
九五从零开始的运维之路(其十九)
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。 Tomcat虚拟主机是通过linux或windows操作系统下进行独立运行的一个网站发布容器,他是一种在单一主机或主机群上,实现多网域服务的方法,可以运行多个网站或服务的技术。
58 0
|
4月前
|
SQL 运维 关系型数据库
|
4月前
|
监控 Linux 网络安全
Linux系统下的keepalived双机热备
在一个 LVS 服务集群中通常有主服务器(MASTER)和备份服务器(BACKUP)两种角色的服务器,但 是对外表现为一个虚拟 IP,主服务器会发送 VRRP 通告信息给备份服务器,当备份服务器收不到 VRRP消息的时候,即主服务器异常的时候,备份服务器就会接管虚拟 IP,继续提供服务,从而保证了高可用性。
60 0
|
4月前
|
运维 负载均衡 算法
九五从零开始的运维之路(其三十六)
(一)四层负载均衡器 四层负载均衡器也称为 4 层交换机,主要通过分析 IP 层及 TCP/UDP 层的流量实现基于 IP 加端口的负载均衡,如常见的 LVS、F5 等;
36 0
|
4月前
|
运维 关系型数据库 MySQL
九五从零开始的运维之路(其三十五)
MHA(MasterHigh Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。 MHA 的出现就是解决MySQL 单点的问题。 MySQL故障切换过程中,MHA能做到0-30秒内自动完成故障切换操作。 MHA能在故障切换的过程中最大程度上保证数据的一致性,以达到真正意义上的高可用。
42 2
|
4月前
|
存储 缓存 NoSQL
九五从零开始的运维之路(其三十二)
本篇将简述的内容:Linux系统下的Redis基础
45 0
|
4月前
|
存储 运维 Linux
九五从零开始的运维之路(其三十一)
计划任务是在指定的时间间隔内自动执行的任务。在Linux系统中,常用的计划任务工具是crond(cron daemon)。用户可以通过创建计划任务来定期执行指定的命令或脚本。
37 0
|
4月前
|
存储 运维 关系型数据库
九五从零开始的运维之路(其二十九)
数据库备份是指将数据库中的数据、表格、视图、存储过程、触发器等信息备份到另一个地方,以便在数据库丢失或损坏时进行恢复。数据库备份是数据库管理中必不可少的一项工作,通过备份可以保护数据库中的数据和业务
43 0
|
4月前
|
运维 关系型数据库 MySQL
九五从零开始的运维之路(其二十八)
数据库用户权限管理是数据库系统中非常重要的一个方面,它用于控制不同用户访问和操作数据库的权限范围。数据库用户权限管理可以保护敏感数据和数据库结构,确保只有被授权的用户才可以操作和使用数据库,防止数据被修改或泄露,并最大程度地保证数据库的安全。为了保护数据库的安全性,合理管理MySQL服务用户的权限是至关重要的。
32 0
|
4月前
|
存储 SQL 运维
九五从零开始的运维之路(其二十七)(1)
排序查询:排序查询是通过SQL查询语句将所查询的结果按照指定的排序方式排列 升序(默认):ASC
131 0