把自己的笔记跟经验分享一下,有什么地方错的,不足的,还望各位指教呀。
       DHCP是什么:动态主机配置协议(Dynamic Host Configuration Protocol),用tcp/ip协议自动分配信息给DHCP client。每一个DHCP客户端都连接到处于中心位置的DHCP server上,然后DHCP server 返回给client网络配置(ip 地址,网关,dns等)。
      DHCP我们为什么要用:第一,DHCPserver可以自动分配给DHCPclient网络配置,这样当你要为公司几百台电脑配置他们的网络信息时,不至于累到死。然DHCP去做吧.第二,需要修改IP,等网络信息时。你不至于笨到一台一台改吧。你只要修改DHCP的配置文件,就可以轻松的完成工作。还有好多优点。
        怎么用DHCP:这个是我们今天的重点。安装,配置,启用,实验。
       测试环境,RHEL_x86-64 student20.redhat.com 2.6.32-71.el6.x86_64
DHCP安装:
##看来我已经装好了。
[root@studnet20 ~]# rpm -qa | grep dhcp*
dhcp-4.1.1-12.P1.el6.x86_64

DHCP配置:
   DHCP-server配置:

      安装好之后,DHCP会创建好配置文件,配置文件会有两份,一个是基于ipv4,一个是基于ipv6我们当然现在看ipv4的/etc/dhcp/dhcpd.conf,但是这个几乎是一个空文件。
################################################
# DHCP for IPv4 Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#   see 'man 5 dhcpd.conf'
#   run 'service dhcpd start'
################################################
      参看DHCP配置文件发现:我们可以看/usr/share/doc/dhcp*/dhcpd.conf.sample作为参考,说明:/usr/share/doc下是一个比较全的文档中心,虽然没有man那个全,没有info那么细致,但是它会给你样本example。README文档,发布版本等信息。
    下面用配置实例来说明:


#####PXE_dhcpd.conf##########################
#DESCRIPTION:PXE_dhcpd.conf
#DATE:20120502
#AUTHOR:kikupotter
#BLOG:www.kikupotter.blog.51cto.com
#VERSION:1.0
############################################
allow booting;
allow bootp;
ddns-update-style none;
 # The following lines are standard all of the time.下面这几行都是全局参数,在整个配置文件内生效。

#设置网关
         option routers 192.168.0.110;
#设置子网隐码
         option subnet-mask 255.255.255.0;
#名字服务器
         option domain-name "redhat.com";
         option domain-name-servers 192.168.0.110;
#如果客户机没有设置租约时间,默认分配一个租约时间给客户机
         default-lease-time 21600;
#同上如果没有默认分配
         max-lease-time 43200;
#定义网段
subnet 192.168.0.0 netmask 255.255.255.0 {

#定义NFS,用于PXE安装
        filename "/var/ftp/pub/ks.cfg";
        next-server student20.redhat.com;

#       filename "/kickstart/virt_worstation.cfg
#       nfs-server
#       The following four lines provide an example of an IP
#       address bound to a specific MAC.
#对指定mac地址的主机配置静态IP,下面是我机子上做实验的用PXE安装的主机。
        host station28{
                hardware ethernet 52:54:00:a5:64:9e;
                fixed-address 192.168.0.71;
        }
        host station27{
                hardware ethernet 52:54:00:88:ee:83;
                fixed-address 192.168.0.70;
        }
        host station29{
                hardware ethernet 52:54:00:fe:9f:5f;
                fixed-address 192.168.0.72;
        }
}
#PXE这一部分一定要写。跟上面那一部分联系起来,从网卡启动以后,DHCP client 从服务器获得IP地址,这个IP就是上面定义的。然后从指定的tftp-server上取得pxelinux.0的补丁文件。

option space PXE;
class "PXEclients" {
        match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
#where the next-server <server-ip> should be replaced with the IP address of the tftp server.
                        filename "pxelinux.0";
                        option tftp-server-name "student20.redhat.com";
}
##############################
启动DHCP:
     [root@studnet20 ~]# service dhcpd start
        Starting dhcpd:                                            [  OK  ]
 每次修改完配置文件一定restart
     [root@studnet20 ~]# service dhcpd restart
       Shutting down dhcpd:                                       [  OK  ]
       Starting dhcpd:                                                  [  OK  ]