Linux中DCHP与时间同步
目录
一、DHCP
(一)工作原理
1.获取
2.续约
(二)分配方式
(三)服务器配置
1.随机地址分配
2.固定地址分配
二、时间同步
(一)ntpdate
(二)chrony
1.检测所有源及其状态
2.检查当前系统的时钟误差
3.搭建本地时间同步服务器
一、DHCP
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种网络管理协议,用于自动分配和管理TCP/IP网络中的IP地址、子网掩码、默认网关、DNS服务器等参数。DHCP使得网络管理员能够集中并自动地管理网络中计算机的TCP/IP配置信息,减少手动设置的工作量,同时确保了网络资源的有效利用
(一)工作原理
1.获取
①DHCP客户端请求:
当一台新的设备加入到网络中时,它会广播一个DHCP Discover报文,请求DHCP服务器为其提供网络参数。
②DHCP服务器响应:
DHCP服务器接收到Discover报文后,会选择一个未被使用的IP地址,然后向DHCP客户端发送一个包含该IP地址和其他网络参数的DHCP Offer报文。
③DHCP客户端确认:
DHCP客户端收到Offer报文后,会选择其中一个DHCP服务器的offer,并向该服务器发送一个DHCP Request报文,请求使用提供的IP地址。
④DHCP服务器确认:
DHCP服务器收到Request报文后,会向DHCP客户端发送一个DHCP Ack报文,确认IP地址的分配。

2.续约
在整个过程中,如果DHCP客户端希望续约其租期,将在租期快结束时发送DHCP Renew或DHCP Rebind请求来更新租约;如果DHCP服务器同意续约,则发送DHCP Acknowledgment进行确认。当客户端不再需要IP地址时,可以发送DHCP Release消息释放IP地址资源
(二)分配方式
DHCP的分配方式有三种
1.自动分配:分配到一个IP地址后永久使用
2.手动分配:由DHCP服务器管理员专门指定IP地址
3.动态分配:使用完后释放该IP,供其它客户机使用
(三)服务器配置
1.随机地址分配
首先第一步:yum install dhcp -y 安装dhcp程序
安装完之后直接使用systemd服务是无法打开的

可以看到,这个配置文件类似于手册一样,所以读取这个文件是无法开启的
现在来修改一下这个配置文件
先将/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example文件内容内容复制到/etc/dhcp/dhcod.conf中,然后再去修改它

设置全局DNS为114.114.114.114(8.8.8.8),租约单位为秒
注意:要以封号结尾


保存退出后,重新启动一下服务就可以打开了

这个时候我们去验证一下
使用Linux系统验证
将客户机的网址获取方式改为dhcp

保存退出后重启网卡 systemctl restart network
如果你是使用远程服务,如Xshell连接的,此时会直接断开,因为IP地址改变,远程登录服务匹配不到IP地址

使用Windows系统验证
修改获取地址方式为dhcp

2.固定地址分配
首先获取客户机的MAC地址

将客户机的MAC地址写到配置文件中

重启dhcpd服务后,再去客户机查看

二、时间同步
在Linux系统中,时间同步是一个关键的系统维护任务,确保所有系统时钟与世界协调时间(UTC)保持一致。
(一)ntpdate
是一个基于 Network Time Protocol (NTP) 的命令行工具,用于手动将本地系统时间与远程 NTP 服务器的时间进行同步。它通过一次性获取并设置当前系统时间来快速调整系统时钟,但并不提供持续性的时间同步服务。
在较早的 Linux 发行版中,ntpdate常被用来一次性同步时间。然而,现代系统更推荐使用如ntpd 或chrony这样的完整 NTP 守护进程,它们不仅可以实现精确的时间同步,还可以逐步调整系统时钟,以减少对系统的潜在冲击,并且能更好地处理网络延迟和抖动带来的影响。

上述命令会从 NTP 公共池(pool.ntp.org)中的一个服务器同步时间,但请注意,不建议在运行了ntpd 或chronyd的系统上直接使用ntpdate,因为它可能会干扰这些守护进程正在进行的精细时间调整工作。如果需要在已安装了 NTP 守护进程的系统上进行时间同步,应使用相应守护进程提供的管理命令或配置文件来进行操作。
(二)chrony
Chrony是一个现代的网络时间同步服务,它提供了更高的精确度和更快的时间同步速度,并且在各种网络环境(包括间歇性连接、高延迟网络以及虚拟机)下表现出色。通常情况下,Chrony会以平滑的方式逐渐调整系统时钟以减少对系统的潜在影响,例如避免引起正在运行的应用程序或服务出现问题。然而,在某些特殊场景下,如果需要立即纠正系统时间,可以使用chronyc makestep命令。不过请注意,频繁使用此命令可能会影响系统的稳定性,应当谨慎操作,并尽量依赖Chrony自动的、渐进式的时间同步机制
首先确保chronyd服务已经开启,系统应该是默认开启,如果没有开启则需要手动

1.检测所有源及其状态
输入:chronyc sources

