DNS分离解析配置详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DNS分离解析配置详解相关的知识,希望对你有一定的参考价值。
DNS分离解析
1、DNS分离解析的作用
DNS分离解析即将内外网的相同域名解析为不同的IP地址。现实网络中一些电商网站为了让用户有更好的体验效果解析速度更快,就把来自不同运营商的用户解析到相对应的服务器这样就大大提升了访问速度。
2、配置前的准备工作
注:下面的所有配置全部是在centos7.x系统完成的。
(1)准备三台机器,先按照下图配置好网卡IP地址。
(2)关闭三台机器的selinux和防火墙,或者设置对应的防火墙规则开放53、80等端口。
3、配置DNS服务器
(1)安装DNS需要的软件
[[email protected] ~]# yum -y install bind
(2)修改主配置文件named.conf
[[email protected] ~]# 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";
allow-query { any; }; #允许所有主机解析,仅限实验环境下使用
.......................................省略若干
特别注意:DNS的所有配置文件中“{}”这样的括号里有内容的话内容一定要与括号之间有空格否则服务无法启动。
(3)修改区域配置文件named.rfc1912.zones
[[email protected] ~]# vim /etc/named.rfc1912.zones
view "lan" { #定义内网view,命名为lan
match-clients { 192.168.115.0/24; }; #设置那个网段可以解析
zone "long.com" IN { #设置要解析的区域
type master; #类型有hint,master,Slave,swap,Hint是根区域类型,master和slave是用来做DNS的主从,swap是交换类型
file "named.lan"; #区域解析库文件,相对named.conf中 directory "/var/named"这个路径,所以区域解析文件要放在/var/named下
allow-update { none; };
};
zone "." IN {
type hint;
file "named.ca";
};
};
view "wan" { #定义的外网view
match-clients { 10.10.10.0/24; };
zone "long.com" IN {
type master;
file "named.wan";
};
};
注意:一旦启用view,所有的zone必须都在view下,所以要把系统默认的自检用的zone也放在view下。
(4)配置区域解析库文件
[[email protected] named]# cp -a named.localhost named.lan
[[email protected] named]# cp -a named.localhost named.wan
[[email protected] named]# vim named.lan
$TTL 1D
@ IN SOA long.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.long.com.
dns A 192.168.115.130 #这是DNS服务器内网卡IP
www A 192.168.115.120 #解析的web服务地址
[[email protected] named]# vim named.wan
$TTL 1D
@ IN SOA long.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.long.com.
dns A 10.10.10.130 #DNS服务器外网卡IP
www A 10.10.10.130 #解析的web服务地址
[[email protected] named]# systemctl restart named.service
(5)DNS服务器兼任外网主机的web服务器,安装httpd软件
[[email protected] ~]# yum -y install httpd 安装httpd服务
[[email protected] ~]# echo '10.10.10.130'>/var/www/html/index.html 给网页文件添加内容
[[email protected] ~]# systemctl restart httpd.service 启动httpd服务
4、在内网主机192.168.115.120上面安装httpd软件
[[email protected] ~]# yum -y install httpd
[[email protected] ~]# echo '192.168.115.120'>/var/www/html/index.html
[[email protected] ~]# systemctl restart httpd.service
5、测试我们的DNS服务器能否做到内外网分离解析
(1)把外网主机10.10.10.150的DNS设置为DNS服务器10.10.10.130的外网卡IP
(2)把内网主机192.168.115.120的DNS设置为DNS服务器192.168.115.130的内网卡IP
(3)然后分别使用内网主机和外网主机访问我们DNS服务器里解析好的域名www.long.com,看两个主机访问的内容是否有区别。
(4)测试结果
内网主机访问结果:
[[email protected] ~]# curl www.long.com
192.168.115.120
外网主机访问结果:
[[email protected] ~]# curl www.long.com
10.10.10.130
从上面的结果我们可以看到,内外网主机访问的结果正好是我们内外网web服务器上设置的网页内容,而且使用的是同一台DNS服务器,这就说明我们的DNS分离解析已经配置完成了。
当然也可以使用Windows主机浏览器进行测试DNS服务器,只需把Windows的IP修改成内外网主机的网段,然后DNS设置成我们搭建的DNS地址,对应测试两遍即可。
以上是关于DNS分离解析配置详解的主要内容,如果未能解决你的问题,请参考以下文章