构建分离解析的域名服务器,以及实现SNAT和DNAT 转换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构建分离解析的域名服务器,以及实现SNAT和DNAT 转换相关的知识,希望对你有一定的参考价值。

   分离解析(Split DNS)的域名服务器实际也是主域名服务器,这里主要是指根据不同的客户端提供不同的域名解析记录。来自不同地址的客户机请求解析同一域名时,为其提供不同的解析结果。

 

实验准备:

l  一台linux作为网关服务器

l  一台linux事先搭建好Apache服务作为局域网Web服务器,

l  一台Win7作为外网主机

l  关闭三台主机的防火墙和selinux
service iptables stop
setenforce 0

 

实验要求:

如图所示
技术分享图片

1.在网关服务器搭建DNS分离解析,使局域网主机解析www.benet.com 为192.168.100.101,外网主机解析www.benet.com 为12.0.0.1

2.并且实现SNAT和DNAT 转换成eth0接口地址,外网主机可以使用域名www.benet.com解析12.0.0.1直接访问局域网主机的Apache网站。

 

开始实验:

配置网关服务器搭建DNS分离解析

1.为网关服务器配置双网卡

技术分享图片

 

2.安装bind软件包

mount /dev/sr0 /mnt

rpm -ivh /mnt/Packages/bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm

 

3.修改主配置文件named.conf

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; };        #允许所有主机解析

 

4.修改区域配置文件named.rfc1912.zones

vim /etc/named.rfc1912.zones

view "lan" {                  #定义内网view

  match-clients { 192.168.100.0/24; };    #匹配内网网段

zone "benet.com" IN {              #设置要解析的区域

        type master;              

        file "benet.com.zone.lan";     #数据配置文件

};     

zone "." IN {

        type hint;               #hint是根区域类型

        file "named.ca";

};     

};

 

view "wan" {                     #定义外网view

     match-clients { any; };       #匹配除了内网网段以外的任意地址

     zone "long.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

cp -p named.localhost benet.com.zone.wan

 

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.100.1

www  IN A       192.168.100.101       #解析www.benet.com的地址

 

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.1      #解析www.benet.com的地址

 

6.启动服务

service named start

 

7.局域网主机测试

7.1 先为局域网主机指定DNS服务器地址

echo "nameserver 192.168.100.1" >> /etc/resolv.conf

7.2 测试结果

host www.benet.com

技术分享图片

 

8.外网主机测试

8.1 先为外网主机指定DNS服务器地址

技术分享图片

8.2 测试结果

nslookup www.benet.com

技术分享图片

 

在网关服务器配置SNAT和DNAT实现地址转换

1.配置SNAT和DNAT规则

iptables –F          #清空防火墙规则

iptables –t nat –F

iptables –t nat –A POSTROUTING –o eth0 –s 192.168.100.0/24 –j SNAT –-to-source 12.0.0.1     #配置SNAT规则

iptables –t nat –A PREROUTING  -i eth0 –d 12.0.0.1 –p tcp –dport 80 –j DNAT –-to-destination 192.168.100.101    #配置DNAT规则

 

2.在外网主机使用域名www.benet.com访问

技术分享图片

 

2.查看局域网Web服务器的Apache日志文件

cd /usr/local/apache/logs

tail access_log

技术分享图片


以上是关于构建分离解析的域名服务器,以及实现SNAT和DNAT 转换的主要内容,如果未能解决你的问题,请参考以下文章

构建分离解析的域名服务器

搭建DNS服务,构建分离解析的域名服务器。

详述CentOS 7中构建分离解析域名服务器

构建分离解析域名的服务器

bind安装域名解析服务,以及分离服务

多区域 DNS 服务,子域授权,缓存 DNS及Split 分离解析的原理和实现