目录
一.构建主从域名服务器
构建主从域名服务器时,需要两台虚拟机,一台为主域名服务器,一台为从域名服务器。主域名服务器主配置文件相同。修改主域名服务器主配置文件的过程,本篇不展示具体过程,详情见上篇:Linux网路服务------DNS域名解析服务(正向解析与反向解析)。
1.修改主域名服务器的区域配置文件,修改正,反向区域类型
vim /etc/named.rfc1912.zones
正向解析:
zone "benet.com" IN { 正向解析“benet.com”
type master; ✪类型为主区域
file "benet.com.zone"; 指定区域数据文件为benet.com.zone
allow-transfer { 192.168.121.150; } ; ✪允许从服务器下载正向区域数据,这里添从服务器的IP地址
};
反向解析:
zone "121.168.192.in-addr.arpa" IN { 反向解析地址,倒过来写
type master; 类型为主区域
file "benet.com.zone.local"; 指定区域数据文件为benet.com.zone.local
allow-transfer { 192.168.121.150; };
};
2.修改从域名服务器的主配置文件
yum install -y bind
vim /etc/named.conf
options {
listen-on port 53 { 192.168.121.150; }; ✪监听53端口,ip地址使用提供服务的本地IP即可,也可用any代表所有
#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 { any; }; ✪允许使用本DNS解析服务的网段,也可用any代表所有
……
}
3.修改从域名服务器区域配置文件,添加正,反区域配置
vim /etc/named.rfc1912.zones
zone "benet.com" IN {
type slave; ✪类型为从区域
masters { 192.168.121.150; }; ✪指定主服务器的IP地址
file "slaves/benet.com.zone"; ✪下载的区域数据文件保存到slaves/目录下
};
zone "121.168.192.in-addr.arpa" IN {
type slave; ✪类型为从区域
masters { 192.168.121.150; }; ✪指定主服务器的IP地址
file "slaves/benet.com.zone.local"; ✪下载的区域数据文件保存到slaves/目录下
};
4.主,从服务器启动服务,查看区域数据文件是否已下载成功
systemctl restart named
ls -l /var/named/slaves/
5.在客户端的域名解析配置文件中添加从DNS服务器地址
echo "nameserver 192.168.121.151" >> /etc/resolv.conf
主,从服务器都必须要添加。
6.测试
host 192.168.121.11
nslookup 192.168.121.11
停止主服务器的服务,模拟主服务器故障
systemctl stop named
host 192.168.121.11
nslookup 192.168.121.11
2.分离解析
分离解析的域名服务器实际也是主域名服务器,这里主要是指根据不同的客户端提供不同的域名解析记录。比如来自内网
和外网的不同网段地址区域的客户机请求解析同一域名时,为其提供不同的解析结果,得到不同的IP地址。
配置网关服务器搭建DNS分离解析
在网关服务器搭建DNS分离解析,使局域网主机解析www.benet.com为192.168.80.200,外网主机解析www.benet.com
为12.0.0.100。
1.为网关服务器配置双网卡
在关机状态下再添加一块网卡,重启系统
ifconfig ens36 12.0.0.1/24
i fconfig
2.安装bind软件包
yum install -y bind
3.修改主配置文件
vim /etc/named.conf
options {
listen-on port 53 { any; } ; 监听本机或者any
#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"; 内存统计文件的位置
recursing-file "/var/ named/data/named.recursing";
secroots-file "/var/named/data/ named. secroots";
allow-query { any; }; 允许所有主机解析
……
};
include "/etc/named.rfc1912.zones"; 包含区域配置文件里的所有配置
4.修改区域配置文件
vim /etc/named.rfc1912.zones
view "lan" { 定义内网view,view代表容器分割
match-clients { 192.168.121.0/24; }; 匹配内网网段
zone "benet.com" IN { 设置要解析的区域
type master;
file "benet.com.zone.lan"; 数据配置文件
};
zone "." IN { 可将根域配置从主配置文件剪切过来,dd+p
type hint; hint是根区域类型
file "named.ca";
};
};
view "wan" { 定义外网view
match-clients { any; } ; 匹配除了内网网段以外的任意地址
zone "benet. com" IN{
type master;
file "benet.com.zone.wan";
};
};
注意:一旦启用view,所有的zone必须都在view下,所以要把系统默认的自检用的zone也放在view下或者删除
5.修改区域数据配置文件
**内网**
cd /var/named
cp -p named.localhost benet.com.zone.lan
vim benet.com.zone.lan
$TTL 1D
@ IN SOA benet.com. admin.benet.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS benet.com.
A 192.168.121.11
www IN A 192.168.121.100 内网主机通过解析www.benet.com的地址得到192.168.121.100
**外网**
cd /var/named
cp -p benet.com.zone.lan benet.com.zone.wan
vim benet.com.zone.wan
$TTL 1D
@ IN SOA benet.com.admin.benet.com. (
0 ; serial
1D ; refresh
1H ; retry .
1W ; expire
3H ) ; minimum
NS benet.com.
A 12.0.0.1
www IN A 12.0.0.100 外网主机通过解析www . benet . com的地址得到12.0.0.100
内网
外网
6.启动服务
systemctl start named 开启服务
systemctl stop firewalld 关闭防火墙
serenforce 0 关闭系统安全服务
7.在内、外网客户端的域名解析配置文件中添加DNS服务器地址
echo "nameserver 192.168.121.151" >> /etc/ resolv. conf 内网客户端
echo "nameserver 12.0.0.1" >> /etc/ resolv. conf 外网客户端
8.在内、外网客户端上测试
nslookup wWw . benet .com