哇~真的是你呀!今天是LINUX的DHCP服务与管理

简介: 在Linux中,DHCP(动态主机配置协议)服务器管理是用于分配IP地址和其他网络配置信息给计算机和设备的服务。DHCP服务器管理在Linux中的作用是自动为计算机和设备分配IP地址和其他网络配置信息,简化网络管理并避免IP地址冲突。这使得网络设置更加方便和高效。

前言

在Linux中,DHCP(动态主机配置协议)服务器管理是用于分配IP地址和其他网络配置信息给计算机和设备的服务。它的作用主要有以下几个方面:


1. IP地址分配:DHCP服务器可以自动分配IP地址给连接到网络的计算机和设备,避免了手动配置每个设备的麻烦。通过DHCP,设备可以动态地获得可用的IP地址。


2. 简化网络管理:使用DHCP服务器可以简化网络管理。当有新设备加入网络或设备离开网络时,DHCP服务器将自动分配或释放相应的IP地址,减少了管理员的工作量。


3. 管理其他网络配置信息:除了IP地址,DHCP服务器还可以提供其他网络配置信息,如子网掩码、默认网关、DNS服务器等。这些配置信息可以自动分配给设备,使其能够顺利地与网络和互联网上的其他设备进行通信。


4. 防止IP地址冲突:DHCP服务器可以避免IP地址冲突的发生。在手动配置IP地址时,可能会出现多个设备使用相同的IP地址的情况,而DHCP服务器能够确保每个设备都获得唯一的IP地址。


总而言之,DHCP服务器管理在Linux中的作用是自动为计算机和设备分配IP地址和其他网络配置信息,简化网络管理并避免IP地址冲突。这使得网络设置更加方便和高效。


一、DHCP概述


概述

   DHCP协议全称: Dynamic Host Configuration Protocol ,动态主机配置协议

   可以 动态的进行IP地址分配 、服务端的监听端口67/udp、客户端监听端口 68/udp

    网络架构 C/S

   DHCP的优势: 提高配置效率、减少配置错误

   DHCP的分配方式 手动分配、 自动分配、动态分配

   应用场景:更加准确的配置网络参数的情况下、 网络环境较大时配置ip

   !!!注意: 同一个网络环境下不允许存在多个DHCP服务器

二、DHCP工作流程


工作流程

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

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

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

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


何时更新租约:当租约期达到50%时


当客户端重启后客户端直接发送Request包

     (1)  IP地址空闲  服务端直接回应Ack

     (2)IP地址被占用  服务端回应noAck,客户端需要将上述“工作流程”完整执行一遍


客户端类型

   Linux: DHCP服务器不存在,没有IP

   Windows: DHCP不存在,会启用备用IP地址   范围 169.254.0.0/16 ~ 168.254.255.255/16

三、部署


1、基础环境首先把我们的虚拟机的网络适配器设置成vmnet1(虚拟机不开机)

2.打开虚拟网络编辑器不选中使用本地DHCP服务将IP地址分配给虚拟机

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

2)关闭防火墙及SElinux:

systemctl stop firewalld.service && systemctl disable firewalld.service

查看SElinux状态:  getenforce

设置宽容模式 :setenforce  0  

  关闭SElinux
     

vim  /etc/selinux/config


       SELINUX=enforcing  改为 SELINUX=disabled
       重启才能生效

3)配置静态IP(是对DHCP服务器进行配置)
   关闭网络图形化工具

 

cd /etc/sysconfig/network-scripts/

vim ifcfg-ens33
        TYPE=Ethernet
        BOOTPROTO=static
        NAME=ens33
        DEVICE=ens33
        ONBOOT=yes
        IPADDR=192.168.1.254
        PREFIX=24


systemctl restart network

4)安装DHCP软件包
   

yum install -y dhcp


当我们安装好软件之后我们可以查看一下它所对应的文件、路径rpm -ql dhcp

通过查看我们知道了DHCP的配置文件存储路径/etc/dhcp  主配置文件dhcpd.conf

四、配置


通过上述步骤的查看我们知道了  配置文件存储路径 /etc/dhcp

查看dhcpd.conf发现里面没有东西,但是它提示我们们可以参照 see /usr/share/doc/dhcp*/dhcpd.conf.example

我们把模版复制过来其中配置项 subnet:配置DHCP分配的地址池   host :固定IP地址,指定分配给对应的MAC地址的主机

前三个subnet可以用#注释掉。配置完成后重新启动DHCP服务器systemctl restart dhcpd

其中subnet 表示的是网段 net mask 表示掩码 range表示IP池

五、案列


前提


1)准备3台虚拟机,一台作为DHCP服务器两台客户机,将它们按照上述要求把他们的网络设置调配好


2)按照上述步骤配置本地yum源,关闭防火墙及EXLinux,完成DHCP服务机的静态配置。


3)安装DHCP软件包


4)配置 /etc/dhcp/dhcp.conf


1、分配一个地址段动态分配

1)查看我们配置好的IP

2)编辑vim /dhcpd.conf

修改网段,码,IP池保存退出重启DHCP服务

3)打开我们的其他2台客户机连接网络并且查看IP

此时我们客户机的IP分别为192.168. 1.3和192.168.1.4说明IP地址获取成功


2.分配固定IP地址,指定分配给对应的MAC地址的主机

和上面一样我们再添加一台客户机指定分配给他的它的IP为192.168.1.55


首先我们先进入新的客户机查看它的mac地址,它的mac地址为00:0c:29:1f:61:f6

好的,下面我们进入DHCP服务器,还是编辑 /etc/dhcp/dhcpd.conf我们找到


把MAC地址改为客户机的地址输入想要分配的IP,保存退出,重启dhcpd

打开我们的客户机连接网络并查看IP ,成功获得我们指定的IP

3.分配多个地址段

分配多个网段地址我们还需要添加一台(中继服务器)虚拟机充当路由器的角色,再添加一台客户机。这次我们添加网段为192.168.2

1)我们添加一台中继设备并且再添加一块网卡,选择vmnet2,客户机也是选择vmnet2

2)我们打开中继设备,IP a 查看网卡

3)我们编辑2块网卡 cd /etc/sysconfig/network-scripts/  

创建ifcfg-ens37 并编辑

4)做完这些我们编辑vim /etc/sysctl.conf在末尾输入net.ipv4.ip_forward = 1

输入sysctl -p使之生效

5)配置中继设备的本地yum源并且关闭防火墙和EXlinux,和图形化

配置本地yum源

安装dhpc

6)用中继服务区指向DHCP服务器

7)进入DHCP服务器编辑vim dhcpd.conf。进入命令模式输入set nu显示行号将我们的之前编辑的那几行输入9yy复制p粘贴,可以添加注释#192.168.20

修改,保存退出并重启dhcp    systemctl restart dhcpd

验证: 打开客户端查看是否获取IP

客户机获得192.168.2网段IP


总结

我么在配中继设备时要注意!我们添加的网卡都要进行配置,不要忘记配置,其次网卡配置时名字不能搞错。另外如果你在配置结束后在重启服务时发现重启失败,你可以去查看你的配置文件在你编辑时是否有误,一定要细心,我建议能复制就复制。最后我们要把实验的步骤捋清楚,否则容易遗忘某些步骤。

