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服务为自启动