DHCP服务器配置

原文链接
今天我们的课程是DHCP服务器的架设,在安装虚拟机的时候网卡选择桥接的就可以.

DHCP基于客户/服务器模式。当DHCP客户端启动时,它会自动与DHCP服务器通信,由DHCP服务器为DHCP客户端提供自动分配IP地址的服务。 
当然高级的DHCP,不光只是分配地址这么简单,今天我们的课程只是架设一个普通的DHCP的服务器, client端能获取到上网必须的网络配置信息
安装了DHCP服务软件的服务器称为DHCP服务器,而启用了DHCP功能的客户机称为DHCP客户端,DHCP服务器是以地址租约的方式为DHCP客户端提供服务的,它有以下两种方式。 
限定租期 
永久租用

学DHCP服务器,就一定要知道DHCP服务器的工作原理,不然你就白学了 
DHCPDISCOVER(DHCP发现) 
DHCPOFFER(DHCP提供) 
DHCPREQUEST(DHCP请求) 
DHCPACK(DHCP确认)
 
这个4个步骤,是client获取IP地址必经的步骤 
 
在第二步,DHCP提供的时候,服务器已经给client分配了IP地址,第二部分分给client的IP地址是临时的,client得到这个IP地址后,会发出DHCP请求,请求租用这个地址,服务器收到请求后,就会正式把这个地址分配给client,继而向client发送DHCP确认。 
这个四步主要是应对同一网络多个DHCP服务器
后台进程:dhcpd 
脚本:/etc/rc.d/init.d/dhcpd 
使用端口:67 
所需RPM包:dhcp 
相关RPM包: 
dhcp-devel-3.0.5-7.el5.i386.rpm 
dhcpv6-0.10-33.el5.i386.rpm 
dhcpv6_client-0.10-33.el5.i386.rpm 
配置文件:/etc/dhcpd.conf 
日志:/var/log/xferlog

68号是网络启动模式使用的,暂时不讨论
再提示一点吧,网络启动方式也叫bootpc,这样获取的IP地址是不会受服务器的租期限制的,它永远有效 
好了,我们先安装DHCP服务器 
 
 
编辑DHCP的主配置文件
vim /etc/dhcpd.conf
 
这里的意思是see的路劲是一个模板 
我们把这个文件内容导进来,在末行模式运行以下命令 
末行模式使用 : r  文件名
:r /usr/share/doc/dhcp*/dhcpd.conf.sample
 
这样模板就被导入进来了
 
使用模板的好处 
第一自己写配置文件,麻烦还容易出错 
第二使用模板架设很快,只需要修改几个参数就OK了
 
ddns-update-style 类型 定义所支持的DNS动态更新类型(必选),一般我们设置成关闭,interim和none都是关闭的意思 
allow/ignore client-updates 允许/忽略客户机更新DNS记录   
subnet 网络号 netmask 子网掩码 {…} 定义作用域(或IP子网)  
 
配置文件已经说的很清楚了 option routers ,网关,我的网关是192.168.0.1 
 
nis-domain 局域网内有nis服务器的,可以设置nis服务器的域名
 
我没有架设nis服务器,所以这行可以注释了 
下一行是domain-name,域名 
我的是wanxuan.com 
域名服务器是我这个机器的IP,192.168.0.1
 
linux当然有超级域,linux也能实现中继DHCP,相关设置参考 [RHEL5企业级Linux服务攻略]--第3季 DHCP服务全攻略  
time-offset:为客户端指定格林威治时间偏移时间,单位秒,该选项可以在全局配置、局部配置均可使用。 
ntp-servers:NTP是时间服务器 
netbios-name-servers:是微软的名字服务器 
 
NTP服务器,你可以设置一个外网的,如果觉得没必要就可以不设置
range dynamic-bootp 就是动态分配的IP地址池,这个是IP地址是连在一起的地址池范围
下面两行是默认租期和最大租期,单位是秒 
 
如果你某个主机要固定获取某个IP,就可以使用下面的功能,next-server 这里用不上,意思就是下一个服务器,一般指向tftp的,一般是PXE网络使用这个参数 
 
