将相同的域名解析为不同的IP地址,比如我的DNS服务器(chinaskills.com)上有一个对应外网(100.100.100.100)和一个对应内网(192.168.100.100)的接口,而当外网用户想知道www.chinaskills.com这个主机地址时,取得是竟然是我对内的地址,那么还需要通过NAT才能连接到我内网的接口,为了提高解析速度和控制来着客户端的请求,可以通过view功能将我的区域设为不同的IP地址进行解析,内网的响应由我内网的zone,外网响应外网的zone。
(1)环境
关闭SELinux,关闭防火墙,时间同步
(2)WEB服务配置
[root@wwwserver ~]# yum -y install httpd
[root@wwwserver ~]# echo I am WWWSERVER > /var/www/html/index.html
[root@wwwserver ~]# curl 127.0.0.1
I am WWWSERVER
(3)开启路由转发
[root@dnsserver ~]# echo net.ipv4.ip_forward = 1 > /etc/sysctl.conf [root@dnsserver ~]# sysctl -pnet.ipv4.ip_forward = 1
(4)DNS服务器主配置文件
[root@dnsserver named]# cat /etc/named.conf
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
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; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
acl neiwang { 192.168.100.0/24; };
acl waiwang { !192.168.100.0/24; any; };
view "lan" {
match-clients { "neiwang"; };
recursion yes;
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/lan.zone";
};
view "wan" {
match-clients { "waiwang"; };
recursion yes;
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/wan.zone";
};
#include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
(5)区域文件配置
[root@dnsserver ~]# cd /etc/
[root@dnsserver etc]# cp -a named.rfc1912.zones lan.zone
[root@dnsserver etc]# cp -a named.rfc1912.zones wan.zone
[root@dnsserver named]# cat /etc/lan.zone
zone "chinaskills.com" IN {
type master;
file "lan1.zone";
allow-update { none; };
};
zone "100.168.192.in-addr.arpa" IN {
type master;
file "lan2.zone";
allow-update { none; };
};
[root@dnsserver named]# cat /etc/wan.zone
zone "chinaskills.com" IN {
type master;
file "wan1.zone";
allow-update { none; };
};
zone "100.100.100.in-addr.arpa" IN {
type master;
file "wan2.zone";
allow-update { none; };
};
(6)区域数据库文件配置
[root@dnsserver etc]# cd /var/named/
[root@dnsserver named]# cp -a named.localhost lan1.zone
[root@dnsserver named]# cp -a named.localhost wan1.zone
[root@dnsserver named]# cp -a named.loopback lan2.zone
[root@dnsserver named]# cp -a named.loopback wan2.zone
lan1.zone
lan2.zone
wan1.zone
wan2.zone
(7)测试
内网:
外网: