1. 一键部署DNS服务器
2.一键部署PXE装机
3.一键部署DNS服务
实验说明:
搭建DNS服务器,CentOS 7-5(192.168.80.50)为主域名服务器,设置正反向域名解析,CentOS 7-4(192.168.80.40)为从域名服务器。
实验步骤:
#!/bin/bash
#搭建DNS服务器,CentOS 7-5(192.168.80.50)为主域名服务器,设置正反向域名解析,CentOS 7-4(192.168.80.40)为从域名服务器
#判断是否已安装本地yum源,如果没有,则创建本地yum源
cd /etc/yum.repos.d
if [ ! -e local.repo ];then #如果不存在本地local.repo文件,则创建repos.bak备份文件
mkdir repos.bak
mv *.repo repos.bak
echo '[local]
baseurl=file:///mnt
gpgcheick=0
enabled=1' >local.repo
fi
#判断检查是否挂载光盘
df | grep "sr0" #过滤sr0查看光盘的挂载情况
if [ $? -eq 0 ];then #如果光盘已经挂载,安装bind软件包
yum install -y bind &> /dev/null
else
mount /dev/sr0 /mnt #否则,先挂载光盘,再安装bind软件包
yum install -y bind &> /dev/null
fi
#修改主配置文件:/etc/named.conf,监听地址为本机DNS服务器(192.168.80.50),允许解析网段为所有(any)
sed -i 's/127.0.0.1/192.168.80.50/' /etc/named.conf
sed -i 's/localhost/any/' /etc/named.conf
#修改区域配置文件:/etc/named.rfc1912.zones
sed -i 's/localhost.localdomain/gzy.com/' /etc/named.rfc1912.zones #正向解析"gzy.com"区域
sed -i 's/named.localhost/gzy.com.zone/' /etc/named.rfc1912.zones #指定主域名服务器正向解析的数据文件为gzy.com.zone
sed -i 's/update/transfer/' /etc/named.rfc1912.zones
sed -i 's/none/192.168.80.40/' /etc/named.rfc1912.zones #允许IP地址为192.168.80.40的从域名服务器同步传输连接主域名服务器正向解析的数据文件
#sed -i '18,100d' /etc/named.rfc1912.zones
#反向解析"192.168.80.0"网段的域名解析服务,指定主域名服务器反向解析的数据文件为gzy.com.zone,允许IP地址为192.168.80.40的从域名服务器同步传输>连接主域名服务器反向解析的数据文件
echo -e 'zone "80.168.192.in-addr.arpa" IN {
\ttype master;
\tfile "gzy.com.zone.local";
\tallow-transfer { 192.168.80.40; };
};' >> /etc/named.rfc1912.zones
#配置正反向区域数据文件:/etc/named/named.localhost
cd /var/named/
cp -a named.localhost gzy.com.zone #配置正向区域数据文件,并保留源文件的权限和属主的属性复制
cp -a named.localhost gzy.com.zone.local #配置反向区域数据文件,并保留源文件的权限和属主的属性复制
#修改并配置正向区域数据文件
sed -i 's/rname.invalid/admin.gzy.com/' /var/named/gzy.com.zone
sed -i 's/127.0.0.1/192.168.80.50/' /var/named/gzy.com.zone #记录主机IP地址
sed -i '/AAAA/d' /var/named/gzy.com.zone
echo -e 'www\tIN\tA\t192.168.80.100' >> /var/named/gzy.com.zone #记录正向解析www.gzy.com对应的IP为192.168.80.100
echo -e 'clr\tIN\tA\t192.168.80.110' >> /var/named/gzy.com.zone #记录正向解析clr.gzy.com对应的IP为192.168.80.110
echo -e 'Ayu\tIN\tA\t192.168.80.120' >> /var/named/gzy.com.zone #记录正向解析Ayu.gzy.com对应的IP为192.168.80.120
echo -e 'xiaocai\tIN\tA\t192.168.80.130' >> /var/named/gzy.com.zone #记录正向解析xiaocai.gzy.com对应的IP为192.168.80.130
echo -e 'girl\tIN\tCNAME\tclr' >> /var/named/gzy.com.zone #为域名clr.gzy.com创建别名girl.gzy.com
#修改并配置反向区域数据文件
sed -i '2 s/\@/gzy.com./2' /var/named/gzy.com.zone.local
sed -i 's/rname.invalid/admin.gzy.com/' /var/named/gzy.com.zone.local
sed -i '8 s/\@/gzy.com./' /var/named/gzy.com.zone.local #记录当前区域的DNS服务器名称
sed -i 's/127.0.0.1/192.168.80.50/' /var/named/gzy.com.zone.local #记录主机IP地址
sed -i '/AAAA/d' /var/named/gzy.com.zone.local
echo -e 'www\tIN\tA\t192.168.80.100' >> /var/named/gzy.com.zone #记录正向解析www.gzy.com对应的IP为192.168.80.100
echo -e 'clr\tIN\tA\t192.168.80.110' >> /var/named/gzy.com.zone #记录正向解析clr.gzy.com对应的IP为192.168.80.110
echo -e 'Ayu\tIN\tA\t192.168.80.120' >> /var/named/gzy.com.zone #记录正向解析Ayu.gzy.com对应的IP为192.168.80.120
echo -e 'xiaocai\tIN\tA\t192.168.80.130' >> /var/named/gzy.com.zone #记录正向解析xiaocai.gzy.com对应的IP为192.168.80.130
echo -e 'girl\tIN\tCNAME\tclr' >> /var/named/gzy.com.zone #为域名clr.gzy.com创建别名girl.gzy.com
#修改并配置反向区域数据文件
sed -i '2 s/\@/gzy.com./2' /var/named/gzy.com.zone.local
sed -i 's/rname.invalid/admin.gzy.com/' /var/named/gzy.com.zone.local
sed -i '8 s/\@/gzy.com./' /var/named/gzy.com.zone.local #记录当前区域的DNS服务器名称
sed -i 's/127.0.0.1/192.168.80.50/' /var/named/gzy.com.zone.local #记录主机IP地址
sed -i '/AAAA/d' /var/named/gzy.com.zone.local
echo -e '100 IN PTR\twww.gzy.com.' >> /var/named/gzy.com.zone.local #记录反向解析192.168.80.100对应的域名为www.gzy.com
echo -e '110 IN PTR\tclr.gzy.com.' >> /var/named/gzy.com.zone.local #记录反向解析192.168.80.110对应的域名为clr.gzy.com
echo -e '120 IN PTR\tAyu.gzy.com.' >> /var/named/gzy.com.zone.local #记录反向解析192.168.80.120对应的域名为Ayu.gzy.com
echo -e '130 IN PTR\txiaocai.gzy.com.' >> /var/named/gzy.com.zone.local #记录反向解析192.168.80.130对应的域名为xiaocai.gzy.com
#添加指定DNS服务器
sed -i '2 s/192.168.80.2/192.168.80.50/' /etc/resolv.conf #设置DNS主服务地址
echo -e 'nameserver 192.168.80.40' >> /etc/resolv.conf #设置DNS从服务地址
#关闭防火墙
systemctl stop firewalld
setenforce 0
#开启DNS服务
systemctl start named
实验结果: