【Linux网络】DHCP原理与配置

news2024/11/18 9:48:39

目录

一、DHCP工作原理

1.了解DHCP服务

2.使用DHCP的好处

3.DHCP的分配方式

二、DHCP的租约过程

三、DHCP场景应用实验


一、DHCP工作原理

1.了解DHCP服务

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)

由Internet工作任务小组设计开发

专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议

2.使用DHCP的好处

        减少管理员的工作量

        避免输入错误的可能

        避免IP地址冲突

        当更改IP地址段时,不需要重新配置每个用户的IP地址

        提高了IP地址的利用率

        方便客户端的配置

3.DHCP的分配方式

        自动分配:分配到一个IP地址后永久使用

        手动分配:由DHCP服务器管理员专门指定IP地址

        动态分配:使用完后释放该IP,供其他客户机使用

二、DHCP的租约过程

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

 一共分为四个过程:

第一步:客户端在网络中搜索服务器
客户端通过广播发送DHCP  Discover报文寻找服务器端


第二步:服务器向客户端响应服务
服务器端通过广播发送DHCP offer 报文向客户端提供IP地址等网络信息,从IP地址池中挑选一个尚未分配的Ip地址分配给客户端


第三步:客户端向服务器发出服务请求
如果有多台DHCP服务器向该客户端发来DHCP-offer报文,客户端只接受第一个收到的DHCP-offer报文并提取IP地址,然后客户端通过广播发送DHCP Request 报文告知服务器端本地选择使用该IP地址


第四步:服务器向客户端提供服务
服务器通过单播发送DHCP Ack报文告知客户端IP地址是合法可用的,并在选项字段中增加IP地址的使用租期信息

重新登录
DHCP 客户机每次重新登录网络时,不需要再发送 DHCP Discover 信息,而是直接发送包含前一次所分配的 IP  地址的 DHCP Request 请求信息

三、DHCP场景应用实验

关闭防火墙,关闭核心防护

[root@bogon ~]# systemctl disable --now firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@bogon ~]# setenforce 0
[root@bogon ~]# vi /etc/selinux/config
[root@bogon ~]# 

 安装dhcp服务

[root@bogon ~]# yum install -y dhcp
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.ustc.edu.cn
 * extras: mirrors.ustc.edu.cn
 * updates: mirrors.ustc.edu.cn
软件包 12:dhcp-4.2.5-83.el7.centos.1.x86_64 已安装并且是最新版本
无须任何处理

查找dhcp.conf文件的模版:dhcpd.conf.example

[root@bogon ~]# cd /usr/share/
[root@bogon share]# cd /usr/share/doc/
[root@bogon doc]# ls dhcp*
dhcp-4.2.5:
dhcpd6.conf.example  dhcpd.conf.example  ldap

dhcp-common-4.2.5:
LICENSE  README  References.txt  RELNOTES
[root@bogon doc]# cd dhcp-4.2.5/
[root@bogon dhcp-4.2.5]# ls
dhcpd6.conf.example  dhcpd.conf.example  ldap

[root@bogon dhcp-4.2.5]# vi dhcpd.conf.example        #dhcp.conf的模版

复制这个模版到/etc/dhcp/下

[root@bogon dhcp-4.2.5]# cp dhcpd.conf.example /etc/dhcp/dhcpd.conf 
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? yes
[root@bogon dhcp-4.2.5]# cd
[root@bogon ~]# cd /etc/dhcp
[root@bogon dhcp]# ls
dhclient.d  dhclient-exit-hooks.d  dhcpd6.conf  dhcpd.conf  scripts
[root@bogon dhcp]# vim dhcpd.conf 

#设置全局配置参数
default-lease-time 21600;                                     #默认租约为 6 小时,单位为秒
max-lease-time 43200;                                         #最大租约为 12 小时,单位为秒
option domain-name "benet.com";                             #指定默认域名
option domain-name-servers 202.106.0.20, 202.106.148.1;     #指定 DNS 服务器地址
ddns-update-style none;                                     #禁用 DNS 动态更新

#subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet 192.168.80.0 netmask 255.255.255.0 {            #声明要分配的网段地址
  range 192.168.80.10 192.168.80.20;                #设置地址池
  option routers 192.168.80.254;                    #指定默认网关地址
}

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.200;
  option routers 192.168.1.254;
}

