综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

少年击剑更吹箫,剑气箫心一例消。这篇文章主要讲述综合实验:DHCP+DNS正向解析+XPE自动装机+NFS共享相关的知识,希望能为你提供帮助。
需求1)准备4台虚拟机,一台Windows虚拟机PC1(不限制win7或者win10)、一台Linux服务器server1(IP是192.168.206.3/24)和一台网卡为DHCP类型的Linux服务器server2和一台空虚拟机server3。虚拟机网络均使用仅主机模式。
2)server1提供DHCP服务给PC1和server2分配对应网段的IP地址。
3)在server1安装和启动httpd服务对外提供Web服务,并搭建DNS服务负责解析域名www.kgc.com 为192.168.206.3,使得PC1能够使用域名www.kgc.com访问Web服务器。
4)在server2安装NFS服务,提供共享目录/share ,在/share目录中创建文件index.html,文件内容自定义。把server2的/share目录通过NFS挂载到server1的/var/www/html目录下,使得PC1访问Web服务时能够显示自定义的内容。
5)server1提供PXE服务,能够使server3可以自动安装Centos7 Linux操作系统。
环境【综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)】```html/xml
网段为192.168.206.0/24
1台server1DHCP等服务206.3 ;ip
1台server2做NFS,DHCP获取地址
1台server3裸机装机,DHCP获取地址
一台pcwin7验证DNS等服务,DHCP获取地址

## 实验操作 1、首先server1我们安装DHCP服务 ![1.png](https://s2.51cto.com/images/20211206/1638795073715134.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 接着我们复制模版,覆盖空白配置文件,进配置文件里去设置 ![2.png](https://s2.51cto.com/images/20211206/1638795149105976.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 里面的设置配置如下:![2.1.png](https://s2.51cto.com/images/20211206/1638795314673402.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![2.2.png](https://s2.51cto.com/images/20211206/1638795318570913.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 保存退出后关闭防火墙、增强服务、开启DHCPD ![2.3.png](https://s2.51cto.com/images/20211206/1638795341546892.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)2、我们先去SERVER2 我们先去改网卡改成DHCP模式,再去重启网卡 ![3.1.png](https://s2.51cto.com/images/20211206/1638795557636463.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![3.png](https://s2.51cto.com/images/20211206/1638795555996082.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 随后重启完成后我们ifconfig,发现server已经分配到ip地址了 ![3.2.png](https://s2.51cto.com/images/20211206/1638795628548914.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 随后我们转向**pc1** 首先网卡如下更改,dns是为下面的http访问做准备的。随后禁用网卡再重启 ![image.png](https://s2.51cto.com/images/20211206/1638795821433861.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 随后我们用ipconfig来看看,发现已经分配到ip地址了 ![3.4.png](https://s2.51cto.com/images/20211206/1638795935523098.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)3、下面我们做需求(3),首先去server1,我们先安装httpd服务。**然后启动httpd(别忘记了!)** ![4.png](https://s2.51cto.com/images/20211206/1638796062395369.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![4.1.png](https://s2.51cto.com/images/20211206/1638796064562848.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 接着我们开始做**粗体** 还是server1主机,先安装bind服务 ![5.png](https://s2.51cto.com/images/20211206/1638796261199827.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)首先是vim /etc/named.conf,随后如图所示进行更改 ![6.png](https://s2.51cto.com/images/20211206/1638796448575369.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 其次是vim /etc/named.rfc1912.zones,进去后如图所示更改 ![6.2.png](https://s2.51cto.com/images/20211206/1638796578243430.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 最后我们首先cd /var/named 然后ls查看文件,看到named.localhost,这个文件就是我们的目标 ![6.3.png](https://s2.51cto.com/images/20211206/1638796715290701.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=), 我们cp出这个文件的改名文件,然后vim进去编辑 ```html/xml cp -p named.localhost kgc.com.zone vim kgc.com.zone

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

如图进行以下修改
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

我们启动named服务(DNS)
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

下面我们转向pc1
打开网站输入
```html/xml
www.kgc.com;实验的测试域名
成功出现阿帕奇 ![image.png](https://s2.51cto.com/images/20211206/1638797108406079.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 需求(3)就完成了4、下面我们做需求(4) 首先去server2主机 首先是安装nfs-utils和rpcbind ![image.png](https://s2.51cto.com/images/20211206/1638797362269281.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 按照要求在根目录创建share,并赋予最高权限 ![7.1.png](https://s2.51cto.com/images/20211206/1638797429290707.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 随后我们创建一个index.html文件,并进去随便写点什么![12.png](https://s2.51cto.com/images/20211206/1638798950165284.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)![123123.png](https://s2.51cto.com/images/20211206/1638798952659299.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 之后我们去/etc/exports编辑NFS规则 ![7.2.png](https://s2.51cto.com/images/20211206/1638798995996698.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) exports配置文件如下配置 ![7.3.png](https://s2.51cto.com/images/20211206/1638799044986024.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 随后关闭防火墙、关闭增强服务、开启nfs、开启rpcbind ![7.3ser.png](https://s2.51cto.com/images/20211206/1638799077159042.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 最后检查一下,可以看见共享NFS已经发布了 ![7.4.png](https://s2.51cto.com/images/20211206/1638799131856132.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) SER2主机就配置完成了 **然后我们去server1主机** 安装rpcbind、nfs-utils服务 关闭防火墙开启rpcbind、nfs-utils服务 ![11.png](https://s2.51cto.com/images/20211206/1638799221143294.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)**注意:server1是NFS服务的客机,不用去配置exports配置文件** 下面一步我们去使用showmount查看接受文件 ![7.5.png](https://s2.51cto.com/images/20211206/1638799280819876.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 确认完毕后我们开始挂载去/var/www/html ![123.png](https://s2.51cto.com/images/20211206/1638799358817603.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)现在转去PC1,验证httpd服务,可以看先pc显示出了index.html的文件内容 ![1414.png](https://s2.51cto.com/images/20211206/1638799427245680.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 此时需求(4)完成!5、现在来搞需求(5)pxe无人值守自动装机!**我们去server1主机配置!** 首先准备好yum仓库,开始安装xinetd 、tftp-server 、dhcp 、syslinux 、vsftpd 、system-config-kickstart (一共6个安装包及其依赖关系),不再展示这些安装包的yum截图了 然后我们去搞TFTP,首先是/etc/xinetd.d/tftp进去编辑,如图所示更改 ```html/xml waitno:表示多台并发安装,yes是指装完一台再装下一台 disableno:表示启动TFTP服务

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

