项目环境搭建【Docker+k8s】五 || 部署自建DNS系统

目录

1、部署主机

  • YN101-21.host.com

2、安装部署bind9

#安装bind
yum install bind -y
#查看是否安装成功
[ ~]# rpm -qa bind
#输出如下
bind-9.11.4-9.P2.el7.x86_64

3、配置主配置文件

  • 修改named.conf配置文件
vi /etc/named.conf
#文件内容:
options {
        listen-on port 53 { 192.168.101.21; }; #修改为本机ip地址
        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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; }; #改为any,允许所有ip进行查询
        forwarders      { 192.168.101.1; }; #增加该行配置,上一级DNS地址,网关地址
        recursion yes; #DNS采用递归的算法
        dnssec-enable yes; #改为no
        dnssec-validation yes; #改为no

项目环境搭建【Docker+k8s】五 || 部署自建DNS系统

  • 检查配置文件,无任何输出说明配置文件格式正确
named-checkconf /etc/named.conf

4、配置区域配置文件

  • 修改区域配置文件,将以下配置添加到配置文件中,分别配置了主机域和业务域
vi /etc/named.rfc1912.zones
#新增内容
zone "host.com" IN {
    type master;
    file "host.com.zone";
    allow-update { 192.168.101.21; };
};
zone "yn.com" IN {
    type master;
    file "yn.com.zone";
    allow-update { 192.168.101.21; };
};
  • 检查配置文件,无错误信息输出说明配置正确
named-checkzone /etc/named.rfc1912.zones

5、配置区域数据文件

  • 配置主机域数据文件,在/var/named/目录下新建host.com.zone配置文件
vi /var/named/host.com.zone
#将以下配置文件粘贴到新建文件里面,;表示注释
$ORIGIN host.com.
$TTL 600    ; 10 minutes
@   IN SOA  dns.host.com. dnsadmin.host.com. (
                    2020021501  ; serial
                    10800       ; refresh (3 hours)
                    900         ; retry (15 minutes)
                    604800      ; expire (1 week)
                    86400       ; minimum (1 day)
                    )
            NS  dns.host.com.
$TTL 60 ; 1 minute
dns             A   192.168.101.21
YN101-21        A   192.168.101.21
YN101-22        A   192.168.101.22
YN101-31        A   192.168.101.31
YN101-32        A   192.168.101.32
YN101-100       A   192.168.101.100
  • 配置业务域数据文件,在/var/named/目录下新建yn.com.zone配置文件
vi /var/named/yn.com.zone
#将以下配置文件粘贴到新建文件里面,;表示注释
$ORIGIN yn.com.
$TTL 600   ; 10 minutes
@       IN SOA  dns.yn.com. dnsadmin.yn.com. (
                2020021501   ; serial
                10800        ; refresh (3 hours)
                900          ; retry (15 minutes)
                604800       ; expire (1 week)
                86400        ; minimum (1 day)
                )
            NS   dns.yn.com.
$TTL 60 ; 1 minute
dns                    A    192.168.101.21
  • 验证区域数据文件
[ ~]# named-checkzone host.com /var/named/host.com.zone
zone host.com/IN: loaded serial 2020021501
OK
[ ~]# named-checkzone yn.com /var/named/yn.com.zone
zone yn.com/IN: loaded serial 2020021501
OK

6、启动服务

  • 启动bind
systemctl start named
systemctl enable named
  • 启动报错,重点检查配置文件格式(空格,分号等),因为配置文件格式要求严格
#配置文件错误,启动报错
#systemctl status named查看报错信息
[ ~]# systemctl start named
Job for named.service failed because the control process exited with error code. See "systemctl status named.service" and "journalctl -xe" for details.
  • 查看DNS服务是否启动成功
#查看DNS服务是否启动
[ ~]# netstat -luntp|grep 53
tcp        0      0 192.168.101.21:53       0.0.0.0:*               LISTEN      26587/named         
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      26587/named         
tcp6       0      0 :::53                   :::*                    LISTEN      26587/named         
tcp6       0      0 ::1:953                 :::*                    LISTEN      26587/named         
udp        0      0 192.168.101.21:53       0.0.0.0:*                           26587/named         
udp6       0      0 :::53                   :::*                                26587/named
  • 检查是否正常解析
[ ~]# dig -t A YN101-22.host.com @192.168.101.21 +short
 192.168.101.22
  • 查看配置/etc/resolv.conf是否有search host.com,如果没有新增一行search host.com
cat /etc/resolv.conf
#Generated by NetworkManager
search host.com #新增
nameserver 192.168.101.21
  • 修改DNS1,将所有服务器的DNS1改为192.168.101.21,分别ping YN101-22(所有服务器都能ping通)和baidu.com,如果能ping通说明配置成功。

  • window配置,修改VMnet8的DNS服务为192.168.101.21,因为项目要在浏览器中进行访问。设置完成后ping yn101-22.host.com,ping通配置成。
    如果ping不通,修改本地网络的DNS。

项目环境搭建【Docker+k8s】五 || 部署自建DNS系统

相关推荐