subnet 192.168.2.0 netmask 255.255.255.0 {
  range 192.168.2.20 192.168.2.30;
  option routers 192.168.2.254;
}

#host主机声明(给单机分配固定的 IP 地址)
host hostname {                                        #指定需要分配固定 IP地址的客户机名称
  hardware ethernet 00:c0:c3:22:46:81;                #指定该主机的 MAC地址
  fixed-address 192.168.4.100;                        #指定保留给该主机的 IP地址
}

#后面内容可都删除

systemctl start dhcpd
systemctl stop firewalld
setenforce 0

netstat -anpu | grep ":67"

#如果DHCP服务启动失败,可以查看日志文件
tail -f /var/log/messages


在ensp中配置DHCP 中继
dhcp enable                                    #开启DHCP功能
#
interface Vlanif10
 ip address 192.168.1.254 255.255.255.0
 dhcp select relay                            #开启DHCP中继功能
 dhcp relay server-ip 192.168.80.10            #指向DHCP服务器的地址

 设置全局配置参数

虚拟机设置

此时的终端工具会断开,需要打开电脑的网络适配器进行修改

重新连接终端工具,并重启dhcp

寻找主机进行查看,需要在一个网络模式下

以win10为例查看

以linux为例,查了ip地址和DNS

host主机声明(给单机分配固定的 IP 地址)以192.168.10.188为例

修改配置文件:找到主机的物理地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1621183.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java-Collection集合极其遍历

Collection是Java中的一种单列集合,即每次添加只能添加一个元素。它是单列集合的祖宗接口,其功能是全部单列集合都可以使用的 常用方法: public boolean add(E e) 将特定对象添加到当前集合中public void clear() 清空集合public boolean r…

JAVA毕业设计137—基于Java+Springboot+Vue的物流快递仓库管理系统(源代码+数据库)

毕设所有选题: https://blog.csdn.net/2303_76227485/article/details/131104075 基于JavaSpringbootVue的物流快递仓库管理系统(源代码数据库)137 一、系统介绍 本项目前后端分离,分为员工、销售员、仓库员、商品管理员、超级管理员五种角色 1、员工…

遥控车模的电机控制器

一、项目简介 基于CH32V103单片机结合RTT开发一套无刷电机无感矢量控制器,使用无感矢量控制无刷电机具有噪音小、控制线性度好、电机效率高等优点。使用三相全桥电路将直流电转换为交流电驱动无刷电机,利用串联电阻和差分采样电路采集UV两相的电流信号。…

针对icon报错

针对上篇文章生成图标链接中图标报错 C# winfrom应用程序添加图标-CSDN博客 问题:参数“picture”必须是可用作Icon的参数 原因:生成的ico图标类型不匹配 解决方法: 更改导出的ico类型

DataGrip操作Oracle

一、创建表空间 表名任意起,路径自己指定 -- 创建表空间 create tablespace mydb1 -- 表名 datafile E:\Code\sql\oracle\oracle_tablespace\mydb1.dbf --指定表空间路径 size 100M --指定表空间大小 autoextend on next 50M --指定一次扩充多少mb extent managemen…

B2弹幕插件优化版WordPress插件

源码下载:B2弹幕插件.zip 这是b2独有的站点信息弹幕插件,专门用来在首页显示站点动态的一款个性化 WordPress插件。喜欢的可以下载回去进行二次开发,还是蛮不错的 基于wordpress 7B2主题开发的一款弹幕插件/气泡插件 功能一览 插件安装&a…

redis7安装与配置

一、下载 通过 redis官网 或者 redis中文网 下载。 以下是 redis 相关文档资料链接: redis源码地址 redis在线测试 redis命令参考 redis中文文档 历史发布版本的源码地址 二、版本命名规则 Redis从发布到现在,已经有十余年的时光了,…

HFSS端口介绍2---波端口

前面我们讨论了Lumped Port设定相关的内容,这节我们继续讨论Wave Port(波端口)使用相关的问题。 波端口使用范围 封闭结构:如波导、同轴电缆等 包含多个传播模式的模型 端口平面在求解区域外的模型 模型中包含均匀的波导或者传输线结构 波端口的大小 对于封闭的传输线结构:边…

