首页 > 代码库 > dhcp服务的搭建

dhcp服务的搭建

DHCP的概念:

    一个DHCP服务器,够指定IP给其它局域网中的电脑,让每一台电脑都连在TCP/IP的通讯协议下,各有其独立的IP,自成一个网段。而透过DHCP Server的管理,你能够设定IP的分配范围,与清楚的了解目前各台电脑被分配到的IP与网卡编号等信息


DHCP具有以下功能:

    1. 保证任何IP地址在同一时刻只能由一台DHCP客户机所使用。

    2. DHCP应当可以给用户分配永久固定的IP地址。

    3. DHCP应当可以同用其他方法获得IP地址的主机共存(如手工配置IP地址的主机)。

    4. DHCP服务器应当向现有的BOOTP客户端提供服务。

     

过程:客户端广播,所有主机都可以收到,dhcp服务器收到后,广播回复,如果多个dhcp服务器,则需要客户端换需广播自己选择的那个服务器,选择反馈最快的服务器,被选择的服务器也需广播。

    广播方式:Client ---->DHCPDISCOVER

              Dhcpoffer<------server

              Client----->dhcpquest

             Dhcp ack <--------server

    续租时单播:Client----〉dhcprequest

             Dhcpack<======server


动态表,可以动态分配,且在lease(租约)的一半时就会发起请求续租,且如果没有回应,会进行共 三次请求,如仍未回应则重新请求


dhcp不能跨路由存在,为了给多个网络提供服务,可以将路由器作为中继器;dhcp服务器必须

能够给本地网络提供dhcp服务,dhcp提供的本地地址池必须要和本地的网卡除于同一网络中,可以提供多个地址池,路由器传播时会提供请求方的网段,这样dhcp服务器就可以给其他网络依据不同的池来分配地址了。


在dhcp中有动态地址池,也有保留地址,固定分配,但都需保持在和网卡相同的网段内。

技术分享


文件:

   /usr/sbin/dchrelay(中继器) dhcp和relay功能一般不能同时启用

   /var/lib/dhcpd/dhcpd.leases(租约)记录动态分配的地址信息表

 

实例:

试验环境如下图所示:

服务器ip:192.168.0.1

试验要求:要求linux dhcp 服务器实现给linux客户机分配ip地址。

技术分享

服务器软件包:dhcp-3.0.1-12_EL.I386 (当然其它版本的也可以)软件包默认在RHEL4的第四种安装光盘中。

主配置文件:dhcp.conf 默认情况下该文件没有在dhcp软件包中,需要手动建立。

服务器的配置:

1 挂载和安装dhcp软件包,如下图所示:

技术分享2编辑配置文件(由于配置文件安装软件包后并不会自动建立需要我们手动建立)只需打如下些命令就可以建立一个空白的配置文件了。

vi/etc/dhcpd.conf

为了方便以后的讲解我们空把文件填上了内容,具体配置文件的意思我会马上讲到。

技术分享

全局设置:通常我们把subnet 192.168.0.0 netmask 255.255.255.0(不包括subnet这行内容) 以上的内容成为全局。各行含义如下:

ddns-update-style interim; :表示dhcp服务器和dns服务器的动态信息更新模式。这行必须要有dhcp服务器才能启动以来。

Default-lease-time 21600; 默认租约时间

Max-lease-time 43200; 最大租约时间

Option domain-name "123.com"; 域名服务器的名称

Option domaini-servers 192.168.0.1 默认域名服务的ip地址,dns服务器的地址

Sub 后从“{”开始 到最后一个“}”结束表示子网属性。其主要配置只对大括号里的内容有效。一个配置文件可以有多个子网属性。

Sub 192.168.0.0 netmask 255.255.255.0 ; (意思是我所分配的ip地址所在的网段

为192.168.0.0 子网掩码为255.255.255.0 )

Range 192.168.0.2 192.168.0.100; (分配的ip地址范围为192.168.0.2到

192.168.0.100)

Option subnet-mask 255.255.255.0 ; (分配ip地址的子网掩码为 255.255.255.0

Option routers 192.168.0.3; (分给客户机的网关为192.168.0.3)主:图中的option router 应改成option routers 在这图片不再更改了。

有时候我们需要为某一个机器配置固定的ip地址,而下面的配置选项满足了这一要求:

Host server01 {

Hardware ethernet b0:c0:12:f2:a3:a4;

Fixed-address 192.168.0.100;

}

具体含义和简单意思是“我们给客户机mac地址为b0;c0;12;f2;a3;a4所配置的ip地址为192.168.0.100”。

下面的图例是dhcp服务的启动 停止 重启。我们在刚配置完dhcpd.conf文件的时候我们需要启动一下dhcpd服务。

技术分享

服务器配置完了客户机怎么获得ip地址呢。其实很简单。这里我叫大家两个命令,其效果是一样的。命令为:dhclint 或者 down 一下接口再up一下接口就可以了。图示如下:

技术分享

技术分享

看我们获得了192.168.0.99这一ip地址。和windows不同,linux获得ip地址是从大的范围到小的范围依此获得的。


linux的DHCP服务启动失败的常见原因:

   1. 配置文件有问题。
     1.1 内容不符合语法结构,例如,少个分号;
     1.2 声明的子网和子网掩码不符合;
   2. 主机IP地址和声明的子网不在同一网段。
   3. 主机没有配置IP地址。
   

 客户端工具:

   dhclient 获取地址

   dhclient -d 显示请求地址的过程的详细信息



部分转载自:http://www.jb51.net/article/31607.htm


 


本文出自 “mylinux” 博客,请务必保留此出处http://luxiangyu.blog.51cto.com/9976123/1854671

dhcp服务的搭建