210 Number of sources = 4:表示当前有4个时间源(NTP服务器)。
每一行代表一个NTP服务器的信息,各列含义如下:
^*、^+、^- 和 ^? 符号分别代表不同的状态:
^* 表示当前首选或活跃的时间源。
^+ 表示良好的时间源,但并非首选。
^- 表示源不可达或者错误,当前未用于时间同步。
^? 表示源未知,通常意味着它尚未被Chrony成功查询过。
139.199.215.251 139.199.214.202 ntp.wdc2.us.leaseweb.net 和 ntp6.flashdance.cx 是各个NTP服务器的名称或IP地址。
Stratum 列表示服务器在NTP层次结构中的层级,数值越小表示距离UTC标准时间越近。例如,Stratum 2服务器是从Stratum 1服务器获取时间的。
Poll 列是Chrony向该服务器请求时间更新的频率。
Reach 列用二进制位表示该服务器可达性及最新样本的质量。这里的数字和符号(如377、61等)表示在过去8次尝试中联系到服务器的次数。
LastRx 列显示最后一次从该服务器接收到响应的时间(以秒为单位)。
Last sample 列提供了关于最后接收到的时间样本的详细信息,包括偏移量(相对于本地时钟)、抖动以及精度估计。例如 -2009us[-2130us] +/- 107ms 表示本地时钟比这个NTP服务器慢约2.009微秒至2.130微秒,并且这个测量值的误差范围大约在±107毫秒内。
2.检查当前系统的时钟误差
输入:chronyc tracking

-
Reference ID:标识参考时钟源的ID(这里为139.199.215.251)。
-
Stratum:表示系统的层级,这里是3,意味着该系统的时间来源于一个Stratum 2级别的NTP服务器。
-
Ref time (UTC):显示了参考时钟最后一次更新的时间,这里的日期是2024年1月11日02:43:22(请注意这是一个示例数据,并非实际日期)。
-
System time:描述本地系统时间与NTP服务器时间的偏差,这里是慢了0.000316353秒。
-
Last offset:上一次同步后的偏移量,此处为-0.000121256秒,即本地时间略快于NTP服务器时间。
-
RMS offset:所有样本平均偏移量的标准差,这里是0.065495297秒,表示平均误差水平。
-
Frequency:频率偏差,10.391 ppm(百万分之一)慢,说明本地时钟运行速度略慢于准确值。
-
Residual freq:残余频率,-0.005 ppm,进一步细化频率误差。
-
Skew:时钟偏差斜率,0.438 ppm,反映时钟速率随时间的变化程度。
-
Root delay:从本地系统到参考时钟源之间网络延迟的时间,这里是0.038137767秒。
-
Root dispersion:由于网络抖动和服务器处理时间导致的时间不确定性,这里是0.021367520秒。
-
Update interval:Chrony与NTP服务器之间的更新间隔,这里是1030.2秒。
-
Leap status:闰秒状态,显示为“Normal”,表示目前不存在即将发生的闰秒事件
3.搭建本地时间同步服务器
在内网环境中,如果只允许有一台电脑可以连接网络的情况下,其它机器是无法从网络中同步时间,此时需要搭建一台本地时间同步的服务器
①修改服务器配置文件
需要有一台可以连接网络的机器,首先修改其配置文件
chrony服务的配置文件在/etc/chrony.conf中,添加:server 网络服务器地址 iburst
网络时间服务器可以添加也可以不添加,它会自动从多个时间地址池中选择同步,也可以将所有选项(3-6行)删除,添加自己特定的网络时间服务器

添加客户机的时间同步服务器为自己设置的服务器地址

服务器和客户机都设置好后,两边都需要重启一下服务,重新加载配置文件
将设置的服务器时间调整

客户机的时间会自动与服务器时间同步

