DHCP协议的作用及原理

1.寻找server

当DHCP客户端第一次登陆网络的时候,也就是客户发现本机上没有任何ip资料设定,他会向网路发送一个dhcpdiscover封包。因为客户端还不知道自己属于那一个网路,
所以封包的来源地址为0.0.0.,而目的地址则为255.255.255.,然后再附上dhcpdiscover的信息,向网路进行广播。网络上每一台安装了tcp/ip协议的主机都
会接收到这种广播信息,但是只有DHCP服务器才会做出响应dhcpdiscover的等待时间预设为1秒也就是当客户端第一个dhcpdiscover封包送出去之后在1秒内没有得到
回应的话就会进行第二次广播,在得不到回应的情况下客户端一共有四次dhcpdiscover广播,除了第一次会等待1秒之外,其余的三次等待时间分别是9 16秒。如果
没有得到DHCP服务器的回应客户端则会显示错误信息宣告dhcpdiscover的失败,之后基于使用者的选择系统会继续在五分钟之后在重新请求一次。

2.提供IP租用位址。

当DHCP服务器监听到客户端发出的dhcpdiscover广播后,它会从那些还没有租出的位址范围内,选择空置的ip,连通其它tcp/ip设定,回应给客户端一个dhcpdiscover
封包,由于客户端在开始的时候还没有IP地址,所以在其dhcpdiscover封包内会带有其Mac位址信息,DHCP服务器回应的dhcpoffer封包则会根据这些资料传递给需求租约
的客户。根据服务器端的设定。dhcppoffer封包会包含一个租约期限的信息

3.接收ip租约

如果客户端收到网络上多态DHCP服务器的回应,只会挑选其中一个DHCPoffer(通常是先抵达的那个),并且会向网路发送一个dhcprequest广播封包,告诉所有DHCP服务
器它将制定接收那一台服务器提供的IP地址,之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址同时,客户端还会向网路发
送一个ARP封包,查询网路上面有没有其它机器使用该IP地址;如果发现该IP地址已被占用,客户端则会送出一个DHCPDELETE封包改DHCP服务器,拒绝接受其它dhcpoffer,
并重新发送dhcpdiscover信息。

4.确认阶段

即DHCP服务器确认所提供的IP地址的阶段,当DHCP服务器收到DHCP客户机回答的DHCPrequest请求信息之后,它便向DHCP客户机发送一个包含他所提供的IP地址和其它设置
的DHCPPack确认信息,告诉DHCP客户机可以使用它所提供的IP地址。然后DHCP客户机便将其tcp/ip协议与网卡绑定,另外,除DHCP客户机选中的服务器外,其他的DHCP服务
器都将收回曾经提供的IP地址。

5.重新登录

以后DHCP客户机每次重新登录网络时,就不再需要发送DHCPdiscover发现信息了,二十直接发送包含前一次所分配的IP地址的DHCPrequest请求信息。当DHCP服务器收到这
一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCPpack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时,则DHCP服务器给DHCP客
户机回答一个dhcpnack的否认信息,当原来的DHCP客户机收到此dhcpnack否认信息后,它九必须重新发送dhcpdiscover发现信息来请求新的IP地址。

6.更新租约

DHCP服务器想DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果DHCP客户机要延长其IP租约,则必须更新其IP租约。DHCP客
户机启动时和IP租约期限过一半时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的信息。至于IP的租约期限却是非常考究的,并非如我们租房子那样简单。DHCP客户
机除了在开机的时候发出DHCPrequest请求之外,在租约期限一半的时候也会发出DHCPrequest,如果此时得不到DHCP服务器的确认的话,工作站还可以继续使用该ip,然后
在剩下的租约期限的一半的时候,还得不到确认的话,那么工作站中就不会有这个ip了,要是想退。可以随时退租,可以随时送出DHCPLEREASE命令解约,就算这个租约是在前
一秒获得的。

配置DHCP服务器基本配置

[root@localhost ~]# yum install dhcp     # 安装DHCP服务
[root@localhost ~]#

DHCP默认配置文件处于:/etc/dhcp/dhcpd.conf

更多详情配置请自行百度。

ssh服务基本配置

安全shell(ssh)是最通用的系统管理工具之一。它允许登录远程系统并在其上执行命令。它利用强大的加密技术和主机秘钥来防止网络嗅探。他是默认启用的唯一网络发现,并且接受远程访问。
-X 选项 可使远程主机的程序在本地桌面环境下显示图形界面。这带来了便利,而且为本地主机与远程主机之间的通信通道提供了保护。

输入正确的用户名密码即可远程登录服务器

ssh实现公钥认证

安全shell(ssh),允许使用私钥-公钥进行身份验证。私钥自己妥善保管,公钥告知任何人。拥有公钥的ssh服务器可以发布仅由私钥的系统才能解答的问题。因此可以根据所持有的
秘钥进行验证。这样在每次访问系统时不必输入密码。但是安全性仍可以得到保障。

可以使用ssh-keygen命令生成秘钥

