zoukankan      html  css  js  c++  java
  • 03linux基础服务-DHCP+NTP

    1、DHCP服务概述

    名称:DHCP  动态主机配置协议

    功能:动态主机配置协议是一个局域网的网络协议,是用UDP协议工作,主要有两个用途

    1)给内部网络或网络服务供应商自动分配IP地址,主机名,DNS服务器,域名

    2)配合給其它服务,实现集成化管理功能,如:无人值守安装服务器

    特点:C/S模式

    自动分配IP地址,方便管理

    DHCP不会同时租借相同的IP地址给两台主机

    DHCP管理员可以榆树特定的计算机使用特定的IP地址

    可以为每个DHCP作用域设置很多选项

    客户机在不同子网间移动时不需要充值设置IP地址。每次都自动获取IP地址就可以了

    DHCP的缺点:

    当网络上存在多服务器时,一个DHCP服务器不能查出已被其他服务器租出去的IP地址

    DHCP服务器不能跨路由与客户机通信,除非路由器允许BOOTP协议转发

    2、端口:

    DHCP 服务使用:端口67(bootps)68(bootpc)

    DHCP协议有bootp协议发展而来,是bootp的增强版本,bootps代表服务端端口,bootpc代表客户端端口

    bootp协议:引导程序协议(bootp)。他可以让无盘工作站从一个中心服务器上获得IP地址,为局域网中的无盘工作站分配动态IP地址,并不需要每个用户去设置静态IP地址

    BOOTP有一个缺点:您在设定前需事先获得客户端的硬件地址,而且MAC地址与IP的对应是静态的,换而言之,bootp非常缺乏动态性,若在有限的IP资源环境中,BOOTP的一对一对应会造成非常可观的浪费

    3、安装DHCP

    [root@test ~]# yum -y install dhcp

    4、配置文件

    4.1主配置文件

    /etc/dhcp/dhcpd.conf      #d打开这个配置文件,发现提示寻找模板配置文件

    4.2DHCP主程序包安装好会自动生成主配置文件的范本文件

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

    补充:开源服务软件里,以.sample结尾的文件是软件的模板杨莉文件,需要关注下

    现在我们将范本配置文件复制到/etc、目录下替换掉空白的dhcpd.conf主配置文件

    [root@test ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd. conf
    cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y

    5、服务启动,查看端口

    [root@test ~]# systemctl start dhcpd

    此时会发现启动会失败,这是应为DHCP服务器配置的IP地址和默认配置文件里定义的地址段不相同。且在启动DHCP服务之前,需要给DHCPserver配置一个静态的IP地址

    6、DHCP配置文件参数说明

    6.1主配置文件介绍

    说明:dhcp范本配置文件内容包含了部分参数、生命以及选项的用法,其中注释部分可以放在任何位置,并以“#”号开头,当一行内容结束时,以分号结束,大括号所在行除外

    可以看出整个配置文件分为全局和局部两个部分。但是并不容易看出哪些属于参数,哪些属于圣母和选项

    概念与协议:

    作用域:可以分配IP的范围subnet

    地址池:可以分配给客户端的IP,range包括的IP

    保留地址:指定某个客户端使用一个特定IP,通过host配置的

    租约(时间):客户端可以使用这个IP地址的时间

    配置文件:/etc/dhcp/dehcpd.conf部分配置解释

    option definitions common to all supported networks...    #定义全局配置,通用于所有支持的网络选项

    option domain-name "example.org";     #为客户端指定所属的域

    option domain-name-servers ns1.example.org, ns2.example.org;  #为客户端指定DNS服务器地址

    default-lease-time 600;    

    作用:定义默认IP租约时间,以秒为单位的租约时间

    50%续约。(续不上继续用)

    87.5%再次续约。(续不上找别人)

    DHCP工作站除了在开机的时候发出DHCPrequest请求之外,在租约期限一半的时候也会发出DHCPrequest,如果此时得不到DHCP服务器的确认的话,工作站还可以继续使用该IP;当租约期过了87.5%时,如果客户机任然无法与当初的DHCP服务器联系上,他讲与其他DHCP服务器通信。如果网络上没有任何DHCP协议服务器在运行时,该客户机必须停止使用该IP地址,并从发送一个DHCPrequuest数据包开始再一次重复整个过程,要是您想退组,可以随时送出DHCORELEASE命令解约,就算您的租约在前一秒才获得的

    max-lease-time 7200; (数字)

    作用:定义客户端IP租约时间的最大值,当客户端超过租约时间,却尚未更新IP 时,最长可以使用该IP 的时间;

    例:

    比如,机器在开机获得IP地址后,然后关机了。这时,当时间过了default-lease-time 600秒后,没有机器向DHCP续约,DHCP会保留7200秒,保留此IP地址不用于分配给其它机器。 当超过7200秒后,将不再保留此IP地址给此机器。

    注意:(3)、(4)都是以秒为单位的租约时间,该项参数可以作用在全局配置中,也可以作用在局部配置中。

    log-facility local7;   #定义日志类型为  local7

    subnet:

    声明一般用来指定IP 作用域、定义为客户端分配的IP 地址池等等

    声明格式如下:

    subnet 网络号 netmask 子网掩码 {

    选项或参数

    }

    例:

    常见声明的使用如下:

    (1)subnet 网络号 netmask 子网掩码 {......}

    作用:定义作用域,指定子网

    如:

     

    注意:网络号必须与DHCP 服务器的网络号相同

    下面介绍以下每个选项的含意:

    (1)range 起始IP 地址结束IP 地址

    作用:指定动态IP 地址范围

    注意:可以在subnet(子网)声明中指定多个range,但多个range 所定义IP 范围不能重复

    常用选项介绍

    选项通常用来配置DHCP 客户端的可选参数,比如定义客户端的DNS 地址、默认网关等等。选项

    内容都是以option 关键字开始。

    常见选项使用如下:

    (1)option routers IP 地址

    作用:为客户端指定默认网关

    如:option routers 10.5.5.1;

    (2)option domain-name

    作用:为客户端指定默认的域

    (3)option domain-name-servers IP 地址

    作用:为客户端指定DNS 服务器地址

    注意:(1)、(2)、(3)选项可以用在全局配置中,也可以用在局部配置中。

    2、租约数据库文件

    租约数据库文件用于保存一系列的租约声明,其中包含客户端的主机名、MAC 地址、分配到的IP地址,以及IP地址的有效期等相关信息。这个数据库文件是可编辑的ASCII 格式文本文件。每

    当发生租约变化的时候,都会在文件结尾添加新的租约记录。

    DHCP 刚安装好后租约数据库文件dhcpd.leases 是个空文件

    /var/lib/dhcpd/dhcpd.leases

    当DHCP 服务正常运行后就可以使用cat 命令查看租约数据库文件内容了

     

    同步时间用法:

     客户端配置:

    不同机器之间的时间同步

        为了避免主机时间因为长期运作下所导致的时间偏差,进行时间同步(synchronize)的工作是非常必要的。Linux系统下,一般使用ntp服务器来同步不同机器的时间。一台机器,可以同时是ntp服务器和ntp客户机。在网络中,推荐使用像DNS服务器一样分层的时间服务器来同步时间。

    同步时间,可以使用ntpdate命令,也可以使用ntpd服务。

    [root@test ~]# yum install ntpdate -y    ##安装ntpdate

     方法一:

    使用ntpdate比较简单。格式如下:

    [root@linux ~]# ntpdate [-nv] [NTP IP/hostname]
    [root@linux ~]# ntpdate 192.168.0.2
    [root@linux ~]# ntpdate ntp1.aliyun.com

        但这样的同步,只是强制性的将系统时间设置为ntp服务器时间。只是治标不治本。所以,一般配合cron命令,来进行定期同步设置。比如,在crontab中添加:

    0 12 *  * * /usr/sbin/ntpdate 192.168.0.1

    这样,会在每天的12点整,同步一次时间。ntp服务器为192.168.0.1。

      方法二:

    使用ntpd服务,要好于ntpdate加cron的组合。因为,ntpdate同步时间,会造成时间的跳跃,对一些依赖时间的程序和服务会造成影响。比如sleep,timer等。而且,ntpd服务可以在修正时间的同时,修正cpu tick。理想的做法为,在开机的时候,使用ntpdate强制同步时间,在其他时候使用ntpd服务来同步时间。

        要注意的是,ntpd 有一个自我保护设置: 如果本机与上源时间相差太大, ntpd 不运行. 所以新设置的时间服务器一定要先 ntpdate 从上源取得时间初值, 然后启动 ntpd服务。ntpd服务 运行后, 先是每64秒与上源服务器同步一次, 根据每次同步时测得的误差值经复杂计算逐步调整自己的时间, 随着误差减小, 逐步增加同步的间隔. 每次跳动, 都会重复这个调整的过程.

    扩展知识:

    1、让NTP服务同步硬件时间

       最后提及一点,ntp服务,默认只会同步系统时间。如果想要让ntp同时同步硬件时间,可以设置/etc/sysconfig/ntpdate 文件。

    在/etc/sysconfig/ntpdate 文件中,把SYNC_HWCLOCK=no 改成SYNC_HWCLOCK=yes

    就可以让硬件时间与系统时间一起同步。

     

    2、linux系统时间和BIOS时间是不是一定一样?

    互动:linux系统时间和BIOS时间是不是一定一样?

    查看硬件BIOS时间:

    hwclock -r    :读出BIOS的时间参数

    hwclock -w    :将当前系统时间写入BIOS中。

    例:

    [root@test ~]# date -s "2015-3-6 21:13"

    Fri Mar  6 21:13:00 CST 2015

    [root@test ~]# hwclock -r

    Fri 06 Mar 2015 08:17:56 PM CST  -0.720333 seconds

    [root@test ~]# date

    Fri Mar  6 21:13:05 CST 2015

    [root@test ~]# hwclock -w

    [root@test ~]# hwclock -r

    Fri 06 Mar 2015 09:13:20 PM CST  -0.095199 seconds

  • 相关阅读:
    Linux压缩和解压缩命令(linux必学基础)
    Windows Server 2012 忘记登录密码怎么办?
    linux双网卡双网关设置
    date命令的帮助信息,使用date命令输出数字做为命名标题则不会有重复标题
    linux中history加入显示时间命令代码
    the MTS failed last time时的解决办法
    linux tar.gz zip 解压缩 压缩命令
    如果centos7添加新网卡,系统不识别的解决办法
    Linux常用命令英文全称与中文解释 (pwd、su、df、du等)
    使用动态规划算法解释硬币找零问题
  • 原文地址:https://www.cnblogs.com/hackerlin/p/11279086.html
Copyright © 2011-2022 走看看