完成之后我们启动tftp服务
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

下面是DHCP服务,由于需求(2)已经做过了,只需要进图修改就行
```html/xml
vim /etc/dhcp/dhcpd.conf
![2.1.png](https://s2.51cto.com/images/20211206/1638795314673402.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![2.2.png](https://s2.51cto.com/images/20211206/1638795318570913.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 保存退出后关闭防火墙、增强服务、开启DHCPD ![2.3.png](https://s2.51cto.com/images/20211206/1638795341546892.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)随后我们挂载光盘到/mnt中,然后cd去/mnt/images/pxeboot/中,去复制镜像、内核文件去/var/lib/tftpboot ![3.1.png](https://s2.51cto.com/images/20211206/1638800220487100.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 下面准备pxelinux引导程序,我们已经安装syslinux了,只要cp复制去/var/lib/tftpboot就行 ![image.png](https://s2.51cto.com/images/20211206/1638800257513328.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 下面我们来准备FTP服务了,vsftpd已经第一部安装了 首先是先创建一个centos7目录,随后把光盘挂载进去即可 ![4.png](https://s2.51cto.com/images/20211206/1638800482677306.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)![4.1.png](https://s2.51cto.com/images/20211206/1638800485486661.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 最后开启vsftpd ![4.2.png](https://s2.51cto.com/images/20211206/1638800519762772.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 下面设置引导启动会话文件default,首先是cd /var/lib/tftpboot。随后我们创建一个pxelinux.cfg目录 vim /var/lib/tftpboot、pxelinux/default 创建这个文件(由于我们是使用kickstart无人值守的,所以就直接在这步添加ks参数了) ```html/xml default auto prompt 0label auto kernel vmlinuz append initrd=initrd.img method=ftp://192.168.206.3/centos7 ks=ftp://192.168.206.3/ks.cfglabel linux text kernel vmlinuz append text initrd=initrd.img method=ftp://192.168.206.3/centos7label linux rescue kernel vmlinuz append rescue initrd=initrd.img method=ftp://192. 168.206.3/centos7

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

下面我们准备kickstart了
准备kickstart服务
打开方式:
1、可视化桌面左上角:应用程序-系统工具-kickstart
2、字符化界面:
```html/xml
system-config-kickstart召唤出来
![6.png](https://s2.51cto.com/images/20211206/1638800945353197.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![6.1.png](https://s2.51cto.com/images/20211206/1638800950658747.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![6.2.png](https://s2.51cto.com/images/20211206/1638800955262798.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![6.3.png](https://s2.51cto.com/images/20211206/1638800957618146.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![6.4.png](https://s2.51cto.com/images/20211206/1638800962888880.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![6.5.png](https://s2.51cto.com/images/20211206/1638800964172172.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) ![6.6.png](https://s2.51cto.com/images/20211206/1638800970663449.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 图中yum脚本 ```html/xml mkdir /etc/yum.repos.d/repos.bak mv /etc/yum/repos.d/*.repo /etc/yum.repos.d/repos.bak echo [local] name=local baseurl=ftp://192.168.206.3/centos7 enabled=1 gpgcheck=0 /etc/yum.repos.d/local/repo

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

最终我保存到root家目录
随后我们去家目录
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

进入后我们会发现多了initial-setup-ks.cfg和ks.cfg文件。我们首先vim initial-setup-ks.cfg,进去后把第二张图的所选部分复制
退出后我们vim ks.cfg,把这个复制的内容贴到ks.cfg的最下面
保存退出,把ks.cfg复制去/var/ftp目录中。cp /root/ks.cfg /var/ftp/ks.cfg
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

server1主机配置完成,下面将server3裸机放入206.0网段后即可自动获取dhcp装机
6、server3裸机开机后自动获取DHCP引导,之后自动进行装机,如果配置错误,server3会有报警提示,可自行去看
补充:我这边是kickstart无人值守自动装机,且为wait=no的多并发装机。也可以去vim /etc/xinetd.d/tftp,把wait=yes,改成装完一台装下一台裸机
综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片

综合实验(DHCP+DNS正向解析+XPE自动装机+NFS共享)

文章图片


    推荐阅读