一.实验要求:
配置DHCP服务器,为子网A内的客户机提供DHCP服务,具体网络参数如下:
--IP地址段:192.168.1.101-192.168.1.200
--子网掩码:255.255.255.0
--网关地址:192.168.1.1
--域名服务器:192.168.1.1
--子网所属域的名称:ncie.org
--默认租约有效期:1天
--最大租约有效期:3天
二.实验目的:
通过实验,学生可以熟悉Linux环境下DHCP的配置方法,并学会自己独立配置一台DHCP服务器。
三.实验准备:
配置文件:
(1)、了解配置的过程中所需要的文件及每一个文件的作用。
主要文件
默认安装的DHCP软件是没有/etc/dhcpd.conf文件的。
[root@rh9 test]# rpm -ql dhcp
文件来源
/etc/dhcpd.conf //dhcp的主配置文件
/usr/share/doc/dhcp-3.0pl1/dhcp-2.0/dhcpd.conf.sample
//主配置文件的模板
/var/state/dhcp/dhcpd.leases //租约文件 管理员创建
注意:在默认的情况下,/etc/dhcpd.conf 主配置文件不存在,需要手工复制/usr/share/doc/dhcp-3.0pl1/dhcp-2.0/dhcpd.conf.sample 模板。
4. 实验步骤:
(1)、为DHCP服务器配置IP地址
[root@rh9 test]# ifconfig //查看是否有静态IP
[root@rh9 test]#ifdown eth0 //屏蔽网卡
[root@rh9 test]#netconfig //进入图形界面配置
[root@rh9 test]#ifup eth0 //激活网卡 |
(2)、查看是否安装软件包
[root@rh9 test]#rpm –qa |grep dhcp |
如图所示则不需要第三步,否则进行安装软件包。
(3)、安装软件包
把第二张光盘放入光驱
[root@rh9 test]#mount /dev/cdrom /mnt/cdrom [root@rh9 test]#cd /mnt/cdrom/RedHat/RPMS [root@rh9 test]#rpm -ivh dhcp-2.0pl5-8.i386.rpm |
(4)、创建配置主文件
[root@rh9 test]#cd /usr/share/doc/dhcp-3.0pl1
[root@rh9 test]# cp dhcp.conf.sample /etc/dhcp.conf |
(5)、配置DHCP服务器
1、为服务器自身设置静态IP地址
[root@rh9 test]#cd /etc/sysconfig/network-scripts
[root@rh9 test]#vi ifcfg-eth0 //编辑目录脚本文件ifcfg-eth0, 内容如下: DEVICE="eth0" IPADDR="192.168.1.10" NETMASK="255.255.255.0" ONBOOT="yes" BOOTPROTO="none" |
2、编辑/etc/sysconfig/network文件,内容如下:
[root@rh9 test]# vi /etc/sysconfig/network
NETWORKING=yes HOSTNAME="dhcpserver.ncie.org" GATEWAY="192.168.1.10" GATEWAYDEV="eth0" |
3、启动TCP/IP网络
[root@rh9 test]# service network restart |
4、添加路由表:为确保Windows的DHCP客户端能够使用服务器,先要把地址255.255.255.255加入到服务器的路由表里,但有时不能解析,所以先要为255.255.255.255配置一个主机名
在/etc/hosts文件中加入如下一行,为广播地址设置主机名dhcp
255.255.255.255 dhcp
[root@rh9 test]#vi /etc/hosts 内容如下:
255.255.255.255 dhcp |
再把广播地址加入路由表
[root@rh9 test]#route add –host dhcp dev eth0 |
5、编辑/etc/dhcpd.conf文件,内容如下:
[root@rh9 test]#vi /etc/dhcpd.conf //编辑内容如下:
subnet 192.168.1.0 netmask 255.255.255.0 //声明子网为192.168.1.0/24 default-lease-time 86400; max-lease-time 259200; option routers 192.168.1.1; option subnet-mask 255.255.255.0; option domain-name "ncie.org"; option domain-name-servers 192.168.1.1; { range 192.168.1.101 192.168.1.200; } |
6、建立租约数据库文件
[root@rh9 test] #touch /var/state/dhcp/dhcpd.leases |
7、启动DHCP服务器
[root@rh9 test]# service dhcpd start |
8、检测一下是否正常启动
使用ps命令检查dhcpd进程:
[root@rh9 test]# ps -ef | grep dhcpd root 2402 1 0 14:25 ? 00:00:00 /usr/sbin/dhcpd root 2764 2725 0 14:29 pts/2 00:00:00 grep dhcpd |
[root@rh9 test]# netstat -utl 出现bootps说明正常
使用检查dhcpd运行的端口:
[root@rh9 test]# netstat -nutap | grep dhcpd udp 0 0 0.0.0.0:67 0.0.0.0:* 2402/dhcpd |
配置客户端
Linux 客户端
1、安装DHCP客户端软件
把第一张光盘放入光驱
[root@rh9 test]# mount /dev/cdrom /mnt/cdrom
[root@rh9 test]# cd /mnt/cdrom/RedHat/RPMS
[root@rh9 test]# rpm -ivh dhcpcd-1.3.22pl1-7.i386.rpm
[root@rh9 test]# cd;umount /mnt/cdrom |
2、配置网卡,编辑/etc/sysconfig/network-scripts, 目录脚本文件ifcfg-eth0内容如下:
[root@rh9 test]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0" ONBOOT="yes" BOOTPROTO="dhcp"
|
启动网络接口
[root@rh9 test]# ifup eth0 |
3、检测配置,查看/etc/dhcpcd/dhcpcd-eth0.info文件,看是否得到相关的配置
windows 客户端
把IP地址设置为自动获取,再在开始菜单下启动cmd
C:\> ipconfig /all
到此为止,一个简单的DHCP服务器配置成功。
如果要为某一台主机配置保留IP时,只需在subnet 后加入host段,内容如下:
[root@rh9 test]#vi /etc/dhcpd.conf //编辑内容如下:
subnet 192.168.1.0 netmask 255.255.255.0 //声明子网为192.168.1.0/24 default-lease-time 86400; max-lease-time 259200; option routers 192.168.1.1; option subnet-mask 255.255.255.0; option domain-name "ncie.org"; option domain-name-servers 192.168.1.1; { range 192.168.1.101 192.168.1.200; }
host ncie { // ncie主机名 hardware ethernet 00:50:BA:CA:2E:D2; //网卡MAC地址 fixed-address 192.168.1.120; //保留IP } #给客户机ncie分配一个永久的IP 192.168.1.120 |
配置DHCP中继代理
实验要求:
配置DHCP服务器和中继代理,使子网A内的DHCP服务器能够同时为子网A和子网B提供DHCP服务,为子网A内的客户机分配的网络参数同上,为子网B内的主机分配的网络参数如下:
--IP地址段:192.168.10.101-192.168.10.200
--子网掩码:255.255.255.0
--网关地址:192.168.10.1
--域名服务器:192.168.10.1
--子网所属域的名称:ncie.org
--默认租约有效期:1天
--最大租约有效期:3天
实验步骤:
在路由器上配置DHCP中继代理
1、在路由器端安装DHCP服务器端软件包
2、启动DHCP中继代理
#dhcrelay -i eth2 192.168.1.10 为eth2连接的子网B中继代理192.168.1.10
3、测试中继代理是否成功
#netstat -utl|grep bootps 有相关信息表示成功
DHCP服务器端配置
1、编辑/etc/dhcpd.conf文件,内容如下:
shared-network ncie.org{
default-lease-time 86400;
max-lease-time 259200;
option domain-name "ncie.org";
subnet 192.168.1.0 netmask 255.255.255.0{
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.1.1;
range 192.168.1.101 192.168.1.200;
}
subnet 192.168.10.0 netmask 255.255.255.0{
option routers 192.168.10.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.10.1;
range 192.168.10.101 192.168.10.200;
}
2、重启DHCP服务
#service dhcpd restart
客户端配置与测试
在子网B的客户机上查看/etc/dhcpcd/dhcpcd-eth0.info文件,看是否得到相关的配置
配置方案:
/etc/dhcpd.conf IP分配主配置文件
l 作用:
包含了许多配置命令,既有针对服务器的,也有针对客户机的。它可以利用动态IP 分配技术来管理整个子网,也可以根据静态IP分配技术来对其中某台客户机进行管理。
l 实例:
option domain-name "mycompany.com";
#定义DHCP服务器的域名
option domain-name-servers 192.168.10.1;
#定义DNS的服务器地址
option subnet-mask 255.255.255.0;
#定义子网掩码,如果不定义该选项,则使用Subnet命令中的子网掩码
default-lease-time 1200;
#如果客户端不能请求一个指定的租用期,就使用该参数来定义该地址租用的时间长度
max-lease-time 87600;
#用来指定租用的最长时间,尽管租用的时间长度是根据客户端的请求决定的。
subnet 192.168.10.0 netmask 255.255.255.0
#指定子网的网段和子网的掩码
{
range 192.168.10.2 192.168.10.110
#指定子网的IP范围
option broadcast-address 192.168.10.255;
#指定子网的广播地址
option routers 192.168.10.1;
#指定路由器的IP
}
host fantasia {
hardware ethernet 00:50:BA:CA:2E:D2;
fixed-address 192.168.1012;
}
#给客户机分配一个永久的IP
l 测试及管理方法
a) 管理员修改完配置文件之后需要执行/etc/rc.d/init.d/dhcpd restart
来使更改生效。
b) 在Windows 98的客户端,用户需要将TCP/IP配置成为自动搜索IP。
c) 在Windows 98的客户端可以运行winipcfg来动态申请IP。
d) 管理员可以通过查看/var/state/dhcp/dhcpd.leases文件来监督IP资源的分配情况。
DHCP的配置十分的简单。在一定程度上是这样的,因为我向大家介绍的是一台主服务器带一个子网,这是最简单的一种网络拓扑结构,要是更加复杂的多子网情况,那配置起来就要更加麻烦一点,这就需要为每个子网配置一个中继代理(dhcrelay),它的文档在Linux中都可以找到,一看就能明白了。
五.实验总结:
通过本次实验,学生可能感觉到配置DHCP十分的简单。在一定程度上是这样的,因为这次实验是一台主服务器带一个子网,这是最简单的一种网络拓扑结构,要是更加复杂的多子网情况,那配置起来就要更加麻烦一点,这就需要为每个子网配置一个中继代理(dhcrelay)。它也包含在本次实验中,一看就能明白了。
本文出自 “论落天涯” 博客,谢绝转载!