DHCP原理详解

DHCP全称为动态主机配置协议(Dynamic Host Configure Protocol)。从名字我们就可以看出来,这是一个动态的配置主机的协议。DHCP是用来实现给主机自动分配IP地址,从而来减轻网络管理员手动配置IP地址的繁琐。当我们面临几十台的主机还无法体现出这个“繁琐”,但当我们面临一个企业几百台或者是IDC机房上千台主机的时候,你就感受到痛苦了。

DHCP是一个C/S(C:客户端,S:服务器端)架构的协议,所以需要提供一个DHCP服务器,在Linux中,DHCP的服务器端软件是DHCPD。DHCP协议的监听端口与其他协议有所不同,分为两个:服务端为67,客户端为68。服务器端和客户端都使用相应的端口监听/发送DHCP协议消息。

客户机从DHCP获取IP地址的过程我们称为DHCP租约过程,分为四个步骤:

接下来我们通过抓包的方式详细谈一谈这四个步骤:

1.客户端请求IP地址:

客户机发起一个DHCP Discover包,用来请求IP地址:

继续进一步分析这个Discover包,可以看到:

  1)目标MAC地址为广播地址(Destination:ff:ff:ff:ff:ff:ff),源MAC地址为客户机MAC地址(Source:00:0c:29:97:15:cb)。

  2)目标IP地址为广播地址(Destination:255.255.255.255),源IP地址为0.0.0.0。

  3)目标端口为67,源端口为68

2.服务器响应:

服务器发送一个DHCP Offer包,响应客户机的请求:

  继续进一步分析DHCP Offer包,可以看到:

1)源MAC地址为DHCP服务器的地址(08:10:78:20:99:20),目标MAC地址为广播地址(ff:ff:ff:ff:ff:ff)

2)源IP地址为DHCP服务器的地址(172.16.100.1),目标IP地址为广播地址(255.255.255.255)

3)源端口号为服务器端端口号(67),目标端口号为客户端端口号(68)

3.客户端回应(选择IP地址)

明天补上

时间: 2024-10-12 10:51:10

DHCP原理详解的相关文章

kickstart安装系统原理详解

前言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装. 常规的办法有什么? 光盘安装系统===>一个服务器DVD内置光驱百千块,百台服务器都配光驱就浪费了,因为一台服务器也就开始装系统能用的上,以后用的机会屈指可数.用USB外置光驱,插来插去也醉了. U盘安装系统===>还是同样的问题,要一台一台服务器插U盘. 网络安装系统(ftp,http,nfs) ===>这个方法不错,只要服务器能联网就可以装系统了

[转] VLAN原理详解

VLAN原理详解 标签: VLANAccess-LinkTrunk-Link802.1QISL 2013-07-26 18:05 27901人阅读 评论(15) 收藏 举报  分类: 网络通信/流媒体(30)  目录(?)[+] 1.为什么需要VLAN 1.1 什么是VLAN? VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络.VLAN所指的LAN特指使用路由器分割的网络——也就是广播域. 在此让我

【转】VLAN原理详解

1.为什么需要VLAN 1.1 什么是VLAN? VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络.VLAN所指的LAN特指使用路由器分割的网络——也就是广播域. 在此让我们先复习一下广播域的概念.广播域,指的是广播帧(目标MAC地址全部为1)所能传递到的范围,亦即能够直接通信的范围.严格地说,并不仅仅是广播帧,多播帧(Multicast Frame)和目标不明的单播帧(Unknown Unicas

VLAN原理详解[转载] 网桥--交换机---路由器

来自:http://blog.csdn.net/phunxm/article/details/9498829 一.什么是桥接   桥接工作在OSI网络参考模型的第二层数据链路层,是一种以MAC地址来作为判断依据来将网络划分成两个不同物理段的技术,其被广泛应用于早期的计算机网络当中. 我们都知道,以太网是一种共享网络传输介质的技术,在这种技术下,如果一台计算机发送数据的时候,在同一物理网络介质上的计算机都需要接收,在接收后分析目的MAC地址,如果是属于目的MAC地址和自己的MAC地址相同便进行封装

图像处理中的数学原理详解17——卷积定理及其证明

欢迎关注我的博客专栏"图像处理中的数学原理详解" 全文目录请见 图像处理中的数学原理详解(总纲) http://blog.csdn.net/baimafujinji/article/details/48467225 图像处理中的数学原理详解(已发布的部分链接整理) http://blog.csdn.net/baimafujinji/article/details/48751037 1.4.5   卷积定理及其证明 卷积定理是傅立叶变换满足的一个重要性质.卷积定理指出,函数卷积的傅立叶变

Java虚拟机工作原理详解

原文地址:http://blog.csdn.net/bingduanlbd/article/details/8363734 一.类加载器 首先来看一下java程序的执行过程. 从这个框图很容易大体上了解java程序工作原理.首先,你写好java代码,保存到硬盘当中.然后你在命令行中输入 [java] view plaincopy javac YourClassName.java 此时,你的java代码就被编译成字节码(.class).如果你是在Eclipse IDE或者其他开发工具中,你保存代码

DHCP协议详解

DHCP协议详解 定义:DHCP(Dynamic Host Configuration Protocol)动态主机配置协议,主要作用是为局域网内的主机自动分配IP地址.DCHP工作在应用层,是BOOTP(Bootscrap Protocol)的一种扩展,使用UDP协议进行运输,UDP67和UDP68端口分别作为DHCPServer和DHCP Client的服务端口.DHCP协议内容在RFC2131中定义,而DHCP Options在RFC2132中定义. DHCP的4次握手 测试方法:为了抓到D

Storm概念、原理详解及其应用(一)BaseStorm

本文借鉴官文,添加了一些解释和看法,其中有些理解,写的比较粗糙,有问题的地方希望大家指出.写这篇文章,是想把一些官文和资料中基础.重点拿出来,能总结出便于大家理解的话语.与大多数"wordcount"代码不同的是,并不会有如何运行第一storm代码等内容,只有在运行完代码后,发现需要明白:"知其然,并知其所以然". Storm是什么?为什么要用Storm?为什么不用Spark? 第一个问题,以下概念足以解释: Storm是基于数据流的实时处理系统,提供了大吞吐量的实

SVM -支持向量机原理详解与实践之四

SVM -支持向量机原理详解与实践之四 SVM原理分析 SMO算法分析 SMO即Sequential minmal optimization, 是最快的二次规划的优化算法,特使对线性SVM和稀疏数据性能更优.在正式介绍SMO算法之前,首先要了解坐标上升法. 坐标上升法(Coordinate ascent) 坐标上升法(Coordinate Ascent)简单点说就是它每次通过更新函数中的一维,通过多次的迭代以达到优化函数的目的. 坐标上升法原理讲解 为了更加通用的表示算法的求解过程,我们将算法表