各位小伙伴们,又是元寒气满满的一天,最近在后台听到不少人对静态配置IP地址的种种抱怨:

以上问题,各位兄弟们有遇到过吗

莫急,小维来为各位小伙伴们支招

其实吧,有了动态主机配置协议DHCP(Dynamic Host Configuration Protocol),上面的问题都可以解决了。小伙伴们再也不用担心手工配错,费神费力了。DHCP能够实现动态为主机分配IP地址,而且是目前应用很广泛的一种技术。例如:办公室、网吧里的固定PC;咖啡厅、机场等提供WIFI接入的地方用手机上网;这些都会用到DHCP。今天就由小维来给大家普及下DHCP的各种工作原理。内容较长,我们分为2期进行讲解。

DHCP工作原理

什么是DHCP?

DHCP,动态主机配置协议,前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,常用的2个端口:67(DHCP server),68(DHCP client)

DHCP通常被用于局域网环境,主要作用是集中的管理、分配IP地址,使client动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。简单来说,DHCP就是一个不需要账号密码登录的、自动给内网机器分配IP地址等信息的协议。

DHCP协议中的报文

DHCP报文共有一下几种:

?DHCP DISCOVER :客户端开始DHCP过程发送的包,是DHCP协议的开始

?DHCP OFFER :服务器接收到DHCP DISCOVER之后做出的响应,它包括了给予客户端的IP(yiaddr)、客户端的MAC地址、租约过期时间、服务器的识别符以及其他信息

?DHCP REQUEST :客户端对于服务器发出的DHCP OFFER所做出的响应。在续约租期的时候同样会使用。

?DHCP ACK :服务器在接收到客户端发来的DHCP REQUEST之后发出的成功确认的报文。在建立连接的时候,客户端在接收到这个报文之后才会确认分配给它的IP和其他信息可以被允许使用。

?DHCP NAK :DHCP ACK的相反的报文,表示服务器拒绝了客户端的请求。

?DHCP RELEASE :一般出现在客户端关机、下线等状况。这个报文将会使DHCP服务器释放发出此报文的客户端的IP地址

?DHCP INFORM :客户端发出的向服务器请求一些信息的报文

?DHCP DECLINE :当客户端发现服务器分配的IP地址无法使用(如IP地址冲突时),将发出此报文,通知服务器禁止使用该IP地址。

DHCP的工作流程:

DHCP协议包的组成

?Xid :随机生成的一段字符串,两个数据包拥有相同的xid说明他们属于同一次会话

?Ciaddr :客户端会在发送请求时将自己的ip地址放在此处

?Yiaddr :服务器会将想要分配给客户端的ip地址放在此处

?Siaddr :一般来说是服务器的ip地址.但是注意!根据openwrt源码给出的注释,当报文的源地址、siaddr、option­>server_id字段不一致(有经过跨子网转发)时,通常认为option­>srever_id字段为真正的服务器ip,siaddr有可能是多次路由跳转中的某一个路由的ip (下图中wireshark抓包中也有标明siaddr为nextserver ip address)

?Chaddr :客户端的mac地址

?Giaddr :如果需要跨子网进行DHCP地址发放,则在此处填入经过的路由器的ip地址

?Sname :服务器主域名

?Options :可以自由添加的部分,用于存放客户端向服务器请求信息和服务器的应答信息

winter

转载自:苏州装维之家

置顶加星

江苏装维之家

扫码|关注我们

一个为装维服务的

专业、有趣、有爱的公众号

