DHCP(dynamic host configuration protocol)即是动态主机配置协议的简称,它主要是用于给某些中大型的网络段上的主机进行动态分配IP地址与TCP/IP等相关参数,减轻网络管理人员的负担,降低IP地址分配错误冲突的概率,比如我们家庭使用的ADSL拨号就是用的DHCP协议自动获取的IP地址。

DHCP的配置过程没什么难的,主要是理解DHCP工作的四大过程即可。

1.DHCP Discovery

2.DHCP Offer

3.DHCP Request

4.DHCP Ack

在Linux下配置DHCP服务

系统环境:CentOS 5.2

1.在配置之前首先要检查你机子中是否已安装相关软件包,看命令

rpm -qa | grep dhcp

如果有显示安装的话那就行了,可以进行配置文件的修改,不需要再次进行安装,如果没有显示任何东西的话那请挂载你的光盘进而进行安装

mount  /dev/cdrom /mnt

rpm -ivh /mnt/xxxxxxxx (自行进到相应目录进行安装)

如果你想知道安装某个软件包之后你系统发生了哪些变化,即那个软件包在你系统中创建了哪些目录,建立了哪些文件,可以用下面这个命令

rpm -qf xxxx(xxx代表软件包名)

2.确定你机子中已经安装了相应的软件包之后就可以进行DHCP服务的配置了,用vim编辑器打开主配置文件dhcpd.conf

默认dhcpd.conf文件内容是空的,但是安装软件包的时候给了你一个sample文件,直接cp覆盖etc下的主配置文件即可。

vim /etc/dhcpd.conf

默认文件内容如下,稍微解释一下

#global setting 全局设置
ddns-update-style none;      #不要更新ddns的设置
default-lease-time 259200;   #默认租约时间为3天
max-lease-time 518400;       #最大租约时间为6天
option routers 192.168.1.1;  #默认路由
option subnet-mask 255.255.255.0; #子网掩码
option domain-name "sharpshooter.org";    #dns域名,没配置dns服务器的话注释掉即可
option domain-name-servers  192.168.1.10;      #dhs服务器的IP地址,它会修改/etc/resolv.conf 中的nameserver设置
option broadcast-address 222.205.197.255;      #广播地址
#关于动态分配的IP地址范围
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.21; #分配的IP地址池
range 192.168.1.23 192.168.1.50;
option subnet-mask 255.255.255.0;#掩码
option nis-domain "sharpshooter.com" ;#nis服务器的域名
}
#分配静态固定的IP地址
host sharpshooter {
hardware Ethernet 00:03:FF:B0:1E:02;#需要分配静态ip地址的客户端主机的mac地址
fixed-address 192.168.1.22;#分配给客户端的静态ip,即客户端每次开机获取到的ip地址都是192.168.1.22
}

配置好之后保存退出

:wq

配置好之后,重启dhcp服务即可,随后就可以到另一台机子中进行客户端的配置

Linux客户端检测

vi /etc/sysconfig/network-script/ifcfg-eth0

将BOOTPROTO=static改为BOOTPROTO=dhcp即可,其他无关的设置删除掉或者注释掉,之后重启网络服务

/etc/rc.d/init.d/network restart    OR     service networe restart

再次输入ifconfig查看所得到的ip地址是否正确

Windows客户端

直接选择自动获取IP即可,看图

 

之后就可以进入命令提示符下输入ipconfig/all看看获取的TCP/IP参数是否如我们在配置文件中所配置的

如果不是给同一网段的主机动态分配IP地址需要进行DHCP中继的设置。。