Linux
操作系统已经在企业中得到广泛应用,
Red Hat5
在企业中的应用也逐渐取代
Red Hat4
,成为当今企业中应用最多的操作系统之一。它致力于解决以
Internet
为中心的服务应用及企业中服务的应用,特别是在网站以及安全方面,已经体现出明显的优势。
在后序的时间里,我将会与各位
Linux
发烧友们,共同探讨红帽子企业版
5
的常见应用,其中包括
DHCP
服务、使用
samba
构建的文件服务器、使用
vsftpd
构建的文件传输服务器、使用
bind
构建的
DNS
服务器、构建
Linux Apache PHP MySQL
协同服务的企业网站应用平台以及邮件系统。
当局域网中有大量的主机时,如果逐台设置
IP
地址、默认网关、
DNS
等网络参数,显然是一个费力也未必讨好的办法;而使用
DHCP
方式,能够动态配置各客户机的网络地址参数,大大减轻了管理与维护的成本。这就是我们今天要说的
DHCP
服务。本次我们以下面的拓扑图为例,来看一下基于
Red Hat5
平台下的
DHCP
服务器及
DHCP
中继是如何搭建和配置的。拓扑如下:
可以看到在局域网中有三个网段:
192.168.1.0/24
、
192.168.2.0/24
、
192.168.3.0/24
,
DHCP
服务器位于
LAN1
,
IP
是
192.168.1.2/24
,网关为
192.168.1.1
;
DHCP
中继服务器(网关服务器)接口
Eth0
的
IP
是:
192.168.1.1/24
,接口
Eth1
的
IP
是:
192.168.2.1/24
,需要为网段为
192.168.2.0/24
的
LAN2
提供中继服务;接口
Eth2
的
IP
是:
192.168.3.1/24
,需要为网段为
192.168.3.0/24
的
LAN3
提供中继服务。
第一部分:配置DHCP
服务器
1.
安装
DHCP
服务器软件
下面简单的概括了
DHCP
软件包中一些常用的文件:
/etc/dhcpd.conf
是
DHCP
服务器的主配置文件;
/etc/rc.d/init.d/dhcpd
是
DHCP
服务启动脚本;
/etc/rc.d/init.d/dhcrelay
是
DHCP
中继服务启动脚本
/etc/sysconfig/dhcpd
是
DHCP
命令参数配置文件;
/usr/sbin/dhcpd
是
DHCP
服务器执行程序;
/usr/sbin/dhcrelay
是中继服务器执行程序;
/var/lib/dhcpd/dhcpd.leases
是
DHCP
服务器租约文件。
2.
配置主配置文件
dhcpd
服务的主配置文件位于“
/etc/dhcpd.conf
”,但是该文件中默认并不包含任何有效配置,需要手动建立,我们可以从
/usr/share/doc/dhcp- 3.0.5 /dhcpd.conf.sample
里拷贝一个配置范本。如图:
下面看到的就是主配置文件的范本,在主配置文件
dhcpd.conf
中,包括声明、参数和选项三种基本类型的配置项,其中声明用来描述
dhcp
服务器中对网络布局的划分,是网络设置的逻辑范围。参数由配置关键字和对应的值组成,多用来确定
DHCP
服务的相关运行参数;选项由
option
引导,后面跟具体的配置关键字和对应的值,一般用于指定分配给客户端的配置参数。
配置
DHCP
服务器时我们可以通过修改
/etc/dhcp.conf
文件来实现目的。在修改之前我们先来对这个文件中的配置信息做一个全面的了解,所谓磨刀不误砍柴工。
首先是
dhcp.conf
文件中的全局配置,全局配置指不包括在任何声明中的参数或选项,顾名思义它作用于整个
dhcpd
服务器。当某个声明中存在与全局配置部分相同的参数或选项时,在该声明作用的范围内将不采用全局配置部分设置的值。常用的几个全局配置参数和选项如下:
Ddns-update-style,
动态更新模式;
default-lease-time,
默认租约时间。
max-lease-time,
最大租约时间
;option domain-name,
默认搜索区域;
option domain-name-server,DNS
服务器地址。
其次,使用
subnet
声明设置子网属性,
Subnet
是
dhcpd.conf
文件中最常用的声明,用于在某个子网中设置动态分配的地址和相关网络段属性,
subnet
声明中可包括其他的参数和选项。声明
subnet
子网属性时,通常需要设置的部分如下:使用
subnet
关键字指定子网的网络地址,
netmask
关键字指定子网掩码;使用
range
参数指定用于动态分配的
IP
地址范围;使用
option subnet-mask
选项指定为客户机分配的子网掩码地址;使用
option routers
选项指定为客户机分配的默认网关地址。
最后就是使用
host
声明设置主机属性。
Host
声明用于设置单个主机的网络属性,通常用于为其它服务器分配固定的
IP
地址(保留地址)。
Host
声明可以独立使用,也可放在某个
subnet
声明中。声明
host
主机属性时,通常需要设置的部分如下。使用
host
关键字指定需要分配保留地址的
DHCP
客户机名称;使用“
hardware Ethernet
”参数指定匹配主机的
MAC
地址;使用“
fixed-address
”参数指定对应的保留
IP
地址。
明白了上面所说的之后,是不是觉的这个文件看起来没有刚开始那么头大了啊。说是说了这么多,但实际工作中是用不着的,只想让大家更明白一些。下图就是根据拓扑中的网段数量配置出的三个作用域。
可以看到,默认租约时间和最大租约时间以及
DNS
都被放在了全局配置中,这样可以降底配置的复杂性。
配置好之后,启动
dhcpd
服务,这台
DHCP
服务器就开可以开始工作了。
在这里需要向大家说一下命令参数配置文件
/etc/sysconfig/dhcpd
,默认情况下,
DHCP
服务器将面向可用的多个网络接口同激发开放服务,但有的公司会将可能会将
DHCP
服务器和防火墙跑在一台服务器上,这时,如果只需要在其中一个网络接口上提供服务,可以修改
/etc/sysconfig/dhcp
文件,使用“
DHCPDARGS=
”配置行指定参数即可。
第二部分:配置DHCP
中继
DHCP
中继在大公司中不建议跑在
linux
服务器上,当然用别的服务器兼职也是可以的。当
vlan
较多时三层交换是首选。那么对于中小型企事业而言,用别的服务器兼职
DHCP
中继,就在好不过了。下面是配置中继的步骤:
1.
开启服务器的路由转发功能
注意开启服务器的路由转发功能之前,需安装
DHCP
服务,然后编辑
/etc/sysctl.conf
文件,将“
net.ipv4.ip_forward”
配置项的值改为
1
,如图:
执行“
sysctl �Cp
命令,使修改生效。
2.
设置允许
DHCP
中继数据的接口及
DHCP
服务器的
IP
地址
编辑文件“
/etc/sysconfig/dhcrelay”,
分别设置“
INTERFACE
”、“
DHCPSERVERS
”配置项。
此处因为
DHCP
中继服务器需要为三个网段提供中继服务,所以添加了三个接口信息。
3.
启动
dhcrelay
中继服务程序,并设置
dhcrelay
服务为自动启动,如图:
通过上面的配置,现在我们分别来使用三个
LAN
中的主机测试
.
下面是
LAN1
中的主机获到的网络参数(注意:
LinuxDHCP
服务器不同于
Windows
,它分配置
IP
时是从大到小)
LAN2
中的主机获到的网络参数:
LAN3
中的主机获到的网络参数:
最后就是需要注意的地方,在启动
dhcpd
服务之前,应确认提供
DHCP
服务器的网络接口具有静态指定的
IP
地址,并且到少有
1
个网络接口的
IP
地址与
DHCP
服务器中的
1
个
subnet
网段相对应。另外,
DHCP
服务器一般只会用来给客户机分发网络参数。虽然它也可以将
MAC
地址和
IP
地址绑定起来,使一些对象获得固定的
IP
,但并不适合给其它服务器分发网络参数。在企业中,服务器的
IP
最好使用静态的。