openwrt dhcp不分配_【装维技巧】DHCP工作原理详解(上)相关推荐

  1. 苹果手机还原网络设置会怎样_装维技巧|手机能连wifi但网不通?

    点击蓝字 关注我们 我们日常生活中,经常会遇到 手机连接了wifi,但网络就是不通-该怎么办呢??? 排除网络故障后首先登录路由器找到"网络设置"和"DHCP设置&quo ...

  2. 3脚送话器内部电路图_6n137工作原理详解(6n137管脚图及内部结构_封装及应用电路图)...

    6N137简介 6N137光耦合器是一款用于单通道的高速光耦合器,其内部有一个850 nm波长AlGaAs LED和一个集成检测器组成,其检测器由一个光敏二极管.高增益线性运放及一个肖特基钳位的集电极 ...

  3. 摄像机标定_张正友标定算法原理详解

    原文链接:http://blog.csdn.net/humanking7/article/details/44756235 上一篇文章讲了摄像机的标定的基础知识 视觉测量中的四个坐标系 .下面着重来讲 ...

  4. 0832工作原理详解_最经典MOS管电路工作原理及详解没有之一

    欢迎加入技术交流QQ群(2000人):电力电子技术与新能源 1105621549 高可靠新能源行业顶尖自媒体 在这里有电力电子.新能源干货.行业发展趋势分析.最新产品介绍.众多技术达人与您分享经验,欢 ...

  5. 科沃斯扫地机器人电路原理图_扫地机器人的工作原理详解

    转圈圈的扫地机器人并不能算做是机器人,只能算是执行某种固定程序的机械. Roomba是最早流行的扫地机器人,它的路径规划是随机碰撞模式,依据的是红外传感器和高精度的程序算法,虽然算法足够精确,但它就在 ...

  6. adc0832工作原理详解_单片机ADC的工作原理

    单片机的ADC可以将模拟量转化为数字量 不同品牌的单片机ADC的配置方法有一定的差异,但基本方法和原理是一样的,启动ADC转换后,可以等待转换完成然后读取数据,或者设置为转换完成产生中断然后读取数据. ...

  7. server2008网卡驱动包_网卡工作原理详解

    此篇文章对网上现有资料进行了整理和补充,提取出有用的部分,进行存档学习. 一,认识网卡 网卡(Network Interface Card,简称NIC),也称网络适配器,是电脑与局域网相互连接的设备. ...

  8. 电路计算机仿真的优点,施密特触发器电路及工作原理详解_施密特触发器特点_施密特触发器的作用...

    描述 什么是施密特触发器 施密特触发器(Schmidt trigger)是包含正回授的比较器电路.它也有两个稳定状态,但与一般触发器不同的是,施密特触发器采用电位触发方式,其状态由输入信号电位维持:对 ...

  9. python符号格式化设置区间_Python 数值区间处理_对interval 库的快速入门详解

    使用 Python 进行数据处理的时候,常常会遇到判断一个数是否在一个区间内的操作.我们可以使用 if else 进行判断,但是,既然使用了 Python,那我们当然是想找一下有没有现成的轮子可以用. ...

最新文章

  1. Java - PriorityQueue
  2. 信息技术专业常用协议指什么?
  3. C++ 编译,运行过程 详解。
  4. 从零入门 FreeRTOS 操作系统之任务的概念
  5. PHP+百度地图API+JAVASCRIPT实现GPS坐标与百度坐标转换的实例
  6. 转: javascript技术栈
  7. sparkstreaming 读取mysql_SparkStreaming读取Kafka的两种方式
  8. PHP简洁美观轻量级秀恩爱网站源码
  9. 升级过log4j,却还没搞懂log4j漏洞的本质?
  10. Object的构造函数方法
  11. 程序员面试金典——7.4加法运算替代
  12. 发电厂电气部分第三版pdf_发电厂电气部分 第三版 习题参考答案
  13. fastboot刷系统的步骤
  14. 破解Excel受保护文件
  15. matlab绘制折线图
  16. Hadoop--基础知识点--4--hadoop集群-docker搭建
  17. 【网页期末作业】用HTML+CSS做一个漂亮简单的学校官网
  18. protect your eyes - 豆绿色
  19. 算法-二叉树:合并两颗二叉树
  20. 超好用的教程截取GIF动画软件GifCam

热门文章

  1. 猫头鹰的深夜翻译:API网关的重要性
  2. CodeForces - 867E Buy Low Sell High (贪心 +小顶堆)
  3. 7、字典和string的用法
  4. JMeter 测试计划
  5. Laravel 5.1 artisan 的使用
  6. Android的px、dp和sp
  7. 递归,记忆化搜索,(棋盘分割)
  8. ssh端口映射,本地转发
  9. SQL Server 2012 AlwaysOn高可用配置之八:新建可用性组
  10. Qt的Oracle数据库QOCI驱动问题