DHCP与时间同步

目录

一、DHCP

1、DHCP定义

1.什么是DHCP

2.DHCP的好处

3.DHCP的分配方式

4.为什么使用DHCP

5.DHCP模式

2、DHCP的工作过程

3、DHCP动态配置主机地址

1.DHCP服务的优点

2.可分配的地址信息

3.动态分配IP地址

二、时间同步

1、ntp

2、chrony

1、搭建本地本地时间同步服务器

2、启动chrony服务

3、修改配置文件


一、DHCP

1、DHCP定义

1.什么是DHCP

  • DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为Windows Server的一个服务组件不会被系统自动安装,还需要管理员手动安装并进行必要的配置。
  • DHCP采用C/S架构,C-client(客户机),S-server(服务器),客户机/服务器架构
  • DHCP服务对应传输层UDP协议,因为是C/S架构,所以客户机端口号是67,服务器端口号是68

2.DHCP的好处

由于上网时间的不确定性以及使用人员的技术水平不同,为每位用户分配一个固定的IP地址,不仅造成了IP地址的浪费,也会为ISP服务商带来高额的维护成本。而使用DHCP服务有以下好处:

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

3.DHCP的分配方式

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

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

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

4.为什么使用DHCP

        DHCP 服务避免了因手动设置 IP 地址所产生的错误,同时也避免了把一个 IP 地址分配给多台工作站所造成的地址冲突。DHCP 提供了安全、可靠且简单的 TCP/IP 网络设置,降低了配置 IP 地址的负担。

5.DHCP模式

        在网络中架设一台专用的 DHCP 服务器,负责集中分配各种网络地址参数(主要包括 IP 地址、子网掩码、广播地址、默认网关地址、DNS 服务器地址);其他主机作为 DHCP 客户机,将网卡配置为自动获取地址,即可与 DHCP 服务器进行通信,完成自动配置过程。

        DHCP 是 C/S 模式,DHCP 服务端和客户端需要保持通信,DHCP 基于 UDP 协议,双方都有可能会主动向对方发起通信,因此双方都需要监听端口

  • Server 端:DHCP Server(运行 dhcp 服务)
  • UDP 服务:监听端口 67(bootps)
  • Client 端:DHCP Client(运行 dhcp 程序)
  • UDP 服务:监听端口 68 (bootpc)

2、DHCP的工作过程

解析:

(1)客户端会发送一个广播报文 discover 寻找dhcp服务器

(2) dhcp 服务器收到 discover 报文,会回复一个 offer 报文,并且携带相关的配置信息

(3)客户端收到offer报文之后,会将报文中的配置信息配置好,再回复一个 request 报文,告诉dhcp服务器,将使用的地址从合法的地址池中去除

(4) dhcp服务器收到request报文,会回复一个 ACK ,告诉客户机可以放心使用。

3、DHCP动态配置主机地址

1.DHCP服务的优点

  • 为大量客户机自动分配地址,提供集中管理
  • 减轻管理和维护成本、提高网络配置效率

2.可分配的地址信息

  • 网卡的IP地址、子网掩码
  • 对应的网络地址、广播地址
  • 默认网关地址
  • DNS服务器地址

3.动态分配IP地址

1.安装dhcp软件

2.将配置文件的模板复制到

/etc/dhcp/dhcpd.conf

3.进入配置文件,进行修改

4.启动服务

5.进行验证

在Linux中验证,进入客户端

 去虚拟机,远程无法控制了

在windows中验证

win+R打开cmd

分配固定的地址

二、时间同步

ntp性能不好
chrony性能好,

1、ntp

NTP是最早和最常用的时间同步协议,它使用UDP协议在客户端和时间服务器之间进行通信。NTP通过比较本地系统时钟和远程时间服务器的时钟来调整本地时钟,以实现时间同步

