DNS分离解析域名服务器概述
DNS分离解析域名服务器实际也是主域名DNS服务器,这里所说的分离解析(Split DNS),主要是指根据不同来源的客户端请求,提供不同的域名解析记录。来自不同地址的客户机请求解析同一域名时,为其提供不同的解析结果。
分离解析案例
配置虚拟机网卡为双网卡
修改两个网卡的IP地址
cd /etc/sysconfig/network-scripts/
mv ifcfg-ens32 ifcfg-ens33
vim ifcfg-ens33
DEVICE=ens33
IPADDR=172.16.1.1
DNS1=172.16.1.1
安装DNS
yum -y install bind
修改/etc/named.conf主配置文件中为不同网络的客户机地址准备不同的zone区域设置,各自使用独立的数据文件
vim /etc/named.conf
options {
directory "/var/named";
};
view "LAN" {
match-clients { 192.168.200.0/24; }; //匹配局域网的客户端
zone "benet.com" IN {
type master;
file "benet.zheng.lan";
};
};
view "WAN" {
match-clients { any; }; //匹配互联网的客户端
zone "benet.com" IN {
type master;
file "benet.zheng.wan";
};
};
分别建立不同的区域数据文件
配置第一个区域
cd /var/named/
vim benet.zheng.lan
$TTL 86400
@ IN SOA benet.com. admin.benet.com. (
2019011001
3H
15M
1W
1D
)
IN NS www.benet.com.
www IN A 192.168.200.111
配置第二个区域
vim benet.zheng.wan
$TTL 86400
@ IN SOA benet.com. admin.benet.com. (
2019011001
3H
15M
1W
1D
)
IN NS www.benet.com.
www IN A 172.16.1.1
检查配置文件是否出错
chgrp named benet.zheng.*
查看配置文件
ls -l benet.zheng.*
重新启动DNS
systemctl restart named
进入第二台虚拟机更改IP地址
vim ifcfg-ens32
更改第三台虚拟机的网卡为主机模式
进入第三台虚拟机更改IP地址
vim ifcfg-ens32
重启网卡
systemctl restart network
第一台主机查看域名
nslookup www.benet.com
第二台主机查看域名
nslookup www.benet.com
DNS view的多种应用方式
1.match-clients直接指定地址
修改配置文件
vim /etc/named.conf
options {
directory "/var/named";
};
view "LAN" {
match-clients { 192.168.200.0/24; }; //匹配局域网的客户端
zone "benet.com" IN {
type master;
file "benet.zheng.lan";
};
};
view "WAN" {
match-clients { any; }; //匹配互联网的客户端
zone "benet.com" IN {
type master;
file "benet.zheng.wan";
};
};
2.基于acl访问控制列表
修改配置文件
vim /etc/named.conf
options {
directory "/var/named";
};
acl lan { 192.168.200.0/24; }; //定义访问控制列表
acl wan { any; };
view "LAN" {
match-clients { lan; }; //匹配局域网的客户端
zone "benet.com" IN {
type master;
file "benet.zheng.lan";
};
};
view "WAN" {
match-clients { wan; }; //匹配互联网的客户端
zone "benet.com" IN {
type master;
file "benet.zheng.wan";
};
};
3.基于访问控制文件
创建一个配置文件
cat /var/named/lan.txt
acl lan {
192.168.200.0/24;
};
cat /var/named/wan.txt
acl wan {
any;
};
修改配置文件
vim /etc/named.conf
options {
directory "/var/named";
};
include "/var/named/lan.txt";
include "/var/named/wan.txt";
view "LAN" {
match-clients { lan; };
zone "benet.com" IN {
type master;
file "benet.zheng.lan";
};
};
view "WAN" {
match-clients { wan; };
zone "benet.com" IN {
type master;
file "benet.zheng.wan";
};
};
完成