[root@localhost ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Overwrite (y/n)?
[root@localhost ~]#

之前已经生成过私钥了。。现在貌似覆盖了。。

在生成秘钥期间,将提供用于指定密码的选项。必须提供密码才能访问私钥。通过此方法,即使秘钥被盗,也很难使用秘钥。这样在攻击者破解,并使用私钥钱,可以生成新的秘钥并
删除所有涉及旧秘钥的内容。

生成SSH秘钥后,秘钥将默认存储在家目录的.ssh/目录中。

[root@localhost ~]# ls ~/.ssh/
id_rsa id_rsa.pub known_hosts
[root@localhost ~]#

可以使用ssh-copy-id将自己的公钥复制到目标系统

[root@localhost ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub user1@192.168.1.1
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
^C
[root@localhost ~]#

在系统化之间安全的拷贝文件 scp

[root@localhost ~]# scp /etc/passwd 192.168.1.1:/tmp/
[root@localhost ~]#

在系统之间安全的同步文件 rsync

[root@localhost /]# rsync -av 192.168.1.1:/test/ /tmp/
[root@localhost /]#

NTP服务器

[root@localhost /]# yum install ntp
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
软件包 ntp-4.2.6p5-.el7.centos.x86_64 已安装并且是最新版本
无须任何处理
[root@localhost /]#

配置文件:

[root@localhost /]# vim /etc/ntp.conf
[root@localhost /]#

NTP服务器也是两台服务器之间进行数据交互的,具体请百度

服务管理-DHCP、NTP、SSH的更多相关文章

  1. Linux服务管理之ntp

    NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 在计算机的世界里,时间非常地重要,例如对于火箭发射这种科研活动,对时间的统一性和准确性要 ...

  2. 《Linux就该这么学》培训笔记_ch09_使用ssh服务管理远程主机

    <Linux就该这么学>培训笔记_ch09_使用ssh服务管理远程主机 文章最后会post上书本的笔记照片. 文章主要内容: 配置网络服务 远程控制服务 不间断会话服务 书本笔记 配置网络 ...

  3. Linux 就该这么学 CH09 使用ssh服务管理远程主机

    1 .配置网络服务 1)配置网络参数   五种配置网络的方法:命令行,编译网络配置文件,nmtui(旧版ui界面),nm-connection-edit(新版ui),VM虚拟机右上角图标等.  这里配 ...

  4. Linux服务管理之DHCP

    1.DHCP服务简介 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络 ...

  5. centos linux系统日常管理3 服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,curl,ping ,telnet,traceroute ,dig ,nc,nmap,host,nethogs 第十六节课

    centos linux系统日常管理3  服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,cur ...

  6. NFS服务和DHCP服务讲解(week3_day2)--技术流ken

    NFS服务端概述 NFS,是Network File System的简写,即网络文件系统.网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS: NFS允许一个系统在网络上与他人共享目录 ...

  7. NFS服务和DHCP服务讲解

    1.NFS服务端概述 NFS,是Network File System的简写,即网络文件系统.网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS: NFS允许一个系统在网络上与他人共享 ...

  8. 第11章 Linux服务管理

    1. 服务分类 (1)Linux的服务 ①Linux中绝大多数的服务都是独立的,直接运行于内存中.当用户访问时,该服务直接响应用户,其好处是服务访问响应速度快.但不利之处是系统中服务越多,消耗的资源越 ...

  9. ubuntu服务管理

    uRedhat 提供了chkconfig这个命令来管理系统在不同运行级别下的服务开启/关闭: chkconfig ServiceName on/off 并可以用chkconfig --list(两个杠 ...

随机推荐

  1. [luoguP2601] [ZJOI2009]对称的正方形(二维Hash + 二分 || Manacher)

    传送门 很蒙蔽,不知道怎么搞. 网上看题解有说可以哈希+二分搞,也有的人说用Manacher搞,Manacher是什么鬼?以后再学. 对于这个题,可以从矩阵4个角hash一遍,然后枚举矩阵中的点,再二 ...

  2. android 脱壳 之 dvmDexFileOpenPartial断点脱壳原理分析

    android 脱壳 之 dvmDexFileOpenPartial断点脱壳原理分析 导语: 笔者主要研究方向是网络通信协议的加密解密, 对应用程序加固脱壳技术很少研究, 脱壳壳经历更是经历少之甚少. ...

  3. mybatis学习(五)——增删改查及自增主键的获取

    一.mybatis的增删改查 1.修改hotelMapper接口 package com.pjf.mybatis.dao; import com.pjf.mybatis.po.Hotel; publi ...

  4. c++ 的语法方面的问题

    1.字符串string  中 ""和null的区别 答:举个例子,你老妈让你去打瓶酱油.你要是空手去了,你就是带着null去的.你要是带着空瓶子去的,你就是呆着“”去的.希望你能理 ...

  5. Django的标准库django.contrib包介绍

    原文地址:http://www.nowamagic.net/academy/detail/1318716 前面我们激活了 Django 后台,我们要使用自动化的站点管理工具(django.contri ...

  6. P1340 送礼物

    时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 作为惩罚,GY被遣送去帮助某神牛给女生送礼物(GY:貌似是个好差事)但是在GY看到礼物之后,他就不这么认为了. ...

  7. ThinkPHP 的 Vender的简单实用

    ThinkPHP 的 Vender的简单实用 框架版本:3.2 示例一.调用二维码类: Vendor('phpqrcode.phpqrcode'); $QRcode = new \QRcode (); ...

  8. kafka性能调优

    https://blog.csdn.net/u013063153/article/details/73826322

  9. AC日记——让我们异或吧 洛谷 P2420

    题目描述 异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中…xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B是否是男生)=A和B是否能 ...

  10. js-数字渐增到指定的数字,在指定的时间内完成(有动画效果哦)插件jquery.animateNumber.js

    本来在项目中我自己实现的效果是数字由0渐增到指定的数字就好. 但是,最终效果不理想! Why? 最终指定的数字太大了,TMMD,滚动好久就不到,那用户想看自己有多少钱了,那不是就一直等着!!!所以这个 ...