【熵与特征提取】从近似熵,到样本熵,到模糊熵,再到排列熵,包络熵,散布熵,究竟实现了什么?(第六篇)——“散布熵”及其MATLAB实现

今天讲散布熵,之前用了几篇文章分别讲述了功率谱熵、奇异谱熵、能量熵、近似熵、样本熵、模糊熵、排列熵、包络熵这8种类型的熵: Mr.看海:【熵与特征提取】基于“信息熵”的特征指标及其MATLAB代码实现(功率谱熵、奇异谱熵、能量…

全世界IT人苦竞业久矣!美国FTC宣布全面废除员工竞业协议

2023 年 1 月,美国联邦贸易委员会(FTC)发布声明称,拟在全国范围禁止用人单位与雇员签订竞业禁止性条款。当地时间 4 月 23 日,FTC 宣布全面禁止所有员工(包括高级管理人员)签署新的竞业禁止协议…

SpringMVC基础篇(二)

文章目录 1.Postman1.基本介绍Postman是什么? 2.Postman快速入门1.Postman下载点击安装自动安装在系统盘 2.基本操作1.修改字体大小2.ctrl “” 放大页面3.进入创建请求界面 2.需求分析3.具体操作4.保存请求到文件夹中1.点击保存2.创建新的文件夹3.保存成功 3.使用…

MySQL索引为什么选择B+树,而不是二叉树、红黑树、B树?

12.1.为什么没有选择二叉树? 二叉树是一种二分查找树,有很好的查找性能,相当于二分查找。 二叉树的非叶子节值大于左边子节点、小于右边子节点。 原因: 但是当N比较大的时候,树的深度比较高。数据查询的时间主要依赖于磁盘IO的次数,二叉树深度越大,查找的次数越多,性能…

Git--原理与使用

目录 一、课程目标二、初始Git三、安装Git3.1 Linux-centos 四、Git的基本操作4.1 创建Git本地仓库 五、配置Git六、认识工作区、暂存区、版本库七、添加文件八、查看.git九、修改文件十、版本回退十一、撤销修改11.1 情况一:对于工作区的代码,还有add11…

mathtype设置公式编号,公式居中以及编号靠右

在word中实现: 1. 首先点击栏,选择更多栏去看 看到栏的宽度,然后去设置样式 在开始-样式中设置,新建样式: 新建样式,然后设置格式-制表位,选择对齐方式,居中对齐设置刚才的一半,右…

使用C++实现尾插式循环链表结构

在编码中避免不了使用链表,特别是循环链表,很多同学使用时为了省事直接使用C STL库中的链表实现,这样当然很简单也不容易出错,但同时也不可避免的带来了一些问题: 是半个黑盒,虽然能看源码,但是…

C++_第八周做题总结

id:45 A.Equation(类与对象构造) 题目描述 建立一个类Equation,表达方程ax2bxc0。类中至少包含以下方法: 无参构造(abc默认值为1.0、1.0、0)与有参构造函数,用于初始化a、b、c的值; set方法,…

视频教程下载:用ChatGPT的 API 开发AI应用指南

通过这门关于 OpenAI API 和 ChatGPT API 的全面课程,在您的应用中释放人工智能的力量。随着人工智能技术的快速发展,比以往任何时候都更重要的是保持领先地位,并为您的项目利用这些尖端工具。在本课程中,您将深入了解人工智能驱动…

汇智知了堂晨会聚焦:NAS应用如何赋能网络安全实战

在近期汇智知了堂网络安全75班的晨会上,一场关于NAS应用的深入分享完美展开。学员们以饱满的热情投入到这场安全讨论中,共同探索网络安全的新天地。 此次分享会聚焦于NAS的应用,旨在帮助学员们更好地了解NAS的定义与功能,掌握其在…

带头双向循环链表的基本操作(c语言实现)

带头双向循环链表 带头双向循环链表是一种结合了双向链表和循环链表特性的数据结构。其主要特点如下: 双向性:链表中的每个节点都有两个指针,一个指向下一个节点(next),另一个指向前一个节点(p…

idea中打印日志不会乱码,但是部署到外部tomcat中乱码了。

问题:如图Tomcat乱码,而且启动时的系统日志不会乱码,webapp中的打印日志才乱码。 idea中的情况如下:正常中文展示。 问题分析:网上分析的原因是Tomcat配置的字符集和web应用的字符集不匹配,网上集中的解决…