相关文章:
Linux中DCHP与时间同步
目录 一、DHCP (一)工作原理 1.获取 2.续约 (二)分配方式 (三)服务器配置 1.随机地址分配 2.固定地址分配 二、时间同步 (一)ntpdate (二)chrony …...
国产系统-银河麒麟桌面版V10安装字体-wps安装字体
安装系统:银河麒麟V10 demodemo-pc:~/桌面$ cat /proc/version Linux version 5.10.0-8-generic (builddfa379600e539) (gcc (Ubuntu 9.4.0-1kylin1~20.04.1) 9.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #33~v10pro-KYLINOS SMP Wed Mar 22 07:21:49 UTC 20230.系统缺失…...
python 10常用自动化脚本收藏好
01、 图片优化器 使用这个很棒的自动化脚本,可以帮助把图像处理的更好,你可以像在 Photoshop 中一样编辑它们。 该脚本使用流行的是 Pillow 模块 # Image Optimizing # pip install Pillow import PIL # Croping im PIL.Image.open("Image1.jp…...
java物品检验管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目
一、源码特点 java Web 物品检验管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Mysq…...
Pandas实战100例 | 案例 2: 数据探索 - 查看和理解数据
案例 2: 数据探索 - 查看和理解数据 知识点讲解 在数据分析的早期阶段,对数据进行初步的探索是非常重要的。这包括查看数据的基本信息、统计摘要、以及数据的形状。 示例代码 查看数据的基本信息 # 显示 DataFrame 的基本信息,包括列名、非空值数量…...
c++qt-基本组件
1. Designer 设计师(掌握) Qt包含了一个Designer程序,用于通过可视化界面设计开发界面,保存的文件格式为.ui(界面文件)。界面文件内部使用xml语法的标签式语言。 在Qt Creator中创建项目时,选中…...
SpringBoot多环境配置Maven Profile组
Maven profile组 注意切换配置时 mvn clean下 或者 clean 加install 或者compile 编译 clean之后 install下 或者compile 编译 nohup java -Xms256m -Xmx512m -Dfile.encodingUTF-8 -jar demo.jar --spring.profiles.activeprod > system.log 2>&1 &...
服务器配置 ssh 密钥登录
服务器配置 ssh 密钥登录 配置 服务器安全组策略,开放 ssh 22 端口,以 root 用户登录服务器。 配置 ssh key 登录 ssh-keygen 生成公钥和私钥对 如果不需要其他设置,一直回车 可以在 ~/.ssh 目录下看到两个文件,即刚生成的私钥…...
使用递归将list转换成tree
在产品研发时遇到这样一个问题,对于省市区县这类三级联动的数据,前端插件需要一次把数据全部返回,单纯的使用接口查询字节的没办法满足要求。 如果一次把数据全部返回,前端使用起来很麻烦需要一条一条的进行查找。 常规的使用方…...
untiy使用http下载资源
文章目录 提醒下载一个资源并保存到本地下载一张图片 提醒 部分API需要将Unity的 Edit/PrejectSetting/Player/OtherSetttings/AConfiguration/ApiCompatibilityLevel 设为.NetFramework 才可以使用 下载一个资源并保存到本地 private IEnumerator DownloadFormServer_IE(st…...
03-编码篇-x264编译与介绍
使用FFMPEG作编码操作时,会涉及到将yuv数据编码成h264数据,FFmpeg的libavcodec中的libx264.c会调用x264库的源码作编码: 1.x264库编译 下载X264,地址为:http://www.videolan.org/developers/x264.html,并解…...
生活自来水厂污水处理设备需要哪些
生活自来水厂是确保我们日常用水质量安全的重要设施。在自来水的生产过程中,污水处理设备是不可或缺的环节。那么,生活自来水厂的污水处理设备都有哪些呢?本文将为您详细介绍。 首先,生活自来水厂的污水处理设备主要包括预处理设备…...
Full names for abbreviations of Linux Commands
synopsis Towards/On Full names for abbreviations of Linux Commands I) website addressII) Mapping between full names and abbreviations I) website address II) Mapping between full names and abbreviations su:Swith user 切换用户,切换到ro…...
kafka下载安装部署
Apache kafka 是一个分布式的基于push-subscribe的消息系统,它具备快速、可扩展、可持久化的特点。它现在是Apache旗下的一个开源系统,作为hadoop生态系统的一部分,被各种商业公司广泛应用。它的最大的特性就是可以实时的处理大量数据以满足各…...
python包管理工具:pipenv的基本使用
很多语言都提供了环境隔离的支持,例如nodejs的node_module,golang的go mod,python也有virtualenv和pyvenv等机制。 为了建立依赖快照,通常会用pip freeze > requirements.txt 命令生成一个requirements.txt文件,在…...
AI系统ChatGPT网站系统源码AI绘画详细搭建部署教程,支持GPT语音对话+DALL-E3文生图+GPT-4多模态模型识图理解
一、前言 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作Ch…...
MC-4/11/03/400步进电机驱动器的主要驱动方式有哪些?
MC-4/11/03/400步进电机驱动器的主要驱动方式有哪些? 步进电机驱动器是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,这个固定的角度被称为“步距角”。步进电机不能…...
大数据技术原理与应用期末复习(林子雨)
大数据技术原理与应用期末复习(林子雨) Hadoop的特性HBase编程实践NoSQL的四大类型键值数据库优点:缺点: 列族数据库优点:缺点: 文档数据库优点:缺点: 图数据库优点:缺点…...
C练习——魔术师猜三位数
题目: 有一种室内互动游戏,魔术师要每位观众心里想一个三位数abc(a、b、c分别是百位、十位和个位数字),然后魔术师让观众心中记下acb、bac、bca、cab、cba五个数以及这5个数的和值。只要观众说出这个和是多少…...
three.js 使用 tweenjs绘制相机运动动画
效果: 代码: <template><div><el-container><el-main><div class"box-card-left"><div id"threejs" style"border: 1px solid red"></div><div class"box-right"…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...
服务器--宝塔命令
一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行! sudo su - 1. CentOS 系统: yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...
uniapp 字符包含的相关方法
在uniapp中,如果你想检查一个字符串是否包含另一个子字符串,你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的,但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...
OD 算法题 B卷【正整数到Excel编号之间的转换】
文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...
