0-使用DHCP动态配置主机地址


2016.7.3 使用DHCP动态配置主机地址

一、配置DHCP服务器

1.安装DHCP服务器软件

  • 主配置文件:/etc/dhcp/dhcpd.conf
  • 执行程序:/user/sbin/dhcpd、/usr/bin/dhcrelay
  • 服务脚本:/etc/init.d/dhcpd、/etc/init.d/dhcrelay
  • 执行参数配置:/etc/sysconfig/dhcpd
  • DHCP中继配置:/etc/sysconfig/dhcrelay

2.建立主配置文件dhcpd.conf

/etc/dhcp/dhcpd.conf

1)/etc/dhcp/dhcpd.conf文件的配置构成

  • 声明
用来描述dhcp服务器中对网络布局的划分,是网络设置的逻辑范围。
较常见的声明是subnet、host,其中subnet声明用来约束一个网段,host声明用来约束一台特定的主机。
  • 参数
由配置关键字和对应的值组成,总是以分号“;”结束,一般位于指定的声明范围之内,
用来设置所在范围的运行特性(如默认租约时间,最大租约时间等)。
  • 选项
由“option”引导,后面跟具体的配置关键字和对应的值,也是以分号“;”结束,
用于指定分配分配给客户机的各种地址参数(如默认网关地址,子网掩码,DNS服务器地址等)

2)确定dhcp服务的全局配置

常见的几个全局配置参数和选项如下:

ddns-update-style

动态DNS更新模式。用来设置与DHCP服务相关联的DNS数据动态更新模式。
在实际的DHCP应用中很少用到该参数,将值设为“none”即可

default-lease-time

默认租约时间。单位为秒,表示客户端可以从DHCP服务器租用某个IP地址的默认时间。

max-lease-time

最大租约时间。单位为秒,表示允许DHCP客户端请求的最大租约时间,
当客户端未请求明确租约时间时,服务器将采用默认租约时间。

option domain-name

默认搜索区域。为客户机指定解析主机名时的默认搜索域,
该配置选项将体现在/etc/resolv.conf 配置文件中,如“search benet.com”

option domain-name-servers

DNS服务器地址。为客户机指定解析域名时使用的DNS服务器地址,
该配置选项同样将体现在客户机的/etc/resolv.conf配置文件中(如“nameserver 202.106.0.20”).
若需要设置多个DNS服务器地址,可以使用逗号“,”进行分割。

3)使用subnet声明设置子网属性

  • 使用subnet关键字指定子网的网络地址,netmask关键字指定子网掩码
  • 使用range参数指定用于动态分配的IP地址范围,可以有多个range参数行。设置IP地址范围必须与subnet设置的子网对应。
  • 使用option subnet-mask 选项指定为客户机分配的子网掩码地址,设置该选项后通常不需要再设置网络地址和广播地址
  • 使用option routers选项指定为客户机分配的默认网关地址。

4)确定host主机声明(可选)

host声明用于设置单个主机的网络属性,通常用于为网络打印机或个别服务器分配固定IP地址(保留地址),这些主机的共同特点是:每次动态获取IP地址必须相同,以确保服务的稳定性。

host声明可以独立使用,也可以放在某个subnet声明中。

  • 使用host关键字指定需要分配保留地址的DHCP客户机名称
  • 使用“hardware ethernet”参数指定匹配主机的MAC地址
  • 使用“fixed-address”参数指定对应的保留IP地址。

3.命令参数配置文件/etc/sysconfig/dhcpd

默认情况下,DHCP服务器将面向可用的多个网络接口同时开放服务,如果只需要在其中一个网络接口上提供服务,可以修改/etc/sysconfig/dhcpd文件,使用“DHCPDARGS=”配置行指定命令参数

例如DHCPDARGS=“eth0 eth1”

4.启动dhcpd服务

在启动hdcp之前,应确认DHCP服务器的网络接口具有静态指定的固定IP地址,并且至少有一个网络接口的IP地址与DHCP服务器中的一个subnet网段相对应,否则将无法正常启动dhcpd服务。

dhcp服务的脚本位于/etc/rc.d/init.d/dhcpd

#service dhcpd start 
#netstat -anpu | grep dhcpd
  • service dhcpd sotp
  • service dhcpd

成功运行dhcpd服务以后,可以通过查看租约文件“/var/lib/dhcpd/dhcpd.leases”来了解服务器IP地址分配情况。该租约文件中记录了分配出去的每个IP地址信息(租约记录),包括IP地址、客户端的MAC地址、租用的起始时间和结束时间等。


二、使用DHCP客户端

1.设置“BOOTPROTO=dhcp”并重新加载配置

  • vi /etc/sysconfig/network-scripts/ifcfg-eth0
  • ifdown etho; ifup eth0

可以使用dhclient -d eth0来测试

#dhclient -d eth0

2.释放获取的IP租约

#dhclient -r eht0

三、配置DHCP中继

1.开启服务器的路由转发功能

编辑“/etc/sysctl.conf”文件,将“net.ipv4.ip_forward”配置项的值修改为1,并执行“sysctl -p”命令使修改生效。

2.设置允许DHCP中继数据的接口及DHCP服务器的IP地址

编辑文件“/etc/sysconfig/dhcrelay”,分别设置“INTERFACES”、“DHCPSERVERS”配置项。\

#vi /etc/sysconfig/dhcrelay
INTERFACES="etho0 eht1"
DHCPSERVERS="192.168.1.2"

3.启动dhcrelay中继服务程序

#service dhcrelay start
#chkconfig --levle 35 dhcrelay on //设置dhcrelay服务为自启动

results matching ""

    No results matching ""