实验内容
一、利用光盘yum安装软件及服务
- 创建用于挂载光盘的目录并挂载
mkdir /media/cdrom //创建目录
mount /dev/cdrom /media/cdrom //挂载
df -h //查看挂载
- 修改yum
cd /etc/yum.repos.d/
mv * ../ //将所有文件移动到上一级目录
mv ../CentOS-Media.repo ./
vi CentOS-Media.repo
现在就可以利用yum直接安装软件或服务了
二、安装、启动dns服务
- 安装DNS服务-bind
rpm -qa|grep bind //查看服务是否被安装
yum install -y bind* //安装dns服务
- 启动dns服务并配置开机启动
systemctl start named //启动服务
systemctl restart named //重启服务
systemctl status named //查看服务状态
systemctl enable named //设置开机启动
三、掌握bind配置文件
DNS配置文件主要3部分:
- 全局配置文件(/etc/named.conf)
- 主配置文件(/etc/named.rfc1912.zones)
- 正向解析文件(/var/named/named.localhost)、反向解析文件(/var/named/named.loopback)
1、全局配置文件(/etc/named.conf)
[root@dns3 ~]# cat /etc/named.conf
options {
listen-on port 53 { 127.0.0.1; }; //指定BIND侦听的DNS查询请求的本机IP地址及端口
listen-on-v6 port 53 { ::1; }; //限于IPv6
directory "/var/named"; //指定区域配置文件所在的路径
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; }; //指定接收DNS查询请求的客户端
recursion yes;
dnssec-enable yes;
dnssec-validation yes; //改为no可以忽略SELinux影响
dnssec-lookaside auto;
};
//以下用于指定BIND服务的日志参数
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN { //用于指定根服务器的配置信息,一般不能改动
type hint;
file "named.ca";
};
include "/etc/named.zones"; //指定主配置文件,一定根据实际修改
include "/etc/named.root.key";
补充说明:
options 配置段属于全局性的设置
directory:用于指定named守护进程的工作目录。
allow-query{}:与allow-query{localhost;}功能相同。
例如,若仅允许127.0.0.1和192.168.1.0/24网段的主机查询该DNS服务器,则命令为
llow-query {127.0.0.1;192.168.1.0/24}。
listen-on:设置named守护进程监听的IP地址和端口。若未指定,默认监听DNS服务器的所有IP地址的53号端口。
若要设置DNS服务器监听192.168.1.2这个IP地址,端口使用标准的5353号,则配置命令为
listen-on port 5353 { 192.168.1.2;};
forwarders{}:用于定义DNS转发器。在设置了转发器后,所有非本域的和在缓存中无法找到的域名查询,可由指定的DNS转发器来完成解析工作并做缓存。
forward用于指定转发方式,仅在forwarders转发器列表不为空时有效,其用法为“forward first | only ; ”。
forward first为默认方式,DNS服务器会将用户的域名查询请求先转发给forwarders设置的转发器,由转发器来完成域名的解析工作,若指定的转发器无法完成解析或无响应,则再由DNS服务器自身来完成域名的解析。
若设置为“forward only ; ”,则DNS服务器仅将用户的域名查询请求转发给转发器,若指定的转发器无法完成域名解析或无响应,DNS服务器自身也不会试着对其进行域名解析。
例如,某地区的DNS服务器为61.128.192.68和61.128.128.68,若要将其设置为DNS服务器的转发器,则配置命令为
options{
forwarders {61.128.192.68;61.128.128.68;};
forward first;
};
2、主配置文件(/etc/named.rfc1912.zones)
主配置文件位于/etc目录下,可将named.rfc1912.zones复制为全局配置文件中指定的主配置文件,实训中是==/etc/named.zones==。
[root@dns3 ~]# cp –p /etc/named.rfc1912.zones /etc/named.zones
[root@dns3 ~]# cat /etc/named.rfc1912.zones
zone "localhost.localdomain" IN {
type master; //主要区域
file "named.localhost"; //指定正向查询区域配置文件
allow-update { none; };
};
………………<略>
zone "1.0.0.127.in-addr.arpa" IN { //反向解析区域
type master;
file “named.loopback”; //指定反向解析区域配置文件
allow-update { none; };
};
…………<略>
zone区域名称说明
(1)主域名服务器的正向解析区域声明格式为
zone "区域名称" IN {
type master ;
file "实现正向解析的区域文件名";
allow-update {none;};
};
(2)从域名服务器的正向解析区域声明格式为
zone "区域名称" IN {
type slave ;
file "实现正向解析的区域文件名";
masters {主域名服务器的IP地址;};
};
反向解析区域的声明格式与正向相同,只是file所指定的要读的文件不同,另外就是区域的名称不同。
若要反向解析x.y.z网段的主机,则反向解析的区域名称应设置为z.y.x.in-addr.arpa。(反向解析区域样本文件为named.loopback)
根区域文件/var/named/named.ca是一个非常重要的文件,包含了Internet的顶级域名服务器的名字和地址。利用该文件可以让DNS服务器找到根DNS服务器,并初始化DNS的缓冲区。当DNS服务器接到客户端主机的查询请求时,如果在Cache中找不到相应的数据,就会通过根服务器进行逐级查询。
3、修改正反向解析文件
1)正向解析文件(/var/named/named.localhost)
将正向解析样本文件拷贝一份名为named.zones中定义的正向区域后,对其进行修改(具体操作看案例)
2)反向解析文件(/var/named.named.loopback)
将反向解析样本文件拷贝一份名为named.zones中定义的反向区域后,对其进行修改(具体操作看案例)
四、配置主DNS案例
1. 案例环境需求
某校园网要架设一台DNS服务器,负责skills.com域的域名解析工作。DNS服务器的FQDN为dns3.skills.com,IP地址为172.16.10.100。要求为以下域名实现正反向域名解析服务。
域名 | 类型 | ip地址 |
---|---|---|
dns3.skills.com | A | 172.16.10.100 |
mail.skills.com | MX | 172.16.10.101 |
slave.skills.com | A | 172.16.10.102 |
ftp.skills.com | A | 172.16.10.103 |
www.skills.com | A | 172.1.10.104 |
web.skills.com | CNAME | www.skills.com |
2. 配置过程
(1) 编辑全局配置文件
vim /etc/named.conf
(2) 修改主配置文件(/etc/named.rfc1912.zones)
将/etc/named.rfc1912.zones复制一份named.zones
cp -p /etc/named.rfc1912.zones /etc/named.zones
vim /etc/named.zones
创建正、反向解析区域:
(3) 编辑正向解析文件
将正向解析样本文件(/var/named/named.localhost)复制一份文件名与主配置文件中定义正向区域同名的文件,并修改:
cd /var/named/
cp -p named.localhost skills.com.zone //复制正向解析样本文件为skills.com.zone
vim skills.com.zone //编辑
(4) 编辑反向解析文件
将反向解析样本文件(/var/named/named.loopback)复制一份文件名与主配置文件定义的反向区域同名的文件,并修改:
cd /var/named/
cp -p named.loopback 172.16.10.zone //复制正向解析样本文件为skills.com.zone
vim 172.16.10.zone //编辑
3. 修改防火墙配置
配置防火墙,设置主配置文件和区域文件的属组为named,然后重启DNS服务,加入开机启动
firewall-cmd --permanent --add-service=dns
firewall-cmd --reload
systemctl restart named
4. 客户端验证解析
(1)Centos7
修改IP地址:
vim /etc/sysconfig/network-scripts/ifcfg-ens33
修改配置:
vim /etc/resolv.conf
nameserver 172.16.10.100
search skills.com
正向解析验证:
反向解析验证: