linux dhcp超级作用域配置

       
  1、 DHCP能够实现动态分配ip地址等相关信息,共分为三类:Manual、Automatic、Dynamic.先说前两种,Mannul是手动分配,将mac地址与ip地址写成一一对应关系记录下来,永久的;Automatic是制作一个地址池,地址池里有起始ip和结束ip,动态的为客户端分配ip,一旦分配将被永久的记录,可以看出这两种方式ip地址的利用率低。第三种是动态分配,制作一个地址池,当客户端得到一个ip地址时也会被记录下来,但是这种记录是有一定期限的,就是租约,提高了ip地址的利用率。第一种也在常用,因为有些是需要固定的ip地址的,通常是将第三种和第一种结合起来。
    2、 DHCP的工作原理 dhcpdiscover、dhcpoffer、dhcprequest、dhcpack:
     DHCP是C/S模式,客户端(client)启动时,会以广播的方式向网内发一个dhcpdiscover包,用以寻找网内的DHCP服务器(server),通常网内不止一台DHCP服务器,接收到这个包的DHCP服务器都会进行相应,向客户端发送dhcpoffer包,这个也是以广播形式的,因为这时候客户端还没有ip地址,这么多的dhcpoffer包(其实这个包里只有一个ip地址没有其他的ip信息)总有一个先到达,客户端采用的就是这个先到达的包,客户端收到这个第一个包机会立即以广播形式发送dhcprequest包,这个包有两个作用,一是告诉采用的这个DHCP服务器发过来其他的相关的ip信息,二是告诉没有采用的服务器自己已经采用了别的服务器,这些没有被采用的服务器收到这个包后,就会收回刚次通过dhcpdffer包分发出去的ip地址重新放回地址池里,被采用的这个服务器,这时候就会向客户机发送dhcpack包,这里面包含有ip、网关、子网掩码、dns指向、租约等相关的信息,最后客户就可以使用这个ip了。注意以上的的四步dhcpdiscover、dhcpoffer、dhcprequest、dhcpack都是通过广播发送的!
     
    3、 租约的更新:
  
     当客户端重新启动和事件到达50%时候,会向这个服务器发送dhcprequest包,要求更新现有的地址租约,如果服务器收到请求,会向客户端发送dhcpack包用以更新租约;如果这个从时间一直没有联系上这个服务器,客户端会等待,等到时间到87.5%的的时候,客户端会向所有的dhcp服务器广播用以更新现有的租约,如果都不成功,只能等到这个租约的终止,重新广播dhcpdiscover包,重新获得地址。
     4、中继代理:dhcp客户端和dhcp服务器之间都使用广播,如果两者需要跨越子网时,可以通过配置一个dhcp中继代理来帮助转发dhcp服务器和dhcp客户端的包。
     5、单作用域:主要指DHCP服务器只为一个网段的dhcp客户端分配ip地址,这是最简单的也是最常用的,配置方法如下:
     Subnet <网络号> netmask<子网掩码>{
     Option subnet-mask 子网掩码
     Range dynamic-bootp 起始地址 结束地址;
      } 
     6、多作用域:主要指dhcp服务器要为一个以上的客户端分配ip地址。多
作用域有两种类型,一种是dhcp服务器只有一个网络接口,通过路由器等设置
与其他网段的dhcp客户端连接,一种是dhcp至少有两个网络接口,分别连接
dhcp客户端所在的每个网段,配置方法如下:
Subnet<> netmask<>{
 
Option subnet-mask<>;
 
Option routers <>;
 
Range dynamic-bootp<><>;
 
}
  
