DHCP服务器原理
- 客户端:利用广播封包发送搜索 DHCP 服务器的封包:
- 此封包的目标 IP 会是255.255.255.255, 所以一般主机接收到这个封包后会直接予以丢弃,但若局域网络内有 DHCP 服务器时,则会开始进行后续行为。
- 服务器端:提供客户端网络相关的租约以供选择:
- DHCP 服务器在接收到这个客户端的要求后,会针对这个客户端的硬件地址 (MAC)与本身的设定数据来进行下列工作:
- 到服务器的登录文件中寻找该用户之前是否曾经用过某个 IP ,若有且该 IP 目前无人使用,则提供此 IP 给客户端;
- 若配置文件针对该 MAC 提供额外的固定 IP (static IP) 时,则提供该固定 IP 给客户端;
- 若不符合上述两个条件, 则随机取用目前没有被使用的 IP 参数给客户端,并记录下来。
- DHCP 服务器在接收到这个客户端的要求后,会针对这个客户端的硬件地址 (MAC)与本身的设定数据来进行下列工作:
- 客户端:决定选择的 DHCP 服务器提供的网络参数租约并回报服务器:
- 由于局域网络内可能并非仅有一部 DHCP 服务器,但客户端仅能接受一组网络参数的租约。
- 因此客户端必需要选择是否要认可该服务器提供的相关网络参数的租约。
- 当决定好使用此服务器的网络参数租约后, 客户端便开始使用这组网络参数来设定自己的网络环境。
- 此外,客户端也会发送一个广播封包给所有物理网段内的主机, 告知已经接受该服务器的租约。
- 服务器端:记录该次租约行为并回报客户端已确认的响应封包信息:
- 当服务器端收到客户端的确认选择后,服务器会回传确认的响应封包,并且告知客户端这个网络参数租约的期限, 并且开始租约计时喔
DHCP服务器原理的更多相关文章
- Linux系统学习 十、DHCP服务器—介绍和原理
介绍: DHCP服务作用(动态主机配置协议) 为大量客户机自动分配地址.提供几种管理 减轻管理和维护成本.提高网络配置效率 可分配的地址信息主要包括: 网卡的IP地址.子网掩码 对应的网路地址.广播地 ...
- linux下DHCP服务原理总结
DHCP(全称Dynamic host configuration protocol):动态主机配置协议DHCP工作在OSI的应用层,可以帮助计算机从指定的DHCP服务器获取配置信息的协议.(主要包括 ...
- DHCP 工作原理
DHCP 详解 DHCP 工作原理 一.什么是DHCP? DHCP,动态主机配置协议,前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,常用的2个端口:67(DHCP server), ...
- DHCP服务器
DHCP指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码.首先,DHCP服务器必须是一台安装有Windows 2000 Server/Advanced ...
- DHCP工作原理简析
引言 DHCP是网络体系结构中应用层的一个重要协议,它可以帮助我们对要连接到互联网的计算机进行IP地址等信息的配置.本文从DHCP的原理出发,就DHCP的工作过程 进行详细的探讨. 主要报文 发现报文 ...
- 计算机网络九:IP地址、子网掩码、默认网关、DHCP服务器、DNS服务器、WINS服务器
一.IP地址与子网掩码 1.IP地址 ipv4下,ip地址=网络号+主机号. 2.子网掩码 子网掩码(subnet mask)又叫网络掩码.地址掩码.子网络遮罩,它是一种用来指明一个I ...
- DHCP服务器的搭建
dhcp笔记整理:http://services.linuxpanda.tech/DHCP/index.html 1 dhcp简介 DHCP原理 动态主机配置协议(Dynamic Host Confi ...
- DHCP服务原理与搭建(Linux系统+路由器,二选一方案)
大家都知道上网的最基本前提是要在终端上设置IP.子网掩码.网关.DNS等地址信息,在家里或者在办公室很多时候打开电脑后发现就可以上网,并没有手动设置IP.掩码.DNS地址也能上网,这是什么原因呢?其实 ...
- DHCP服务原理
DHCP 工作原理 一.什么是DHCP? DHCP,动态主机配置协议,前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,常用的2个端口:67(DHCP server),68(DHCP ...
随机推荐
- Ajax服务请求原理 简单总结
刚开始以为Ajax是一种新的语言,接触之后才知道,ajax是用于服务器交换数据并更新部分网页的Web应用程序的技术. 第一次看到Ajax请求代码时,感觉一脸萌逼,这些代码竟然把后台数据请求过来了,神奇 ...
- C# WebBrowser HttpWebRequest Cookie 的结合运用。
在WebBrowser下对网页进行操作其实是一件挺轻松的事情,他可以很方便实现自定义的网站访问习惯.而WebBrowser毕竟是对MS原生 控件的封装,当我们使用C#下的WebBrowser尤其是这样 ...
- NetApp常用检查命令
常用检查命令 ************************************* ******************************************************* ...
- 常用Java排序算法
常用Java排序算法 冒泡排序 .选择排序.快速排序 package com.javaee.corejava; public class DataSort { public DataSort() { ...
- JVM GC算法 CMS 详解(转)
前言 CMS,全称Concurrent Low Pause Collector,是jdk1.4后期版本开始引入的新gc算法,在jdk5和jdk6中得到了进一步改进,它的主要适合场景是对响应时间的重要性 ...
- JS常用工具函数
/** * Created by gaojun-pd on 2016/10/27. */ var Util = { /** * 1.判断非空 * 2.获取字符串真实长度 汉字算两位 * 3.判断参数类 ...
- MVC图片验证码
C#类库: public class YZM { public string YZMcode = String.Empty; public byte[] load() { Bitmap bit = , ...
- Java数组在内存中是如何存放的
阅读目录 一维数组 二维数组 数组对象及其引用存放在内存中的哪里? Java中有两种类型的数组: 基本数据类型数组: 对象数组: 当一个对象使用关键字“new”创建时,会在堆上分配内存空间,然后返回对 ...
- terminator 安装及使用
1. 安装 $ sudo apt-get install terminator 2. 右键设置首选项 背景设置为0.8透明度, 字体挤在一起:在ubuntu下请选择mono后缀的字体就可以了 3. 使 ...
- mysql解决Value ‘0000-00-00 00:00:00’ can not be represented as java.sql.Timestamp
同步发布:http://www.yuanrengu.com/index.php/mysqlsolvetimestamp.html 在使用mysql时,如果数据库中的字段类型是timestamp,默认为 ...