本专题实验目的:使大家轻松掌握RHEL5.2下DHCP服务器的常见应用:
一、单作用域DHCP服务器配置;
二、单服务器双网卡两网段DHCP双作用域配置;
三、DHCP中继服务的应用;
四、在路由器上启用DHCP中继代理服务实验(实用);
五、DHCP超级作用域;
一、单作用域DHCP服务器配置
1.创建实验环境:
2.修改虚拟机参数配置:
3.启动虚拟机进行相应的系统配置,以下是我对Windows-Client客户机的配置,大家了解:
4.DHCP-Server虚拟机基本系统参数配置(如主机名,IP地址,hosts文件解析):
(1)在Linux平台,我们都应当学会使用命令来进行系统配置,这是必须掌握的:
看图操作,打开命令行终端,进行命令配置:
(2)DHCP-Server虚拟机主机名临时配置:
hostname:查看当前计算机的主机名;
hostname DHCP-Server.itly.com:修改当前计算机的主机名为DHCP-Server.itly.com,但使用这个命令修改,系统重启后变会恢复成起初的设置,如果想永久生效还得修改“/etc/sysconfig/network”文件;
clear:清屏命令;
(3)DHCP-Server虚拟机主机名永久配置:
①vi /etc/sysconfig/network:使用vi编辑器对“/etc/sysconfig/network”这个文件进行编辑,vi大家也必须要熟练掌握基本用法,了解;
②使用vi编辑器打开文件后,我们看到目前系统的主机名是原来的主机名,因此我们要进行修改,我简单说一下,在vi编辑器中将光标移到文件要修改处,按下键盘小写“i” 键就可以开始进行编辑,当然也有其他命令,大家先掌握一个简单的再说:
③主机名修改完成,我们就应当保存文件,将刚才的设置保存下来:
下面简单介绍一下在vi编辑器中如何保存文件:
就简单的就是在当前状态下连按两下“ESC”键进入vi的命令行模式,然后输入“:wq”保存文件并退出vi编辑器,如下图所示:
(4)cat /etc/sysconfig/network:查看“/etc/sysconfig/network”配置文件的内容:
(5)下面我注销一下当前用户,使刚才的配置起作用,大家可以从命令行终端上的标题中看出变化,大家了解:
(6)ifconfig:查看linux系统网卡情况;
根据结果可知,linux系统目前eth0(第一块网卡)的IP(IPv4)地址目前是没有的,因此后面我们要给其配置IP地址,因为作为服务器我们一般必须要有一个静态的IP地址,了解:
(7)eth0网卡IP地址配置,看图操作:
cat /etc/sysconfig/network-scripts/ifcfg-eth0:查看eth0的配置文件;
vi /etc/sysconfig/network-scripts/ifcfg-eth0:编辑eth0的配置文件,配置IP地址等相应参数;
根据截图我们可知,我系统eth0网卡原来配置的是dhcp方式动态获得IP地址,后来我将其配置为static方式静态指定IP地址,只是简单的配置了一下IP地址
(192.168.30.30)与子网掩码(255.255.255.0):
(8)使刚才的配置生效,如图所示,方法不一,因人而异:
ifdown eth0:禁用eth0网卡;
ifup eth0:启用eth0网卡,通过禁用和启用eth0网卡使刚才的eth0配置文件生效;
ifconfig eth0:查看eth0网卡的信息,我们可以发现刚才的配置已经生效了;
(9)hosts文件配置,配置主机名对应相应IP地址,配置完成后简单的用ping命令进行测试,大家了解:
5.DHCP-Server虚拟机DHCP服务的安装:
(1)rpm –qa:查询系统安装的所有软件包;
rpm –qa | grep dhcp:查询系统安装dhcp服务软件包的情况,结果显示目前系统只安装了一个IPv6版的dhcp客户端软件包,其他的都没有安装,因此后面要进行相关软件包安装操作;
mount /dev/cdrom /mnt:将光驱挂载到/mnt目录下,结果显示目前没有媒介用于挂载,大家了解:
(2)出现上面情况的原因是光驱没有被“Connected”,因此我下面将系统镜像放入光驱并“Connected”,然后单击“OK”进入后面操作:
(3)挂载光驱并安装服务:
rpm –ivh /mnt/Server/dhcp-3.0.5-13.el5.i386.rpm:安装DHCP服务软件包;
dhcp-3.0.5-13.el5.i386.rpm:这是DHCP主程序包,包括DHCP服务和中继代理程序,安装该软件包进行相应配置,即可以为客户机动态分配IP地址及其他TCP/IP信息;
(4)rpm –ql dhcp:查询刚才安装的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服务器租约文件。
6.DHCP-Server虚拟机DHCP服务的配置:
(1)rpm –ql dhcp | more:分屏查看刚才的信息,大家了解;
(2)cat /etc/dhcpd.conf:查看DHCP服务的主配置文件dhcpd.conf,结果发现其中没有内容,只有注释,当然大家可以手动写这个配置文件进行相应的DHCP配置,但我一般是使用配置文件模板进行修改而配置的,大家了解;
“/usr/share/doc/dhcp*/dhcpd.conf.sample”:这个便是一个DHCP配置文件模板;
下面我使用cp命令将模板文件内容替换原来的DHCP主配置文件dhcpd.conf的内容,看图操作:
(3)再次查看DHCP服务配置文件,这便是一个简单的模板配置文件内容:
关于DHCP服务配置文件的详解,大家可以网上查找相关资料了解,当然最好是看书,我曾向大家推荐过服务器配置的参考书(Linux服务器配置全程实录),大家了解:
不过我会在具体配置时介绍具体的应用,虽不会特别深入但够用,不然就会有点主次不分了:
(4)grep –v [#] /etc/dhcpd.conf:查看/etc/dhcpd.conf文件中所有不包括“#”的行的内容,大家了解:
(5)grep –v [#] /etc/dhcpd.conf | grep –v ^$:查看/etc/dhcpd.conf文件中所有不包括“#”的行和空行的内容,大家了解:
(6)配置dhcpd.conf文件介绍:
ddns -update-style interim:指定支持的DNS动态更新方式;
ignore client-updates:忽略客户更新设置;
一般上述两项设置我们都保持默认,它们是属于全局设置:
subnet 192.168.30.0 netmask 255.255.255.0 {}:DHCP作用域配置,设置作用域的网段为192.168.30这个网段;
option subnet-mask 255.255.255.0:选项设置,指定客户端子网掩码,这里它放在作用域里,属于作用域选项,如果放在全局设置,就属于服务器选项,这点大家了解;
range dynamic-bootp 192.168.30.100 192.168.30.200:设置作用域可分配给客户端的IP地址范围;
不管是单作用域还是多作用域在定义时应该注意以下几点(引用“linux服务器配置全程实录一书”):
①必须在租给客户机IP地址前创建作用域;
②每个DHCP服务器中至少应有一个作用域,为一个网段分配IP地址;
③在一台DHCP服务器内,一个子网只能有一个作用域;
④在定义作用域时不能只单独使用声明subnet,至少需要使用option subnet-mask定义子网掩码,range定义可用的IP地址范围;
⑤在同一个作用域内可以指定多个可用的IP地址范围(用多个range指定),这主要是用在一个子网内可用的IP地址不连续时,比如可用IP地址192.168.0.20~192.168.0.50及192.168.0.80~192.168.0.200;
service dhcpd start:启动DHCP服务,如果配置文件不正确系统便会提示相应的错误信息并且启动不了服务,大家了解:
(7)在Windows-Client虚拟机中测试,结果显示一切成功并且也是有默认租约时间的:
我们可以发现Linux系统的DHCP服务器作用域IP地址分配默认是由大到小分配的,而Windows系统的DHCP服务器则是相反的,大家也了解:
(8)下面在Linux-Client虚拟机中测试,因为默认这台虚拟机的网卡配置我没作修改,所以它目前就是dhcp方式自动获取IP地址,大家了解,测试结果也是正常:
(9)下面我使用“init 3”进入linux系统黑底白字的终端,进行简单的测试,如果大家喜欢在这种界面下操作系统,可以修改“/etc/inittab”文件,将系统启动运行模式由“5(图形界面)”改为“3(命令行界面)”并保存,那么以后系统启动便不会进入图形界面;
大家可能经常看到许多高手的教程是在黑黑的屏幕下操作命令,有时颜色鲜艳,觉得很好玩,也想如此,所以我就简单介绍了一下,因为我是要制作教程,还是图形界面用起来好控制截图,所以我就不去使用那个黑底白字的界面了,大家了解:
看图操作理解:
(10)再次配置dhcpd.conf主配置文件:
option routers 192.168.30.1:设置作用域网关IP地址;
option domain-name “itly.com”:设置作用域中客户机的DNS域名;
option domain-name-servers IP地址:设置作用域中DNS服务器的IP地址;
default-lease-time 43200:设置默认租约时间,单位是秒;
max-lease-time 86400:设置最大租约时间,单位也是秒;
保留配置,希望让某些特定客户端得到一个特定的IP地址:
host 主机名 {
hardware 网卡类型MAC地址;
fixed-address IP地址;
}
(11)service dhcpd status:查看dhcpd服务的当前状态;
service dhcpd restart:重启dhcpd服务,只是临时性质重启,大家了解;
chkconfig dhcpd -- list:查看dhcpd服务在各个系统运行级别上的配置情况;
chkconfig dhcpd on:在相应级别开启dhcpd服务,以后系统启动,只要运行在相应级别,则dhcpd服务自动运行,大家了解;
以上配置因人而异,关于Linux的基础学习我也向大家推荐过两本书:一本“鸟哥的Linux私房菜基础第三版”(有一定难度,要耐心)和一本“Linux培训教程——从实践中实习Linux”(何明老师的,个人觉得非常适合初学者),感兴趣的读者可以去参考:
(12)客户端再次测试,结果显示配置成功,一个相对实用的单作用域DHCP服务器配置就算介绍完成:
二、单服务器双网卡两网段DHCP双作用域配置
1.创建实验环境,这里我在一个网段只添加一台虚拟机进行简化实验,具体环境搭建参见前面的详细步骤,大家明白:
2.修改虚拟机的参数配置:
3.启动DHCP-Server虚拟机,进行相应的系统配置:
①看图操作:
②通过ifconfig命令,我们可以看出目前我的虚拟机网卡的信息,其中eth0是前面配置好的,而eth1网卡是才新添加的,还没进行配置,所以目前没有IP地址,了解:
③配置eth1网卡,如图所示:
④通过禁用启用eth1网卡操作使用刚才的配置生效并进行相应的查看:
⑤修改dhcpd.conf配置文件,进行两个作用域配置示例,其中第二个作用域我使用了两个range进行IP地址排除,大家了解:
配置完成,启动服务进行后面验证:
4.Windows-Client虚拟机进行测试,测试结果如下:
5.Linux-Client测试结果如下:
cat /etc/resolv.conf:其中/etc/resolv.conf文件是指定DNS服务器的配置;
通过查看,我们发现,系统是正确获得DHCP服务器提供的信息:
6.DHCP服务器租约文件介绍,了解:
①简单查看一下租约文件,因人而异:
②修改租约文件,只保留一条记录信息,再启动DHCP服务,如图所示:
③我们在Linux-Client虚拟机中使用“service network restart”命令重启网络服务来重新获取IP地址,如图所示:
④再次查看租约文件,大家了解:
7.有关这一小节的就介绍这些,一般这种方案我们很少使用,大家了解:
三、DHCP中继服务的应用
1.根据实验拓扑图创建实验环境:
2.修改虚拟机参数配置使之符合实验要求:
3.启动虚拟机进行相应的系统参数配置:
4.DHCP-Server虚拟机的配置:
(1)网卡配置,如图所示:
因为这台虚拟机是使用前面实验的虚拟机的,所以IP地址和DHCP服务已有,又因为本次实验需要跨网段通信,所以我要为此虚拟机配置网关,大家了解:
(2)修改网卡配置文件后,通过禁用启用网卡使其生效并进行查看:
route –n:我们可以使用此命令查看网关的配置信息,大家了解;
(3)配置DHCP服务器dhcpd.conf配置文件:
这里我配置了两个作用域,一个30网段给VMnet3网段的虚拟机分配IP地址;一个40网段给VMnet4网段的虚拟机分配IP地址,因为这台服务器只有一个网卡并且在30网段,所以40网段的计算机是不能获取IP地址的,因此后面要使用DHCP中继代理进行问题的解决,大家了解:
5.Router虚拟机配置:
(1)虚拟机的网卡配置,如图所示:
(2)service network restart:重新启动网络服务使刚才的配置生效,大家明白:
echo “1”/proc/sys/net/ipv4/ip_forward:临时开启虚拟机各网卡之间的数据包转发功能,即LAN路由功能,将此虚拟机作为路由器,大家了解:
6.DHCP-Relay-Server虚拟机配置:
(1)eth0网卡配置,网关很重要,了解:
(2)ping 192.168.30.30:测试网络配置是否正确,经测试网络通信正常,大家了解:
7.补充知识,了解:
(1)修改“/etc/sysctl.conf”配置文件中的“net.ipv4.ip_forward”的值为“1”,使此虚拟机的LAN路由功能永久配置,大家了解:
(2)sysctl –p:使刚才的配置立时生效,大家了解:
8.DHCP-Relay-Server虚拟机DHCP中继配置:
(1)放入系统镜像,需要安装软件,了解:
(2)挂载光驱,安装DHCP服务软件,如图所示:
(3)修改“/etc/sysconfig/dhcrelay”配置文件,设置DHCP中继配置,并启动中继服务:
INTERFACES:指定DHCP中继要进行服务的网络接口(网卡),为空则表示默认所有接口;
DHCPSERVERS:指定此DHCP中继服务要向那台DHCP服务器申请IP地址的那台DHCP服务器的IP地址;
chkconfig --level 35 dhcrelay on:在运行级别35上启动dhcrelay服务,其他的大家也都了解:
9.查看DHCP-Server虚拟机中DHCP服务器的配置情况并启动DHCP服务,后面进行测试:
10.测试结果如下图所示,通过截图我们可以发现实验成功完成,一切都没问题,大家了解:
一般这种方案我们很少使用,如果一个网段一台DHCP中继服务器,那真是太浪费资源了,一般采用的是下一种方案,大家明白:
四、在路由器上启用DHCP中继代理服务实验(实用)
1.根据实验拓扑图创建实验环境:
2.修改虚拟机参数配置:
3.启动虚拟机进行相应的配置:
4.DHCP-Server虚拟机配置:
(1)网络参数配置,如图所示:
(2)DHCP服务器配置,一般大中型企业DHCP服务器的配置与此大同小异,大家灵活应用:
配置完成并启动服务:
5.Router-DHCP_Relay虚拟机配置:
(1)Router-DHCP_Relay虚拟机相应网卡IP地址信息配置,大家看图理解:
tail -2 网卡配置文件:是查看网卡配置文件最后两行信息的命令,因为排版需要所以就简示了,大家应当会详细配置具体细节,与前面介绍的是一样,了解:
(2)启动网络服务使刚才的配置生效并开启路由功能,大家了解:
(3)简单测试一下前面的网络配置,结果正常,大家了解:
(4)放入系统镜像光盘:
(5)挂载光驱并安装DHCP服务然后再进行DHCP中继服务配置,最后再启动中继服务,如图所示:
6.测试本次实验,下面截图表明实验是成功的,大家了解:
7.关于本节实验就介绍完成,大家多体会一下,一般DHCP中继服务器在企业中大多是采用路由器或交换机等硬件设备来实现的,很少会使用Linux服务器,原因是明显的,但DHCP服务器一般是使用Linux来配置的,主要是简单好用等:
五、DHCP超级作用域
1.创建实验环境:
2.修改虚拟机参数配置:
3.启动虚拟机,进行相应的系统参数配置:
4.DHCP-Server虚拟机配置:
(1)网卡参数配置,看图操作:
(2)配置DHCP服务器的dhcpd.conf配置文件,这里我配置了两个作用域,每个作用域都只有三个IP地址能进行分配,大家了解:
(3)启动DHCP服务:
5.客户端测试:
(1)Client-1虚拟机测试,成功获取IP地址等参数:
(2)Client-3虚拟机测试,成功获取IP地址等参数:
(3)Client-4虚拟机测试,成功获取IP地址等参数:
(4)Client-2虚拟机最后测试,发现目前它获取不了IP地址等参数,原因是DHCP服务器相应作用域的IP地址分配完了:
(5)下面我将Client-4虚拟机的IP地址给释放,看图:
(6)Client-2虚拟机再次获取,这次便获取成功并且就是刚才释放的IP地址,大家了解:
(7)Client-4虚拟机再来获取IP地址,这次便获取不成功,验证了前面的说法,大家了解:
6. 默认情况下,如果未配置DHCP中继代理,DHCP服务器中能为客户端自动分配与自身IP地址属同一子网的IP地址。
例如,DHCP服务器的IP地址为192.168.30.30/24,作用域的IP地址为192.168.40.100~192.168.40.102,则该DHCP服务器默认将无法对分配此作用域的IP地址。通过超级作用域,DHCP服务器可以将多个不同IP子网的作用域组合为单个管理实体,为客户端自动分配来自多个作用域的IP地址,这使用得那些与DHCP服务器的IP地址不在同一子网的作用域也能将IP地址分配给客户端。在实际应用中,需要在一个物理子网中使用多个逻辑子网时,可以使用超级作用域。
超级作用域使用情况:
◆当前作用域的可用地址几乎已用尽,但是需要向网络添加更多的计算机。由于最初的作用域已经包含了当前IP子网内所有可用的IP地址,因此需要使用另一个IP子网的地址范围以扩展同一物理子网的地址空间。
◆客户端必须随时间迁移到新作用域。例如重新为了当前IP地址进行规划,客户需要从现有的活动作用域中使用的地址范围迁移到包含另一IP子网地址范围的新作用域。
◆在同一物理子网上使用两个DHCP服务器以管理不同的逻辑子网。
因为存在上面的问题,所以DHCP超级作用域便有了用处,大家了解:
超级作用域配置简介:
shared-network 超级作用域名 {
作用域
作用域
}
因此服务器作如下配置,并启动DHCP服务:
7.通过前面超级作用域的配置,Client-4虚拟机这次便获取到IP地址了,了解:
8.再次修改配置文件,使用每个作用域只有两个IP地址,并重新启动DHCP服务,让大家更直观,了解:
9.客户端测试,截图如下,大家应当明白了:
10.测试网络的通信:
(1)同一物理网络下相同逻辑子网的计算机可以通信,如图所示:
(2)同一物理网络下不同逻辑子网的计算机默认不可以通信,需要配置网关并且网关是工作的才能通信,目前不能通信的原因是网关没有工作,大家明白:
11.Router虚拟机配置:
(1)介绍一下如何在Linux系统中为一块网卡配置多个IP地址,大家了解:
“cp eth0 eth0:0”:拷贝原网卡配置文件为“原网卡名:数字(从0开始)”,然后修改这个拷贝文件进行IP地址等参数配置,如下图所示:
(2)启动网络服务并开启服务器的数据包转发功能(即LAN路由功能),了解:
12.网络测试,这次不同网段通信正常,一般超级作用域都是这样使用的,大家了解:
13.最后,大家再看下超级作用域的配置,超级作用域的使用因人而异,本节实验也到此结束:
最后,RHEL5.2下的 DHCP实战详解这一专题就到此结束,后面会陆续介绍相关服务器专题,大家互相学习……