免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 984 | 回复: 0
打印 上一主题 下一主题

Linux下DHCP服务器配置 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-27 14:54 |只看该作者 |倒序浏览

DHCP
的全称是动态主机配置协议,它的目的就是为了减轻TCP/IP网络的规划、管理和维护的负担,解决IP地址空间缺乏问题。DHCP分为两个部分:一个是
服务器
端,而另一个则是客户端。所有的IP网络设定资料都由DHCP服务器集中管理,并负责处理客户端的DHCP要求;而客户端则会使用从服务器分配下来的IP环境资料。DHCP协议通过“租约” 的概念,有效且动态的分配客户端的TCP/IP设定。
  一、DHCPD进程
  
dhcp
d进程为了向网络提供服务,需要知道网络的地址和掩码,并且还要知道地址分配的范围,这与
Windows
系统下的DHCP服务所需要条件是一样的。在dhcpd.conf文件中指定网络地址和掩码的语句如下:
  subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.10 192.168.1.253
  # dhcpd服务器将给192.168.1.0网络,分配从192.168.1.10到192.168.1.253这个范围的IP地址。
  我们从Windows Server 2003系统DHCP服务器配置过程中知道,还需要配置IP地址的租约期,在
Linux
系统也一样。配置IP租期时间只需简单的两个语句:
  default-lease-time # 配置默认租期时间
  max-lease-time # 配置用户可以获得的最长租期时间
  租期可以从0秒到无限长,可以根据需要来定(以秒为单位)。缺省的租期时间为一天,即86400秒。下面的配置将缺省的租期时间设置为30分钟,最长租用时间为8小时:
  default-lease-time 1800;
  max-lease-time 28800;
  在Windows系统的DHCP服务器配置中,还可以一起配置一些选项,如
路由
、DNS服务器等,在Linux系统中也可以。它是用option参数来指定的,例如:
  option routers 192.168.1.10 # 配置默认路由为192.168.1.10
  option domain-name-servers 192.168.1.1 # 配置DNS服务器地址为192.168.1.1
  二、dhcpd.conf配置文件主要语句
  dhcpd.conf是个递归下降格式的配置文件,有点象C的源程序风格,由参数和声明两大类语句构成,参数类语句主要告诉DHCPd网络参数,如租约的时间、网关、DNS等,而声明语句则是描述网络的拓扑,用来表明网络上的客户、要提供给客户的IP地址、提供一个参数组给一组声明等。
  描述网络拓扑的声明语句有shared-network和subnet声明。如果要给一个子网里的客户动态指定IP地址,那么在subnet语句中必须有一个range参数配置,说明地址范围。如果要给DHCP客户静态指定IP地址,那么每个这样客户都要有一个host参数配置。对于每个要提供服务的与DHCP服务器连接的子网,则都要有一个subnet参数配置,即使这是个没有IP地址要动态分配的子网。
  1、典型语句
  #examples
  default-lease-time 28800 # 定义缺省租约时间
  max-lease-time 43200 # 指定最大租约时间
  option subnet-mask 255.255.255.0 # 指定子网掩码选项
  option broadcast-address 192.168.0.255 # 指定广播地址选项
  option routers 192.168.0.1 # 指定路由器地址选项
  option domain-name-servers 192.168.0.1 # 指定DNS地址选项
  option domain-name "netreslab.org" # 指定域名选项
  # 以上都是全局参数,以下是子网和掩码声明。
  subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.10 192.168.0.100;range 192.168.0.150 192.168.0.200}
  # 这段配置文件将允许DHCP服务器分配两段地址范围给DHCP客户,192.168.0.10-100 和192.168.0.150-200。
  以上整个dhcpd.conf配置文件定义了以下内容:如果DHCP客户在申请租约时不请求一个特定租约失效时间,则以default-lease-time(28800秒)为租约时间,如果有请求一个特定的租约失效时间,则采用max-lease-time语句指定为432000秒。DHCP客户机从DHCP服务器中可以获取的IP地址参数如下:子网掩码是255.255.255.0 ,广播地址是192.168.1.255,默认网关是192.168.0.1,DNS是192.168.0.1。
  2、Options语句
  在dhcpd.conf配置文件中有一类语句应用非常多,它就是选项(Options)类语句。这类语句均是以Option开头,后面跟一个选项名,选项名后是选项数据,选项非常的多,这里列出一些常用的选项供参考。
  option routers ip-address[, ip-address] # 指明在客户子网内的路由器的地址,可以有多个;
  option time-servers ip-address[, ip-address...] # 指明时间服务器的地址
  option domain-name-servers ip-address[, ip-address...] # 指明DNS的地址
  option host-anme string # 给客户指定主机名,string是个字符串。
  option domain-name string # 指定域名
  option interface-mtu mtu # 指明网络界面的MTU,这里mtu是个正整数,如option interface-mtu 1500;
  option broadcast-address ip-address # 指定广播地址
  Linux中的DHCP服务器与Windows系统中的DHCP服务器一样,dhcpd进程也可以把主机的MAC地址和IP捆绑在一起,实现在动态IP地址分配中的静态IP地址分配。具体方法是,在/etc/dhcpd.conf中加上一句:
  host pc1{ hardware ethernet xx.xx.xx.xx.xx.xx fixed-address 192.168.0.9;}
  pc1是指定的主机名字;hardware ethernet后面的xx.xx.xx.xx.xx.xx指的是要与IP地址绑定的MAC地址;fixed-address 指捆绑后的IP地址。
  三、DHCP服务器的启动
  现在配置文件已经有了,但还是如果我们执行“系统配置”、“服务器配置”等。在打开的“服务”窗口中启动“dhcpd”服务,或者通过命令方式输入#/etc/rc.d/init.d/dhcpd start时会发现还是不能成功启动dhcpd进程,那是因为我们还没有创建关于dhcpd进程的租用文件。
  现在我们创建dhcpd.leases文件,输入以下命令:
  #touch /var/state/dhcp/dhcpd.leases
  然后就可以启动dhcpd进程了。如果希望在每次启动系统的时候也启动dhcpd进程,则执行命令:#/sbin/chkconfig --level 3 dhcpd on,当然也可在“服务”窗口中选中该进程前面的复选框,然后提升进程启动的等级。
  chkconfig命令是检查设置系统的各种服务的。参数—level 指定该系统服务要在哪一个执行等级中开启或关闭,范围是0-7。然后,在Linux客户端的netconf网络设置中把IP地址的获得设置为DHCP。 这样,我们DHCP服务器的配置就完成了


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/27383/showart_1912033.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP