DHCP 服务器的配置是 Linux 服务器配置中最简单的服务之一,网上也有很多相关文档,不过大部分都只是讲解了配置。虽然我这篇文档也不一定很完善,不过我还是希望能够尽量说得明白一些,同时也希望大家能够提供更多宝贵的意见。有关 DHCP 的工作过程,可以参考“ DHCP 工作过程详解( http://guoxuemin.blog.51cto.com/379574/163475 )”。今天我们要谈的主要话题有以下几点: <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

1. DHCP 安装

2. 基本配置

3. 多作用域及中继代理配置

4. DHCP 服务器的安全

5. 管理监控 DHCP 服务器

本文档中使用的系统是 CentOS5 ,默认未安装 DHCP 服务器。

 

一、 DHCP 安装

Linux 默认会安装 DHCP 客户端,可以使用命令: rpm  -qa|grep  dhcp 查看相关安装信息。

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

要将服务器配置成为 DHCP 服务器,还需要安装以下程序包: dhcp-<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />3.0.5-18.el5.i386.rpm dhcp-devel-3.0.5-18.el5.i386.rpm dhcpv6-1.0.10-16.el5.i386.rpm (注意,不同的操作系统版本, DHCP 安装包的版本会不一样。) 具体安装如下:

 

二、基本配置

下面我们用一个实例来说明 DHCP 服务器的配置,某公司的网络如下:

使用网段 192.168.99.0/24

网关地址: 192.168.99.1

DNS DHCP 服务器地址为: 192.168.99.9

公司域名为: guoxuemin.cn

DHCP 地址池为: 192.168.99.51-192.168.99.254

另外, Boss 电脑绑定 192.168.99.46 这个地址。

 

1. /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample 复制到 /etc/dhcpd.conf ,也可以新建一个 dhcpd.conf

 

2. 配置 /etc/dhcpd.conf ,具体如下图:

# vi  /etc/dhcpd.conf

参数说明:

1 ddns-update-style :定义所支持的 DNS 动态更新类型。

   可选参数: None :不支持动态更新; interim DNS 互动更新模式; ad-hoc :特殊 DNS 更新模式。

2 ignore  client-updates :忽略客户端更新。

3 subnet  192.168.99.0  netmask  255.255.255.0 :指定配置的子网。

4 option  routers :默认网关地址。

5 option  subnet-mask :设置客户端子网掩码。

6 option  nis-domain :指定所属的 NIS 域的名称。

7 option  domain-name :指定域名。

8 option  domain-name-servers :指定 DNS 服务器地址。

9 option  time-offset :指定客户端对 UTC 的时间偏移。

10 range  dynamic-bootp :地址池 IP 范围。

11 default-lease-time :默认 IP 地址租约时间。

12 max-lease-time :客户端 IP 租约时间的最大值。

13 host  client :定义保留客户端地址。

    Hardware  ethernet :网卡 MAC 地址。

    Fixed-address :保留的 IP 地址。

 

3. 客户端租用 IP 地址的信息都会存放到租约数据库,可以使用命令: cat  /var/lib/dhcpd/dhcpd.leases 查看租约数据库信息。注意,刚安装好的租约数据库是空的,需要 DHCP 服务器运行,有客户端使用后才有数据记录。

 

4. 客户端配置:

1 Windows 客户端的配置就不用多说了,地球人都知道,可以使用命令 ipconfig  /renew 刷新地址;

2 )配置 linux 客户端

# vi  /etc/sysconfig/network-.s/ifcfg-eth0

BOOTPROTO=none 改为 BOOTPROTO=dhcp

使用命令: # ifdown eth0; ifup eth0 重启网卡。

OK ,客户端可以使用 DHCP 获取 IP 地址了。

 

三、多作用域及中继代理配置

接下来,我们再来看看多作用域和中继代理的配置,还是通过一个实例来说明。某公司有两个子网 192.168.99.0/24 192.168.100.0/24 192.168.100.0/24 网段使用中继代理服务器。

1. 多作用域配置

这种情况在做了 Vlan 的网络中,经常需要,这里我们在 DHCP 服务器上安装了两块网卡,连接两个子网,如果有三层交换机就不需要多个网卡,不过 DHCP 服务器的配置是一样的,只是需要多配置三层交换机。

我们可以使用 ifconfig 来查看网卡的使用情况:

服务器的配置如下图:

2. 中继代理配置

