DHCP (Dynamic Host Configuration Protocol)
1、安装dhcp需要和依赖包portreserve一起装(光盘里自带的软件包就好)
[root@dhcp ~]# rpm -ivh dhcp-4.1.1-43.P1.el6.centos.x86_64.rpm portreserve-0.0.4-9.el6.x86_64.rpm
2、安装好后用命令来查询下dhcp的配置文件存放位置已经模板文件的存放位置
[root@dhcp ~]# rpm -ql dhcp #查看dhcp配置文件位置、安装位置、文档位置、模板位置等 [root@dhcp ~]# rpm -qc dhcp #查看dhcp的配置文件位置 /etc/dhcp/dhcpd.conf #dhcp的主文件 /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample #模板位置 /var/lib/dhcpd/dhcpd.leases #这个文件里记录了租约的起止时间
3、复制dhcp配置文件模板到dhcp配置文件目录下(直接覆盖就好)
[root@dhcp ~]# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
4、修改配置文件
----------------------------------------------------------------------------------------
#全局设定配置
注意:IP设定项里也可以设置域名、DNS、租约时间等,并且优先级比全局设定配置里的这些项还要高也就是说,如果在IP设定项和全局设定里同时都用DNS等设定,具体分配是会分配IP设定项里的DNS等信息只有当IP设定项里没有做DNS,租约等设定,才会分配全局设定项里的DNS等。
option domain-name "test.com"; #当你要搜寻主机名时,DNS会主动帮主机加上这个域名 option domain-name-servers 8.8.8.8, 114.114.114.114; #多个DNS地址要用逗号分开,最多写3个 default-lease-time 600; #预设租约时间,单位:秒 max-lease-time 7200; #最大租约时间,单位:秒
----------------------------------------------------------------------------------------
#IP设定(动态和静态IP设定)
#动态分配IP地址设定
subnet 192.168.1.0 netmask 255.255.255.0 { #设定动态地址网络 range 192.168.1.100 192.168.1.200; #设定动态分配地址范围 option domain-name-servers 8.8.8.8, 114.114.114.114; #设定DNS地址,有多个时中间用逗号分开,逗号后有空格 option domain-name "dhcp.test.com"; #域名 option routers 192.168.1.254; #网关,可以设定多个网关,需要用逗号分开,逗号后有空格 option broadcast-address 192.168.1.255; #广播地址,根据网络地址算出来 default-lease-time 600; #预设租约时间,单位:秒 max-lease-time 7200; #最大租约时间,单位:秒 }
#mac地址静态绑定IP地址设定
host 主机名 { #这里写需要绑定IP地址的主机名 hardware ethernet 08:00:07:26:c0:a5; #需要绑定IP地址的主机网卡的mac地址 fixed-address 192.168.1.222; #需要绑定的IP地址 option domain-name-servers 8.8.8.8, 114.114.114.114; #设定DNS地址,有多个时中间用逗号分开,逗号后有空格 option domain-name "dhcp.test.com"; #域名 option routers 192.168.1.254; #网关,可以设定多个网关,需要用逗号分开,逗号后有空格 option broadcast-address 192.168.1.255; #广播地址,根据网络地址算出来 }
5、检查配置文件
[root@dhcp ~]# service dhcpd configtest Syntax: OK
如果配置有问题,会在这里输出错误位置。如上是检查配置文件没有问题
检查没问题后开始启动服务器
[root@dhcp ~]# /etc/init.d/dhcpd start Starting dhcpd: [ OK ]
6、检查端口监听状态,DHCP服务端默认是UDP 67号端口
这里借用一张鸟哥的图来介绍DHCP服务器工作流程:
如果一个网络里存在多个DHCP服务器,那么客户端先收到哪个DHCP服务器的回应就会选择此DHCP服务器分配的IP
检查监听状态
[root@dhcp ~]# netstat -ltunp -l 只显示LISTEN状态 -t 显示TCP -u 显示UDP -n 显示端口号 -p PID/Program name
下面的命令可以跟踪日志文件
[root@dhcp ~]# tailf /var/log/messages
别忘了还有记录租约起止时间的文件(其实从这个里面也能看到具体分配了那些IP地址)
/var/lib/dhcpd/dhcpd.leases
7、关于租约
一般来说,如果租约期限是T秒,那么客户端会在0.5T秒时主动向DHCP服务器发出续约请求。如果这次请求没有成功,那么会在0.875T秒后再次发送续约请求。因此,DHCP服务器需要一直开启UDP 67号端口来监听客户端的请求,而客户端则会启用UDP 68号端口主动向DHCP服务器发送续约请求。
本文出自 “浪人” 博客,请务必保留此出处http://anspace.blog.51cto.com/3394927/1711139
原文:http://anspace.blog.51cto.com/3394927/1711139