Skip to content

Dns

安装bind

yum -y install bind*

编辑named.conf配置文件

vim /etc/named.conf
//直接复制以下内容也行
options {

    listen-on port 53 { any; }; // 监听在主机的53端口上。any代表监听所有的主机
    directory       "/var/named"; // 此档案底下有规范到正反解的zone file档名时,该档名预设放置根目录

    // 下面三项是服务的相关统计信息

    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服务器提出查询请求。any代表任何人
    recursion yes;
    dnssec-enable yes;
    dnssec-validation yes;
    dnssec-lookaside auto;
    forwarders { // 指定上层DNS服务器
        100.100.2.138;
    };
    bindkeys-file "/etc/named.iscdlv.key";
    managed-keys-directory "/var/named/dynamic";
};

logging {

    channel default_debug {
        file "data/named.run";
        severity dynamic;
    };

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

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

自定义域名解析配置

vim /etc/named.rfc1912.zones
# 这个文件需要在最后面进行追加操作, 例如:
zone "test.local" IN {
    type master;
    file "test.local.zone";
};

自定义编写test.local.zone文件

root@japan:~ # cat /var/named/test.local.zone 
$TTL 86400
@   IN  SOA ns.test.local. root (
                            1   ; serial
                            1D   ; refresh
                            1H   ; retry
                            1W   ; expire
                            0)   ; minimum
@   IN  NS  ns.test.local.
ns  IN  A   127.0.0.1
www.test.local.  IN  A  xxx
test.local.  IN  A   xxx

其中 ns.test.local 代表当前dns服务器名称。所以 ns.test.local 一定要解析到自己本身,注意,不要忘记最后面的小数点,

修改这个文件的权限

chown root:named /var/named/test.local.zone

启动服务

systemctl enable --now named

配置防火墙规则

iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 953 -j ACCEPT
service iptables save

到这儿,基本上就完了,此时我们可以手动修改本地dns,也可以利用openvpn的推送dns选项功能来实现连接vpn才能解析test.local的功能

说到这儿,顺便提下,windows10中完整查看本机的dns配置(不同的网络接口),可以这样操作,如下图:

image.png