目录
相关文章
|
16天前
|
安全 算法 网络协议
探索Linux操作系统的内核管理
【5月更文挑战第31天】本文将深入探讨Linux操作系统的内核管理机制,包括其设计原则、主要组件以及它们如何协同工作以提供高效的系统性能。通过分析Linux内核的关键特性和功能,我们将揭示这一开源操作系统如何在各种计算环境中保持其稳定性和灵活性。
|
27天前
|
算法 安全 Linux
探索Linux内核的虚拟内存管理
【5月更文挑战第20天】 在本文中,我们将深入探讨Linux操作系统的核心组成部分之一——虚拟内存管理。通过剖析其关键组件和运作机制,揭示虚拟内存如何提供高效的内存抽象,支持庞大的地址空间,以及实现内存保护和共享。文章将重点讨论分页机制、虚拟内存区域(VMAs)的管理、页面置换算法,并简要分析这些技术是如何支撑起现代操作系统复杂而多变的内存需求的。
|
1天前
|
Java Linux Spring
在 Linux 系统中将 Spring Boot 应用作为系统服务运行
【6月更文挑战第11天】最近由于一些原因,服务器经常会重启,每次重启后需要手动启动 Spring Boot 的工程,因此我需要将其配置成开启自启动的服务。
4 0
|
4天前
|
Linux 数据处理 数据安全/隐私保护
Linux中的groups命令:管理用户组信息的利器
`groups`命令在Linux中用于显示用户所属的用户组,帮助管理员进行权限管理。它读取`/etc/group`和`/etc/passwd`文件获取信息,特点是简单直观,支持多用户组。命令参数如`-a`显示主组,`-g`显示主组ID,`-n`以数字形式显示,`-r`显示实际组。在实际应用中,结合其他命令可进行权限分析和定制输出。注意权限问题及用户组可能随系统变化。
|
5天前
|
消息中间件 存储 监控
实战Linux I/O多路复用:借助epoll,单线程高效管理10,000+并发连接
本文介绍了如何使用Linux的I/O多路复用技术`epoll`来高效管理超过10,000个并发连接。`epoll`允许单线程监控大量文件描述符,显著提高了资源利用率。文章详细阐述了`epoll`的几个关键接口,包括`epoll_create`、`epoll_ctl`和`epoll_wait`,以及它们在处理并发连接中的作用。此外,还探讨了`epoll`在高并发TCP服务场景的应用,展示了如何通过`epoll`和线程/协程池来构建服务框架。
139 3
|
10天前
|
监控 Linux
探索 Linux 中的 Chronyc:一个用于配置和管理 Chrony 的实用工具
Chronyc 是一款用于配置和管理 Linux 系统中 Chrony 时间同步工具的命令行实用程序。Chrony 结合了 ntpd 和 ntpdate 的优点,提供高精度和灵活性。要安装 Chrony,可使用包管理器(如 `apt` 或 `yum/dnf`)。常用 `chronyc` 命令包括:查看时间源状态(`sources`)、跟踪信息(`tracking`)、添加或删除服务器、手动同步时间(`makestep`)以及查看其他信息和帮助。`chronyc` 提供了便捷的方式来监控和调整系统时间同步。
|
10天前
|
安全 Linux 数据安全/隐私保护
使用 `chage` 命令管理 Linux 用户密码过期策略
`chage` 命令用于管理Linux用户密码过期策略,包括设置密码最长有效期、警告天数、过期宽限期和账户非活动天数。例如,`chage -M 90 username` 设置密码最长有效期为90天,`chage -W 7 username` 设定到期前7天警告。确保具备足够权限(如root)并理解更改影响。此工具有助于增强系统安全和符合安全策略。
|
10天前
|
Linux vr&ar 开发者
Linux 命令 `ar` 详解:静态库的管理利器
`ar` 命令是 Linux 管理静态库的工具,常用于创建、修改和提取 `.a` 文件。基本语法为 `ar [选项] 目标文件 [成员...]`。常用选项包括:`rcs` 创建(更新)静态库,`t` 列出成员,`x` 提取成员,`d` 删除成员。注意文件顺序、创建索引、备份和跨平台兼容性。学习和掌握 `ar` 命令能提升系统开发效率。
|
10天前
|
监控 安全 Linux
Linux服务器如何管理sshd的连接
【6月更文挑战第6天】Linux服务器如何管理sshd的连接
15 4
|
12天前
|
Ubuntu
ubuntu 开启dhcp服务并配置
ubuntu 开启dhcp服务并配置