DHCP原理
一台主机的ip地址可用通过两种方式来设置。1 手动输入;2 自动向DHCP服务器获取。手动输入会出现错误,比如输入一个已经分配的ip地址,当内网机器只有几台,十几台还可以忍受,如果是几百台呢,不可能一台台去手动输入,这个时候就应该用自动获取的方式。
利用DHCP自动分配IP地址
一个网络内至少有一台DHCP服务器,采用自动获取IP地址的计算机通常叫做DHCP客户端。DHCP服务器将IP地址租给客户端,如果客户端没有及时更新租约,租期到期了,DHCP就会回收该IP,那客户端就不能使用这个IP地址了。
通常手动输入的IP是静态IP,而想DHCP获取的IP称为动态IP。获取动态IP时,DHCP服务器还会提供其他的上网必备的设置项,比如,子网掩码,默认网关,DNS服务器的IP地址。
DHCP原理
客户端计算机启动时会自动寻找网络中的DHCP服务器(是怎么寻找的?),向它索要IP和其他的设置值。之后两者之间的通讯可能是重新获取IP地址,还是更新租约。
客户端什么时候会向DHCP获取一个新的IP地址:
1 计算机第一次作为DHCP客户端角色,也就是客户端计算机第一次联网的时候
2 客户端的IP被DHCP回收了,且这个IP被分给了其他客户端
3 客户端计算机换了一块网卡
4 客户端计算机移到了另一个网段内,在那个网段第一次获取IP
DHCP通讯过程
1 客户端向网段内广播DHCPDISCOVER包,以寻找到一台DHCP服务器。
2 DHCP服务器收到DHCPDISCOVER包,从IP地址池中挑选出一个未租出去的IP,广播的形式发给客户端,这里为什用广播的方式?显然客户端这个时候还没有IP地址的。如果有多台DHCP服务器都发了DHCPOFFER包,客户段接受到包后会选出第一个收到的DHCPOFFER包的信息。这个包中包含了IP地址,客户段会检查这个IP是否被用,如果发现被用了,会发一个DHCPDECLINE包给服务器,表示拒绝这个IP,再重新索取。
3 客户端收到第一个DHCPOFFER信息后,利用广播的形式发送DHCPREQUEST给DHCPF服务器。这个也用了广播的形式,当然客户端到这里还是没有IP的,还有一点就是客户端需要告诉其他的DHCP服务器,我用了哪台DHCP服务器。
4 DHCP服务器收到客户端要求的IP地址的DHCPREQUEST包,利用广播的方式发出DHCPACK确认信息给客户端,这个包里面包含了IP和所需的相关设置值。
客户端收到DHCPACK包,就完成了索取IP地址的过程。可以利用这个IP进行通讯。
全程利用广播的方式,显然是用UDP的方式发送报文。
更新IP地址的租约
DHCP客户端要长期使用这个IP,必须更新这个IP地址的租约。
什么时候自动更新租约?
1 计算机重新启动的时候
2 租约租期过了一半的时候
3 租约租期超过7/8的时候
手动更新租约与释放IP地址
ipconfig/renew命令手动更新IP租约。
DHCP原理的更多相关文章
- Linux DHCP原理
DHCP作用 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应 ...
- DHCP原理及报文格式
DHCP原理及报文格式 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是IETF为实现IP的自动配置而设计的协议,它可以为客户机自动分配IP地址. ...
- 第十九章 DHCP原理介绍
一.为什么使用DHCP 1.手动为局域网中大量主机配置IP地址.掩码.网关等参数的工作繁琐,容易出错 2.DHCP可以自动为局域网中主机完成TCP/IP协议配置 3.DHCP自动配置避免了IP地址冲突 ...
- DHCP原理于配置
DHCP原理于配置 一.DHCP服务 1)使用DHCP的好处 2)DH ...
- DHCP原理与LINUX下的配置
DHCP原理与LINUX下的配置 目录 DHCP原理与LINUX下的配置 一.DHCP工作原理 1.DHCP概述 2.DHCP的优势 3.DHCP的分配方式 (1)自动分配 (2)手动分配 (3)动态 ...
- 网络初级篇之DHCP原理与配置(原理与实验)
一.什么是DHCP DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理.分配IP地址,使网络环境 ...
- 3.DHCP原理
1.DHCP服务器给首次接入网络的客户端分配网络参数的工作原理 只有跟DHCP客户端在同一个网段的DHCP服务器才能收到DHCP客户端广播的DHCP DISCOVER报文.当DHCP客户端与DHCP服 ...
- DHCP原理及配置
DHCP工作原理 集中的管理.分配IP地址,使client动态的获得IP地址.Gateway地址.DNS服务器地址等信息,并能够提升地址的使用率. 简单来说,DHCP就是一个不需要账号密码登录的.自动 ...
- [DHCP服务]——一个验证DHCP原理实验(VMware)
大致实验拓扑图 DHCP Server端的配置 1. 安装DHCP # yum -y install dhcp 2. 拷贝配置文件 # /dhcpd.conf.sample /etc/dhcp/dhc ...
随机推荐
- Console.Out 属性和 XmlDocument.Save 方法 (String)
Console.Out 属性 默认情况下,此属性设置为标准输出流. 此属性可以设置为另一个流SetOut方法. 请注意,调用Console.Out.WriteLine方法是等效于调用相应WriteLi ...
- SpringBoot(五) -- SpringBootWeb登录示例
一.解决index.html访问 在SpringBoot中默认访问的首页是静态资源文件夹下的index.html,无法被Thymeleaf模板引擎解析,因此我们可以定义一个controller将默认请 ...
- 解决MarkDown打开出现:awesomium web-brower framework This view has crashed
当在windows 8 以上操作系统安装markdown 的时候,可能会出现这样的错误 解决方法: 官网链接:http://markdownpad.com/faq.html#livepreview-d ...
- exec 命令
source source命令即点(.)命令. 在bash下输入man source,找到source命令解释处,可以看到解释”Read and execute commands from filen ...
- 用户权限管理数据库设计(RBAC)
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角色- ...
- python的继承、重载和重写???
继承语法:<1>单继承:class(父类名)<2>多继承class(父类1,父类2,父类n...) 继承的特点:<1>减少代码量和灵活指定型类<2>子类 ...
- Mysql8- Public Key Retrieval is not allowed
在使用 MySQL 8.0 时重启应用后提示 com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Public ...
- nativescript(angular2)——ListView组件
NativeScript是一个不使用webview的情况下构建跨平台并且原生的iOS和Android应用.使用Angular.TypeScript或JavaScript来获得原生UI和性能体验,同时可 ...
- 关于print的一点秀操作
我们在玩 Python 的时候 常常会使用到 print 这个函数 主要用它来打印一些输出 这样我们可以更加方便的知道 程序的运行情况 我们常常这样操作 不过不是很骚 有时候我们想更加直观的看到我 ...
- C6678芯片
TMS320C6678是一款八核C66x的定点/浮点DSP,支持高性能信号处理应用.TMS320C6678芯片是美国德州仪器公司生产的处理器.它支持高性能信号处理应用,支持DMA传输,可应用于高端图像 ...