好了,保存退出 
重新启动服务
 
记住,配置文件中的{}一定要对应,还有第一个参数ddns-update-styple 必须要,一般就不会出什么问题了
看下日志  cat /var/log/messages
[root@rhel5 ~]# cat /var/log/messages 
Mar 22 04:02:10 rhel5 syslogd 1.4.1: restart. 
Mar 22 04:02:09 rhel5 nmbd[24089]: [2009/03/22 04:02:09, 0] nmbd/nmbd_workgroupdb.c:dump_workgroups(282) 
Mar 22 04:02:09 rhel5 nmbd[24089]:   dump_workgroups() 
Mar 22 04:02:09 rhel5 nmbd[24089]:    dump workgroup on subnet   192.168.0.188: netmask=  255.255.255.0: 
Mar 22 04:02:09 rhel5 nmbd[24089]:      WANXUAN(7) current master browser = SERVER 
Mar 22 04:02:09 rhel5 nmbd[24089]:      WORKGROUP(6) current master browser = LENOVO-A5A67FC0 
Mar 22 04:02:09 rhel5 nmbd[24089]:      MYGROUP(1) current master browser = RHEL5 
Mar 22 04:02:09 rhel5 nmbd[24089]:              RHEL5 40849a03 (Samba Server Version 3.0.25b-0.el5.4)
Mar 22 08:38:43 rhel5 kernel: VFS: busy inodes on changed media. 
Mar 22 08:38:49 rhel5 last message repeated 7 times 
Mar 22 08:48:06 rhel5 scim-bridge: Panel client has not yet been prepared 
Mar 22 08:48:09 rhel5 Panel client has not yet been prepared 
Mar 22 08:48:09 rhel5 scim-bridge: Panel client has not yet been prepared 
Mar 22 08:53:07 rhel5 kernel: VFS: busy inodes on changed media. 
Mar 22 08:53:38 rhel5 last message repeated 33 times 
Mar 22 08:54:21 rhel5 last message repeated 42 times 
Mar 22 13:27:30 rhel5 Panel client has not yet been prepared 
Mar 22 13:27:30 rhel5 scim-bridge: Panel client has not yet been prepared 
Mar 22 13:29:09 rhel5 nmbd[24089]: [2009/03/22 13:29:09, 0] nmbd/nmbd.c:terminate(58) 
Mar 22 13:29:09 rhel5 nmbd[24089]:   Got SIGTERM: going down... 
Mar 22 13:34:09 rhel5 nmbd[18273]: [2009/03/22 13:34:09, 0] nmbd/nmbd.c:terminate(58) 
Mar 22 13:34:09 rhel5 nmbd[18273]:   Got SIGTERM: going down... 
Mar 22 13:39:51 rhel5 nmbd[18445]: [2009/03/22 13:39:51, 0] nmbd/nmbd_become_lmb.c:become_local_master_stage2(396) 
Mar 22 13:39:51 rhel5 nmbd[18445]:   ***** 
Mar 22 13:39:51 rhel5 nmbd[18445]:    
Mar 22 13:39:51 rhel5 nmbd[18445]:   Samba name server RHEL5 is now a local master browser for workgroup MYGROUP on subnet 192.168.0.188 
Mar 22 13:39:51 rhel5 nmbd[18445]:    
Mar 22 13:39:51 rhel5 nmbd[18445]:   ***** 
Mar 22 16:17:20 rhel5 nmbd[18445]: [2009/03/22 16:17:20, 0] nmbd/nmbd.c:terminate(58) 
Mar 22 16:17:20 rhel5 nmbd[18445]:   Got SIGTERM: going down... 
Mar 22 16:22:51 rhel5 nmbd[23030]: [2009/03/22 16:22:51, 0] nmbd/nmbd_become_lmb.c:become_local_master_stage2(396) 
Mar 22 16:22:51 rhel5 nmbd[23030]:   ***** 
Mar 22 16:22:51 rhel5 nmbd[23030]:    
Mar 22 16:22:51 rhel5 nmbd[23030]:   Samba name server RHEL5 is now a local master browser for workgroup MYGROUP on subnet 192.168.0.188 
Mar 22 16:22:51 rhel5 nmbd[23030]:    
Mar 22 16:22:51 rhel5 nmbd[23030]:   ***** 
Mar 22 16:28:33 rhel5 nmbd[23030]: [2009/03/22 16:28:33, 0] nmbd/nmbd.c:terminate(58) 
Mar 22 16:28:33 rhel5 nmbd[23030]:   Got SIGTERM: going down... 
Mar 22 16:34:15 rhel5 nmbd[23366]: [2009/03/22 16:34:15, 0] nmbd/nmbd_become_lmb.c:become_local_master_stage2(396) 
Mar 22 16:34:15 rhel5 nmbd[23366]:   ***** 
Mar 22 16:34:15 rhel5 nmbd[23366]:    
Mar 22 16:34:15 rhel5 nmbd[23366]:   Samba name server RHEL5 is now a local master browser for workgroup MYGROUP on subnet 192.168.0.188 
Mar 22 16:34:15 rhel5 nmbd[23366]:    
Mar 22 16:34:15 rhel5 nmbd[23366]:   ***** 
Mar 23 10:44:21 rhel5 kernel: VFS: busy inodes on changed media. 
Mar 23 10:44:26 rhel5 last message repeated 7 times 
Mar 23 14:01:09 rhel5 dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in. 
Mar 23 14:01:10 rhel5 dhcpd: dhcpd shutdown succeeded 
Mar 23 14:01:10 rhel5 dhcpd: Internet Systems Consortium DHCP Server V3.0.5-RedHat 
Mar 23 14:01:10 rhel5 dhcpd: Copyright 2004-2006 Internet Systems Consortium. 
Mar 23 14:01:10 rhel5 dhcpd: All rights reserved. 
Mar 23 14:01:10 rhel5 dhcpd: For info, please visit [url]http://www.isc.org/sw/dhcp/[/url] 
Mar 23 14:01:10 rhel5 dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in. 
Mar 23 14:01:10 rhel5 dhcpd: Wrote 0 deleted host decls to leases file. 
Mar 23 14:01:10 rhel5 dhcpd: Wrote 0 new dynamic host decls to leases file. 
Mar 23 14:01:10 rhel5 dhcpd: Wrote 0 leases to leases file. 
Mar 23 14:01:10 rhel5 dhcpd: Listening on LPF/eth0/00:0c:29:ec:fd:83/192.168.0/24 
Mar 23 14:01:11 rhel5 dhcpd: Sending on   LPF/eth0/00:0c:29:ec:fd:83/192.168.0/24 
Mar 23 14:01:11 rhel5 dhcpd: Sending on   Socket/fallback/fallback-net 
Mar 23 14:01:11 rhel5 dhcpd: dhcpd startup succeeded 
[root@rhel5 ~]# 
现在我们来测试,使用client来获取IP: dhclient
 
临时获取一个IP地址,重新启动网卡失效,获取的是192.168.0.254
我们来看看服务器的日志 
 
看明白日志了吗?client的请求我的linuxDHCP是收到了 
linux的DHCP是从后面开始获取的,从高位开始分配的
查看 /var/lib/dhcpd/dhcpd.leases 这个文件,可以看到被租出去的IP地址和相关信息 
 
这个很简单,大家应该很容易看懂
DHCP中继,一般使用路由器实现,很少使用主机来做
这个文件 /etc/sysconfig/dhcrelay 就是设置DHCP中继的文件,大家打开看看吧,很简单的
interfaces 就是来自这个端口的dhcpdiscover(请求)都会转发到后面的DHCPSERVERS服务器 
 
这个文件 /etc/sysconfig/dhcpd 是指定DHCP服务器监听的网卡,如果只有一个网卡,一般不用设置
DHCPDARGS=eth0 或者是eth1 ,如果全部监听就不用管 
 
设置了DHCP中继,需要启动中继服务, service dhcrelay start  ,有环境的朋友可以自己测试下, 转发的服务器和监听的网卡要不在一个子网   
不过建议DHCP服务器还是用路由器代替,cisco的中继叫IP助手 
##################Michael分割线######################
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值