是一个基于 Network Time Protocol (NTP) 的命令行工具,用于手动将本地系统时间与远程 NTP 服务器的时间进行同步。它通过一次性获取并设置当前系统时间来快速调整系统时钟,但并不提供持续性的时间同步服务。

特点:

  • 广泛支持:NTP是一种广泛支持的时间同步协议,几乎所有操作系统和网络设备都支持NTP
  • 高精度:NTP可以提供较高的时间精度,通常在几毫秒或更好的范围内
  • 复杂支持:NTP的配置相对复杂,需要手动编辑配置文件,并指定要使用的NTP服务器

2、chrony

Chrony是一个相对较新的时间同步工具,它提供了与NTP类似的功能,但使用了不同的实现方法。Chrony通过组合使用NTP和自己的算法来实现时间同步,它提供了更高的精确度和更快的时间同步速度,并且在各种网络环境(包括间歇性连接、高延迟网络以及虚拟机)下表现出色。

特点:

  • 更快的同步: Chrony使用一种称为"interleaved mode"的同步算法,可以更快地将本地时钟与远程时间服务器同步
  • 适应性调整:Chrony可以根据网络延迟和时钟偏差等因素进行适应性调整,以提供更准确的时间同步
  • 简化配置:Chrony的配置相对简单,可以使用命令行工具或编辑配置文件进行配置
  • 更少的资源消耗:Chrony对系统资源的消耗较少,适用于嵌入式设备或资源有限的环境

1、搭建本地本地时间同步服务器

首先关闭防火墙和核心防护

[root@localhost ~]# systemctl stop firewalld            #关闭临时的防火墙
[root@localhost ~]# setenforce 0                        #关闭临时的核心防护
setenforce: SELinux is disabled                         #idsabled为关闭
[root@fuwuduan ~]# vim /etc/chrony.conf

安装chrony

chronyd:后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。

chronyc:命令行用户工具,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作,也可在一台不同的远程计算机上工作

服务unit文件

/usr/lib/systemd/system/chronyd.service

监听端口:323/udp   123/udp

配置文件:/etc/chrony.conf

配置文件解释:

server :指明时间服务器地址,iburst 选项当服务器可达时,发送一个八个数据包而不是通常的一个数据包。 包间隔通常为2秒,可加快初始同步速度。

driftfile : 根据实际时间计算出计算机增减时间的比率,将它记录到一个文件中,会在重启后为系统时钟作出补偿。

rtcsync :启用内核模式,系统时间每11分钟会拷贝到实时时钟(RTC)。

allow NETADD/NETMASK 自己作为ntp服务器,让客户端来同步自己的时间。

allow all:允许所有客户端主机。

deny all:拒绝所有客户端。

cmdallow / cmddeny :可以指定哪台主机可以通过chronyd使用控制命令。

bindcmdaddress : 允许chronyd监听哪个接口来接收由chronyc执行的命令。

makestep : 通常chronyd将根据需求通过减慢或加速时钟,使得系统逐步纠正所有时间偏差。在某些特定情况下,系统时钟可能会漂移过快,导致该调整过程消耗很长的时间来纠正系统时钟。该指令强制chronyd在调整期大于某个域值时调整系统时钟。

local stratum 10 :即使server指令中时间服务器不可用,也允许将本地时间作为标准时间授时给其它客户端

2、启动chrony服务

3、修改配置文件

搭建本地时间同步服务器

服务器配置:

重启服务

主机配置

重启服务

添加1年时间,进行测试

客户机调整

或着用ntpdate调整

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++学习笔记——类继承

目录 一、一个简单的基类 1.1封装性 1.2继承性 1.3虚函数 1.4多态性 二、基类 2.1一个简单的C基类的示例 2.2 Animal是一个基类。 三、继承 3.1概念 3.2is-a关系 3.3多态公有继承 3.4静态联编和动态联编 3.5访问控制 3.6ABC理念 一、一个简单的基类 C中的基类是一…

