第14章 使用DHCP动态管理主机地址
检查服务出错的几个步骤
1 动态主机地址管理协议
既然确定在今后的生产环境中肯定离不开DHCP了,那么也就有必要好好地熟悉一下DHCP涉及的常见术语了。
作用域:一个完整的IP地址段,DHCP协议根据作用域来管理网络的分布、分配IP地址及其他配置参数。
超级作用域:用于管理处于同一个物理网络中的多个逻辑子网段。超级作用域中包含了可以统一管理的作用域列表。
排除范围:把作用域中的某些IP地址排除,确保这些IP地址不会分配给DHCP客户端。
地址池:在定义了DHCP的作用域并应用了排除范围后,剩余的用来动态分配给DHCP客户端的IP地址范围。
租约:DHCP客户端能够使用动态分配的IP地址的时间。
预约:保证网络中的特定设备总是获取到相同的IP地址。
2 部署dhcpd服务程序
yum install dhcp
dhcpd服务程序配置文件中使用的常见参数以及作用
参数
作用
ddns-update-style 类型
定义DNS服务动态更新的类型,类型包括:
none(不支持动态更新)、interim(互动更新模式)与ad-hoc(特殊更新模式)
allow/ignore client-updates
允许/忽略客户端更新DNS记录
default-lease-time 21600
默认超时时间
max-lease-time 43200
最大超时时间
option domain-name-servers 8.8.8.8
定义DNS服务器地址
option domain-name "domain.org"
定义DNS域名
range
定义用于分配的IP地址池
option subnet-mask
定义客户端的子网掩码
option routers
定义客户端的网关地址
broadcast-address 广播地址
定义客户端的广播地址
ntp-server IP地址
定义客户端的网络时间服务器(NTP)
nis-servers IP地址
定义客户端的NIS域服务器的地址
hardware 硬件类型 MAC地址
指定网卡接口的类型与MAC地址
server-name 主机名
向DHCP客户端通知DHCP服务器的主机名
fixed-address IP地址
将某个固定的IP地址分配给指定主机
time-offset 偏移差
指定客户端与格林尼治时间的偏移差
3 自动管理IP地址
[root@linuxprobe ~]# vim /etc/dhcp/dhcpd.conf ddns-update-style none; ignore client-updates; subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.50 192.168.10.150; option subnet-mask 255.255.255.0; option routers 192.168.10.1; option domain-name "linuxprobe.com"; option domain-name-servers 192.168.10.1; default-lease-time 21600; max-lease-time 43200; }
dhcpd服务程序配置文件中使用的参数以及作用
参数
作用
ddns-update-style none;
设置DNS服务不自动进行动态更新
ignore client-updates;
忽略客户端更新DNS记录
subnet 192.168.10.0 netmask 255.255.255.0 {
作用域为192.168.10.0/24网段
range 192.168.10.50 192.168.10.150;
IP地址池为192.168.10.50-150(约100个IP地址)
option subnet-mask 255.255.255.0;
定义客户端默认的子网掩码
option routers 192.168.10.1;
定义客户端的网关地址
option domain-name "linuxprobe.com";
定义默认的搜索域
option domain-name-servers 192.168.10.1;
定义客户端的DNS地址
default-lease-time 21600;
定义默认租约时间(单位:秒)
max-lease-time 43200;
定义最大预约时间(单位:秒)
}
结束符
4 分配固定IP地址
host 主机名称 {
hardware
ethernet
该主机的MAC地址;
fixed-address
欲指定的IP地址;
}
每一个主机都需要单独写下上面的配置文件
[root@linuxprobe ~]# vim /etc/dhcp/dhcpd.conf ddns-update-style none; ignore client-updates; subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.50 192.168.10.150; option subnet-mask 255.255.255.0; option routers 192.168.10.1; option domain-name "linuxprobe.com"; option domain-name-servers 192.168.10.1; default-lease-time 21600; max-lease-time 43200; host linuxprobe { hardware ethernet 00:0c:29:27:c6:12; fixed-address 192.168.10.88; } host linuxprobe001 { hardware ethernet 00:0c:29:27:c6:12; fixed-address 192.168.10.88; } host linuxprobe002 { hardware ethernet 00:0c:29:27:c6:12; fixed-address 192.168.10.88; } }