DHCP服务的作用及好处相信大家都应该知道,这里就不再阐述了。在rhel 5实现DHCP需要安装dhcp-
在第一次打开该文件时,只告知一个例子文件的路径,可将该例子覆盖该配置文件再进行修改。
dhcpd.conf文件有二大部分,分别是全局配置和局部配置。当全局配置与局部配置发生冲突时,局部配置优先级更高。
●常用参数:
●ddns-update-style (none|interim|ad-hoc):定义所支持的DNS动态更新类型,该参数必选且必须放在第一行且只能在●全局配置中使用。
●none:不支持。
●interim:DNS互动更新模式。
●ad-hoc:特殊DNS更新模式。
●ignore-client-updates:忽略客户端更新,该参数只能在全局配配置中使用。
●default-lease-time:默认IP租约时间,单位秒,该参数可以在全局配置、局部配置均可使用。
●mas-lesase-time:客户端IP租约时间的最大值,单位秒,该参数可以在全局配置、局部配置均可使用。
●常用声明:
●subnet 网络号 netmask 子网掩码 {…..}:定义作用域。
●range 起始IP 结束IP:动态IP地址范围。
●常用选项:
●option routes IP地址:默认网关,该选项可以在全局配置、局部配置均可使用。
●option subnet-mask 子网掩码:默认子网掩码,该选项可以在全局配置、局部配置均可使用。
●option domain-name-servers:DNS服务器地址,该选项可以在全局配置、局部配置均可使用。
●option domain-name:DNS后缀,该选项可以在全局配置、局部配置均可使用。
●option time-offset:为客户端指定格林威治时间领衔时间,单位秒,该选项可以在全局配置、局部配置均可使用。
●下面我们来看一个配置实例:
ddns-update-style interim;
ignore client-updates;
option domain-name“demo.zqin”;
subnet 192.168.159.0 netmask 255.255.255.0 {
option routers 192.168.159.18;
option subnet-mask255.255.255.0;
option domain-name-servers192.168.159.1;
option domain-name“example.zqin”;
option time-offset-18000;
range dynamic-bootp 192.168.159.20 192.168.100.250;
default-lease-time 21600;
max-lease-time 43200;
}
上述配置实际上只需在rhel中所提供的例子文件中改几处即可,在编写配置文件时需注意以下几个问题:
●每行必须以分号结尾(如不用分号结尾,在启动dhcpd时是不会报错的,只能通过查看日志文件/var/log/message得知)。
●局部配置必须包含在一对中括号之间。
●上面的例子中全局部分定义了参数option domain-name,在局部也定义了,这个在实际工作是没有必要的,这里只是为了说明局部参数的优先级高于全局部分。
如希望实现保留功能(在保留中也可使用参数,当然保留中参数的优先级最高),首先需要知道指定客户端网卡的MAC地址,然后在配置文件中加入如下内容即可。
ddns-update-style interim;
ignore client-updates;
option domain-name“demo.zqin”;
subnet 192.168.159.0 netmask 255.255.255.0 {
option routers 192.168.159.18;
option subnet-mask255.255.255.0;
option doma
ain-name-servers192.168.159.1;
option domain-name“example.zqin”;
option time-offset-18000;
range dynamic-bootp 192.168.159.20 192.168.100.250;
default-lease-time 21600;
max-lease-time 43200;
host lyon {
hardware Ethernet 00:50:56:c0:00:01;
在整个DHCP客户端与服务器通讯的过程全部使用的是广播的方式,这样会带来一个问题,如果在DHCP客户端与服务器之间必须通过路由器时是无法完成IP地址的申请过程的,这里就需要使用DHCP中继代理了。DHCP中继代理位于DHCP客户端一边的网络中,帮助DHCP客户端与DHCP服务器进行通讯。不过在实际工作中,本人觉得直接在路由器或三层交换机上配置DHCP中继代理更合理。不过我们还是来看下通过rhel如何实现中继代理功能。
●将dhcp的网关指向192.168.159.18
●编辑/etc/syconfig/dhcpd文件
DHCPDARGS=eth0
●在dhcp上建立超级作用域,并为192.168.100.0/24建立作用域
ddns-update-style interim;
ignore client-updates;
shared-network test {
#建立超级作用域
option domain-name"example.zqin";
option domain-name-servers192.168.159.1;
subnet 192.168.100.0 netmask 255.255.255.0 {
option routers 192.168.100.18;
option subnet-mask255.255.255.0;
option time-offset-18000;
range dynamic-bootp 192.168.100.20 192.168.100.200;
default-lease-time 21600;
max-lease-time 43200;
}
subnet 192.168.159.0 netmask 255.255.255.0 {
option routers192.168.159.18;
option subnet-mask255.255.255.0;
option time-offset-18000;
range dynamic-bootp 192.168.159.20 192.168.159.200;
default-lease-time 21600;
max-lease-time 43200;
}
}
●在中继代理上安装dhcp、dhcp-devel包。
●在中继代理上运行,并将其加入/etc/rc.local中。
echo “
●编辑/etc/sysconfig/dhcrelay文件
INTERFACES="eth1"
DHCPSERVERS="192.168.159.19"
●启用中继代理
service dhcrelay restart
chkconfig dhcrelay on