zoukankan      html  css  js  c++  java
  • DHCP的工作原理

      什么是dhcp?它是如何实现的?

      DHCP称为动态主机配置协议。DHCP服务允许工作站连接到网络并且自动获取一个IP地址。配置DHCP服务的服务器可以为每一个网络客户提供一个IP地址、子网掩码、缺省网关、一个WINS服务器的IP地址,以及一个DNS服务器的IP地址。

         下面就对此做简单介绍:DHCP是一个基于广播的协议,它的操作可以归结为四个阶段,这些阶段是IP租用请求、IP租用提供、IP租用选择、IP租用确认。 
      1、IP租用请求:在任何时候,客户计算机如果设置为自动获取IP地址,那么在它开机时,就会检查自己当前是否租用了一个IP地址,如果没有,它就向DCHP请求一个租用,由于该客户计算机并不知道DHCP服务器的地址,所以会用255.255.255.255作为目标           地址即广播一下,源地址使用0.0.0.0,在网络上广播一个DHCPDISCOVER消息,消息包含客户计算机的媒体访问控制(MAC)地址(网卡上内建的硬件地址)以及它的NetBIOS名字。 
       2、IP租用提供:当DHCP服务器接收到一个来自客户的IP租用请求时,它会根据自己的作用域地址池为该客户保留一个IP地址并且在网络上广播一个来实现,该消息包含客户的MAC地址、服务器所能提供的IP地址、子网掩码、租用期限,以及提供该租用的              DHCP服务器本身的IP地址。 
      3、IP租用选择:如果子网还存在其它DHCP服务器,那么客户机在接受了某个DHCP服务器的DHCPOFFER消息后,它会广播一条包含提供租用的服务器的IP地址的DHCPREQUEST消息,在该子网中通告所有其它DHCP服务器它已经接受了一个地址的提供,其他       DHCP服务器在接收到这条消息后,就会撤销为该客户提供的租用。然后把为该客户分配的租用地址返回到地址池中,该地址将可以重新作为一个有效地址提供给别的计算机使用。 
         4、IP租用确认: DHCP服务器接收到来自客户的DHCPREQUEST消息,它就开始配置过程的最后一个阶段,这个确认阶段由DHCP服务器发送一个DHCPACK包给客户,该包包括一个租用期限和客户所请求的所有其它配置信息,至此,完成TCP/IP配置。 

      DHCP(Dynamic Host Configure Protocol,动态主机配置协议),用于向网络中的计算机分配IP地址及一些TCP/ip配置信息。DHCP提供了安全,可靠且简单的TCP/IP网络设置,避免了TCP/ip网络地址的冲突,同时大大降低了工作负担。

        IP的租约更新:当客户机重启和租期到达50%时,就需要更新租约,直接想提供的服务器发送DHCP request包,要求更新租约。客户机无法和服务器取得联系时,继续使用现有IP,一直等到85%时,向所有的服务器发送广播DHCP request 包请求更新,如果仍然       无法联系,则客户机将开始新的ip租约过程DHCP discover包

         IP的租约释放命令 :释放的ipconfig /release       获取是 :ipconfig /renew 。

         配置DHCP服务的要求:服务器具有静态IP ;在域环境下需要使用活动目录服务授权DHCP服务;建立作用域。(如果在安装时建立则默认为6天,之后创建为8天,无线为2小时)

         配置选项有服务器选项、作用域选项、保留选项。服务器选项:对所有作用域生效;作用与选项:对当前作用域生效;保留选项:对当前作用域中某台客户机生效。

      DHCP服务器端相关配置:

     1 #cp  /usr/share/doc/dhcp*/dhcpd.conf.sample  /etc/
     2 #mv /etc/dhcpd.conf.sample  /etc/dhcpd.conf
     3 
     4 #命令详解
     5 dns-update-style none;  //动态DNS的更新方式,必须添加,否则服务器无法启动
     6 option routers 192.168.1.1;   //默认网关
     7 option subnet-mask 255.255.255.255.0;   //子网掩码
     8 option domain-name "domain.org";        //域名
     9 option domain-name-servers 114.114.114.114;   //DNS服务器
    10 subnet 192.168.0.0 netmask 255.255.255.0{     //定义网段的服务范围,与服务器所在同一范围
    11     range 192.168.0.2     192.168.0.99;       //地址池范围,注意已经使用的固定地址要排除在外
    12     default-lease-time    600;                //释放时间,单位s 
    13     max-lease-time        1000;               //最长释放时间
  • 相关阅读:
    SQLDataSet中执行DDL语句
    在SQL语句中使用参数
    delphi排序算法
    ClientDataSet中的PacketRecords属性,减轻网络负载,提升服务器与客户端性能
    ClientDataSet中修改,删除,添加数据和Delta属性
    SQLMonitor观察DBE的执行行为
    this的指向(慢慢添加)
    如何在Html的CSS中去除<li>标签前面小黑点,和ul、LI部分属性方法
    AJAX的工作原理及其优缺点
    IE浏览器和Firefox浏览器兼容性问题及解决办法
  • 原文地址:https://www.cnblogs.com/chris-cp/p/4235460.html
Copyright © 2011-2022 走看看