中继代理计算机也需要安装 dhcp-3.0.5-18.el5.i386.rpm 软件包,默认情况下,中继代理计算机不转发客户端的请求,需要使用命令 dhcrelay 命令指定 DHCP 服务器后,才做转发。如下图:

 

四、 DHCP 服务器的安全

如果网络中只有一台 DHCP 服务器,一旦该服务器出现故障,那么网络中所有的客户端都将无法获得 IP 地址,整个网络将陷入瘫痪状态。为了避免这种情况的发生,我们必须要考虑使用双击备份。

在做双机备份时, 采用 80/20 规则划分 DHCP 服务器的作用域,主服务器管理 80% 的网络 IP 地址,辅助服务器管理 20% 的网络 IP 地址。日常工作中,分配 TCP/IP 信息由主 DHCP 服务器完成,在主服务器不可用时,辅助 DHCP 服务器才开始工作。

双击备份 DHCP 服务器的方法跟上面讲的配置方法一样,只是在划分地址池的时候,把 80% 的地址给主服务器划分, 20% 的地址给辅助服务器划分。我们继续拿第一个实例来说明,在第一个实例中加入一台辅助 dhcp 服务器,那么主 DHCP 服务器配置如下:

辅助 DHCP 服务器配置如下:

 

五、管理监控 DHCP 服务器

DHCP 的配置非常简单,不过,对于一些习惯使用图形的兄弟,可能觉得还是有些抽象。不过,还好,我们有办法解决,可以使用 gadmin-dhcpd 这款程序,配置一个图形化的操作界面。下面我们就来看看具体的操作方法:

1. 环境检查

gadmin-dhcpd 需要 GCC Qt gtk+ 等软件的支持,可以使用命令 rpm -qa|grep gcc; rpm -qa|grep qt; rpm -qa|grep gtk 来检查系统中是否安装了这些程序。

一般来讲, GCC Qt 系统会默认安装,只是 GTK+ 系统不会默认安装,如上图,我的系统就没有安装 GTK+ ,下面我们就来看看 GTK+ 的安装方法:

2. 安装支持软件 GTK+

1 GTK+ 需要以下几种软件支持,才能安装:

glib-2.12.10.tar.gz  (下载地址: ftp://ftp.gtk.org/pub/glib/2.12/

atk-1.10.1.tar.gz  (下载地址: ftp://ftp.gtk.org/pub/gtk/v2.8/

freetype-2.3.9.tar.gz  (下载地址: http://sourceforge.net/projects/freetype

fontconfig-2.4.2.tar.gz  (下载地址: http:// www.fontconfig.org/release/

cairo-1.4.12.tar.gz  (下载地址: http://cairographics.org/releases/

pango-1.14.10.tar.gz  (下载地址: ftp://ftp.gnome.org/pub/GNOME/sources/pango

libpng-1.2.10.tar.gz  (下载地址: http://www.libpng.org/pub/png/libpng.html

gtk+-2.10.12.tar.gz  (下载地址: ftp://ftp.gtk.org/pub/gtk/v2.10/

2 )设定环境变量

为了在安装过程中,能找到相应的库进行编译,首先建立两个环境变量。步骤如下:

# export  LD_LIBRARY_PATH=/usr/local/lib

# export  PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

3 )安装 glib

# tar  zxvf  glib-2.12.10.tar.gz

# cd  glib-2.12.10

# ./configure

# make

# make  uninstall

# make  install

4 )安装 atk

# tar  zxvf  atk-1.10.1.tar.gz

# cd  atk-1.10.1

# ./configure

# make

# make  install

5 )安装 freetype

# tar  zxvf  freetype-2.3.9.tar.gz

# cd  freetype-2.3.9

# ./configure

# make

# make  install

6 )安装 fontconfig

# tar  zxvf  fontconfig-2.4.2.tar.gz

# cd  fontconfig

# ./configure

# make

# make  install

7 )安装 cairo

安装方法,同上。

8 )安装 pango

安装方法,同上。

9 )安装 libpng

安装方法,同上。

10 )安装 gtk+

安装方法,同上。

3. 安装 gadmin-dhcpd 软件

下载地址: http://mange.dynalias.org/linux/gadmin-dhcpd/
# tar  zxvf  gadmin-dhcpd-0.4.2.tar.gz

# cd  gadmin-dhcpd

# ./configure

# make

# make  install

4. 使用 gadmin-dhcpd 软件

在命令行中输入: /usr/local/sbin/gadmin-dhcpd ,就可以看到图形化的 dhcp 配置界面了:

图形化的配置环境设置完成,这样,是不是很方便?

OK DHCP 服务器到此部署完成。