Subnet<> netmask<>{
 
Option subnet-mask<>;
 
Option routers <>;
 
Range dynamic-bootp<><>;
 
 
 
7、  保留配置

         host 主机名{

              hardware 网卡类型MAC地址;

              hixed-address 地址;
        }
8、超级作用域
  捆绑多个网段的ip地址分配给主机。
 
     下面是在linux下配置DHCP服务器实例
 
     (1)Dhcp服务的安装,查看与dhcp相关的软件包:
     
       
 其中第一个包是dhcp服务端软件,要安装的也就是这个包,第二个是dhcp服务器开发工具,为dhcp开发提供文件库支持,后两个是关于ipv6的。
 
      (2)通过yum进行安装
 
时候启动dhcp是启动这不起来的,因为要进行相应的配置以后才可以起得来。
 
(3) 对dhcp服务进行配置,配置文档在/etc/dhcpd.conf,主要是对这个文档进行配置,vim /etc/dhcpd.conf进入这个文档中去:
 
      
 
这个文档的内容如图,在末行模式下输入如下图,就可以进入到范例文档里面,只需要在里面做相应的改动保存即可。
 
 
 
 
 
敲击enter键得到如下内容:
 
 
就是修改这个文档,达到要配置的目的,这些都表示的什么意义呢:
 
 
Ddns是dhcp和dns的合写,这是dns的动态更新,下面这项是忽略客户端的更新,两个结合使用。
 
 
第一个是指定客户端dns后缀,第二个是指定dns服务器地址,可以有多个用逗号隔开。
 
 
指定地址范围,即地址池,还有租约时间及最大租约时间。
 
 
给一个确定的mac地址指定绑定的ip地址。
下面就以几个范例来看看这个文档是怎样修改的:
范例一:(单作用域)虚拟机里面装有linux5,winxp,要在linux5配置dhcp服务器,并将 
      Winxp当成客户机来获得由这个服务器分发的ip地址。Linux5有静态ip地址(服务器主机一定要是静态ip地址,并且这个地址要在你要分配的地址的范围内)192.68.93.10,要分配的地址范围是192.168.93.0――192.168.93.100,子网掩码是255.255.255.0,网关是192.168.93.100,dns指向222.222.85.85,222.88.88.88,指定客户端dns后缀是lizhi.org.
 
   在第二步中对文档进行修改,
ddns-update-style interim;
ignore client-updates;          //  这两项保持默认即可
subnet 192.168.93.0 netmask 255.255.255.0 {
# --- default gateway    //#表示注释                             
        option routers                  192.168.93.100;
        option subnet-mask              255.255.255.0;
#       option nis-domain               "lizhi.org";
        option domain-name              "lizhi.org";
        option domain-name-servers      222.222.85.85,222.88.88.88;
        option time-offset              -18000; 
        range dynamic-bootp 192.168.93.0 192.168.93.100;
        default-lease-time 21600;
        max-lease-time 43200;
        # we want the nameserver to appear at a fixed address
        host ns {
                next-server marvin.redhat.com;
                hardware ethernet 12:34:56:78:AB:CD;
                fixed-address 207.175.42.254;// 如果这里没有设置,保持默认即可
        }
}
     
因为用的是host-only模式,所以在做实验前要先关闭虚拟机自带的dhcp,否则会影响实验结果,所以要先关掉:
 
 
最后一项“use local DHCP...”不要打钩。
 
下面进入winxp客户端实验看一下结果如何:
 
先释放原来的ip地址!
 
 
重新获得地址,实验成功!
 
范例二:让上面的xp获得固定ip地址192.168.93.50,该如何做?
其实只需修改下面几项即可:
    host ns {
                next-server marvin.redhat.com;
                hardware ethernet 12:34:56:78:AB:CD;
                fixed-address 207.175.42.254;
        }
通过在winxp里的cmd里输入ipconfig /all 查得其mac地址为00-0c-39-51-52-17设置如下:
 
        host ns {
                next-server marvin.redhat.com;
                hardware ethernet 00:0c:29:51:52:17;
                fixed-address 192.168.93.50;
        }
重启dhcpd,在xp中实验,结果如下:
 
 
可以看到成功获得了192.168.93.50。
 
以上两个实例的过程就是经过了刚才说的四个步骤,可以通过查看日志来看到,日志文件存放在/var/log/messages中:
 
 
由图中可以清楚的看到dhcpdiscover,dhcpoffer、dhcprequest、dhcpack。
 
范例三:(超级作用域的配置)有家企业有上千台电脑,使用C类一个网段根本满足不了要求,又由于原因不能使用B类的网络,该怎么办?
使用超级作用域,超级作用域的原理是给一个电脑群分配不同网段的ip地址,当一个网段的ip用完的时候,就用另外的一个网段,为了能够在这里做实验能够看到效果,我下面设置每一个网段只有一个ip,然后用两台winxp做客户端,如果能够或得这两个地址,说明达到了效果,如果获得不了,说明失败,反之成功。
切换到dhcp的配置目录进行配置如下:
ddns-update-style interim;
ignore client-updates;
shared-network cao{  //这里的shared-network是固定写法
subnet 192.168.93.0 netmask 255.255.255.0 {
# --- default gateway
        option routers                  192.168.93.100;
        option subnet-mask              255.255.255.0;
#       option nis-domain               "lizhi.org";
        option domain-name              "lizhi.org";
        option domain-   nameservers      222.222.85.85,222.88.88.88;  
        option time-offset              -18000;
         range dynamic-bootp 192.168.93.2 192.168.93.2;   //这里只是设置了一个地址
        default-lease-time 21600;
        max-lease-time 43200;
        # we want the nameserver to appear at a fixed address
#       host ns {
#               next-server marvin.redhat.com;
#               hardware ethernet 00:0c:29:51:52:17;
#               fixed-address 192.168.93.50;
#       }//这里是在上个实验基础做的,不要绑定所以注销
}
subnet 192.168.92.0 netmask 255.255.255.0 {
# --- default gateway
        option routers                  192.168.92.100;
        option subnet-mask              255.255.255.0;
#       option nis-domain               "lizhi.org";
        option domain-name              "zhi.org";
        option domain-name-servers      222.222.85.85,222.88.88.88;
        option time-offset              -18000; 
        range dynamic-bootp 192.168.92.1 192.168.92.1;
        default-lease-time 21600;
        max-lease-time 43200;
}
}
 
然后检查一下语法:
 
重新启动dhcpd:
 
 
在两台winxp里检验结果,如果分别得到的ip是192.168.93.2和192.168.92.1说明成功。
结果得到的截图如下:
 
 
 
观察ip可以知道实验成功!

你可能感兴趣的:(linux系统,超级作用域,DHCP概述,单作用域)