从vue小白到高手,从一个内容管理网站开始实战开发第七天,登录功能后台功能设计--通用分页、枚举以及相关工具类

上一篇实现了数据库访问层的相关功能,还没有了解的小伙伴可以去看前面文章实现的内容,因为每一篇内容都是连贯的,不学习的话可能下面的内容学习起来会有点摸不着头脑 从vue小白到高手,从一个内容管理网站开始实战开发第六天,登录功能后台功能设计--API项目中的登录实现(二…

Java十大经典算法—KMP

字符串匹配问题: 1.暴力匹配 public class ViolenceMatch {public static void main(String[] args) {String str1 "硅硅谷 尚硅谷你尚硅 尚硅谷你尚硅谷你尚硅你好";String str2 "尚硅谷你尚硅你好";int index violenceMatch(str1, str2);S…

zookeeper下载安装部署

zookeeper是一个为分布式应用提供一致性服务的软件,它是开源的Hadoop项目的一个子项目,并根据google发表的一篇论文来实现的。zookeeper为分布式系统提供了高效且易于使用的协同服务,它可以为分布式应用提供相当多的服务,诸如统一…

轻松上手Linux文件操作:五种方法教你创建文件

轻松上手Linux文件操作:五种方法教你创建文件 一、引言二、使用touch命令创建文件三、使用文本编辑器创建文件四、使用echo命令创建文件五、使用cat命令创建文件六、使用重定向符号创建文件七、总结 一、引言 本文介绍五种在Linux系统中创建文件的方法,…

提高iOS App开发效率的方法

引言 随着智能手机的普及,iOS App开发成为越来越受欢迎的技术领域之一。许多人选择开发iOS应用程序来满足市场需求,但是iOS App开发需要掌握一些关键技术和工具,以提高开发效率和质量。本文将介绍一些关键点,可以帮助你进行高效的…

Centos7,Python3.7.6安装模块Crypto,pycryptodome,ibm_db,requests,requests_pkcs12

Centos7,Python3.7.6安装模块Crypto,pycryptodome,ibm_db,requests,requests_pkcs12 Python版本:python3.7.6 对应的各种模块 前言:把python项目放到linux上运行时,提示缺少各种模块,安装命令…

redis缓存雪崩、穿透和击穿

缓存雪崩 对于系统 A,假设每天高峰期每秒 5000 个请求,本来缓存在高峰期可以扛住每秒 4000 个请求,但是缓存机器意外发生了全盘宕机或者大量缓存集中在某一个时间段失效。缓存挂了,此时 1 秒 5000 个请求全部落数据库,…

Pygame程序的屏幕显示

不同对象的绘制与显示过程 在Pygame中,需要将所有需要在屏幕上显示的内容都绘制在一个display surface上。该Surface通常称为screen surface,它是pygame.display.set_mode()函数返回的Surface对象。 在绘制不同对象时,可以使用不同的绘制方…

基于汽车胎压检测及温度预警

课题简介 汽车胎压监测系统可分为两种:一种是间接式胎压监测系统,是通过轮胎的转速差来判断轮胎是否异常;另一种是直接式胎压监测系统,通过在轮胎里面加装四个胎压监测传感器,在汽车静止或者行驶过程中对轮胎气压和温…

鸿蒙开发环境搭建-高频环境问题解决

1.Node版本问题 由于SDK的部分工具依赖Node.js运行时,推荐使用配套API版本的Node.js,保证工程的兼容性。 匹配关系见下表: API LevelNode.js支持范围API Level≤914.x(≥14.19.1)、16.xAPI Level>914.x&#xff0…

java JDBC 连接数据库(增删查改)

必须先插入工具包 代码 public static void main(String[] args) {DataSource ds JdbcHelper.getDs();System.out.println(ds);JdbcTemplate jdbcTemplatenew JdbcTemplate(ds);System.out.println(jdbcTemplate);//新增String sql1"insert into biao values(null,?,?,…