Redhat使用dhcpd进程提供DHCP服务,启动时dhcpd自动读它的配置文件/etc/dhcpd.conf。dhcpd将客户的租用信息保存在/var/lib/dhcp/dhcpd.leases文件中,该文件不断被更新,从这里面可以查到IP地址分配的情况。
dhcpd为了向一个子网提供服务,需要知道子网的网络地址和网络掩码,并且还要知道地址分配的范围,下面给出一个简单的dhcpd.conf文件: subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.100.10 192.168.100.253; } 此例中,dhcpd将给192.168.100.0网络分配192.168.100.10到192.168.100.253的IP地址。 租期时间可以从0秒到无限长,可以根据需要来定。缺省的租期时间为一天,即86400秒。可以为主机定义两个租期长度: default-lease-time 默认租期时间; max-lease-time 用户可以获得的最长租期时间。 下面的配置将缺省的租期时间设置为10分钟,最长租用时间为1小时: subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.100.10 192.168.100.253; default-lease-time 600; max-lease-time 3600; } DHCP还可以向客户提供更多的参数,这些参数可以用option来指定,例如: subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.100.10 192.168.100.253; default-lease-time 600; max-lease-time 3600; option subnet-mask 255.255.255.0; option routers 192.168.100.254; 默认路由 option domain-name-servers 202.102.134.68; DNS服务器 } 有些选项也可以在作用域之外使用成为全局作用项 default-lease-time 86400;
subnet 192.168.1.0 netmask 255.255.255.0 { 要启动DHCPd, 简单地键入 /usr/sbin/dhcpd 或用ntsysv 把DHCPd服务自动启动,也可以用 /etc/rc.d/init.d/dhcpd start, 这样启动后,DHCPd是启动在eth0 上,如果DHCPd上的服务器还有另外一块网卡eth1, 想在eth1上启动 dhcpd,就键入 #/usr/sbin/dhcpd eth1 |