在wdos系统下搭建DHCP服务器


一.简介:
wdOS是一个基于CentOS版本精简优化过的Linux服务器系统,大部分保留着centos服务,DHCP(动态主机配置协议)就是其中的一个。通过配置DHCP服务器可以动态给DHCP客户端分配ip地址,子网掩码,网关以及DNS服务器的地址等等。

    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服务器在接收到这条消息后,就会撤销为该客户提供的租用。然后把为该客户分配的租用地址返回到地址池中,该地址将可以重新作为一个有效地址提供给别的计算机使用。
IP租用确认:DHCP服务器接收到来自客户的DHCPREQUEST消息,它就开始配置过程的最后一个阶段,这个确认阶段由DHCP服务器发送一个DHCPACK包给客户,该包包括一个租用期限和客户所请求的所有其它配置信息,至此,完成TCP/IP配置。

本文试图在wdOS系统下搭建DHCP服务器,具体的配置过程如下:

二.配置过程:
1.配置开始之前:
1.先禁用vmware的DHCP服务:
1)在vmware程序菜单中,选择Edit – Virtual Network Editor
2)不要勾选use local dhcp service to distribute ip address to vms 这个选项,应用。
                                  图片1.png 
检查是否配置了DHCP服务器本身的ip地址,子网掩码,网关和dns服务器地址:
  你可以使用ifconfig查看是否在安装时设置了ip地址,还有一点需要注意的是你的dhcp服务器的网络配置应该是手动配置的。
  
3.配置Linux DHCP服务器
安装DHCP主程序:
  在安装之前先检查dhcp主程序包是否安装:
                                 图片2.png 
   显示只是安装了dhcp客户端的程序包,因此可以使用yum install dhcp来安装dhcp的主程序包:
                                  图片3.png 
修改主配置文件/etc/dhcpd.conf
  注意到:当DHCP主程序包安装好之后会自动生成主配置文件的范本文件/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample,同时在/etc目录下也会建立一个空白的dhcpd.conf主配置文件,将范本配置文件复制到/etc目录下的dhcpd.conf主配置文件中:  
      图片4.png 

      图片5.png 
4.重启dhcpd服务:

    图片6.png 

三.测试结果:
   使用dhclient eth0 使得网卡eth0 作为dhcp的客户   端
                                  图片7.png   
同时,也可以使用命令ifconfig 查看获取到的ip地址:  
                                  图片8.png 
P.s. 细心的读者可能会发现,获取到的ip地址正好是我原本设定的dhcp服务器地址池里最大的ip地址,这与我们熟悉的windows系统下的dhcp服务获取的ip地址刚好是相反的。

四.可能会遇到的问题:
1.在测试之前可以把防火墙关闭,可以使用命令: service iptables  stop 来关闭
2. 如果在测试的过程中出现下图的错误:(提示dhclient 已存在)
                                 图片9.png 
   可以使用命令 :kill -9 +提示的进程号(我这里提示的是3443)将该进程关闭,重新获取即可。
 

你可能感兴趣的:(linux,centos,wdos,DHCP服务器)