DNS轮询和双向解析(四)


轮询

域名一样 但对应的ip地址不同

重启服务测试一下

双向解析

DNS的view视图功能可以实现智能解析(双向解析)的作用,具体流程就是当用户的IP匹配到设定的规则后,就按这条规则设置的记录去做解析。

DNS服务ip地址192.168.64.128

第一种写法

主配置文件

注释主配置文件单向解析功能

注释主配置文件单向解析功能

vim /etc/named.conf 

/*

zone "." IN {
        type hint;
        file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

*/

 /etc/named.conf 添加view视图功能

#view “名称” {  # 名称可以自拟,但必须唯一

#match-clients { ip/netmask; }; # 通过match-clients字段来区分不同区域

view "dxclient" {
        match-clients { 192.168.64.128; }; 
        zone "." IN {
                type hint;
                file "named.ca";
        };

include "/etc/named.rfc1912.zones";  
};

view "internet" {
        match-clients { any; };
        zone "." IN {
                type hint;
                file "named.ca";
        };

include "/etc/named.rfc1912.inter.zones";
};

include后面文件名不一样(格式 .zones结尾就行

include后面文件名不一样(格式 .zones结尾就行

上面文件说明

dxclient match-clients { 192.168.64.128; };  这个是本机解析的 

internet match-clients { any; }; 这个是其他机器解析的

两个解析的区域配置文件名和内容都不一样

检测配置文件

named-checkconf /etc/named.conf 

配置区域文件

dxclient

include "/etc/named.rfc1912.zones";  

上面两行是给你看的 让你明白这是本机解析文件

vim /etc/named.rfc1912.zones 

zone "xuexi.com" IN {
        type master;
        file "xuexi.com.zone";
        allow-update { none; };
};

vim xuexi.com.zone(路径你应该知道了吧)

$TTL 1D
@       IN SOA   xuexi.com. root.xuexi.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      xuexi.com.
        A       127.0.0.1
        AAAA    ::1
        MX 10   mail.xuexi.com.
www     A       192.168.27.144
www     A       192.168.27.145
ftp     A       192.168.27.146
ftp1    A       192.168.27.146
mail    A       192.168.27.147
new     CNAME   mail

internet

include "/etc/named.rfc1912.inter.zones";

上面两行是给你看的 让你明白这是其他机器解析文件

vim /etc/named.rfc1912.inter.zones

zone "xuexi.com" IN {
        type master;
        file "xuexi.com.inter.zone";
        allow-update { none; };
};

vim xuexi.com.inter.zone (路径你应该知道了吧

$TTL 1D
@       IN SOA   xuexi.com. root.xuexi.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      xuexi.com.
        A       127.0.0.1
        AAAA    ::1
        MX 10   mail.xuexi.com.
www     A       172.25.27.144
www     A       172.25.27.145
ftp     A       172.25.27.146
ftp1    A       172.25.27.146
mail    A       172.25.27.147
new     CNAME   mail

配置完成了

检查配置文件

当前路径

/var/named

named-checkconf /etc/named.rfc1912.zones 

named-checkconf /etc/named.rfc1912.inter.zones 

named-checkzone xuexi.com. xuexi.com.zone

named-checkzone xuexi.com. xuexi.com.inter.zone 

不报错就可以重启服务了

vim /etc/resolv.conf

nameserver 192.168.64.128 #添加在第一行位置(保存就生效)

本机测试解析

其他机器测试解析

比如192.168.64.129

安装bind (不用配置只是为了用测试工具)

vim /etc/resolv.conf 

nameserver 192.168.64.128 #写成上面配置好的DNS服务 添加在第一行位置(保存就生效)

就可以用dig或者nslookup测试了

实现了不同机器解析同一域名 ip地址不同效果

第二种方法

参考链接

DNS-VIEW的原理与配置_Linux学习之路的技术博客_51CTO博客

dns