江小南

V1

2022/11/10阅读:16主题:默认主题

如何搭建DNS服务器

引言

平时练习域名解析,一般直接修改的/etc/hosts文件。对于服务器数量小的情况完全可以,但是如果服务器数量较多,每个都修改比较麻烦。

DNS是作为域名解析。在实际的生产过程中,尤其是对于内网搭建的情况,DNS不可能使用互联网的DNS,这时需要我们自行搭建。

环境准备

我这里准备了4台虚拟机。

提供服务 IP地址 域名
DNS 192.168.189.254
Harbor 192.168.189.30 harbor.kubernetes.com
Nfs 192.168.189.31 nfs.kubernetes.com
Nginx 192.168.189.32 nginx.kubernetes.com

实际操作

1. 修改主机名称

hostnamectl set-hostname xxx

2. 修改固定ip

vi /etc/sysconfig/network-scripts/ifcfg-ens33
# ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="d9e74a0c-c0ff-4708-802d-3aa8ed8c4981"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.189.254"
PREFIX="24"
GATEWAY="192.168.189.2"
DNS1="192.168.189.254"
DNS2="119.29.29.29"

每台服务器按照此方法修改,将自己的DNS服务器ip放在前面。然后重启即可。

3. 安装bind

yum install -y bind

4. 关闭防火墙

systemctl stop firewalld
systemctl disable firewalld
firewall-cmd --state

5. 关闭selinux

setenforce 0   # 临时
sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config   # 永久

6. 修改/etc/named.conf

vi /etc/named.conf
# 修改13行和21行,加any;
13         listen-on port 53 { 127.0.0.1;any; };

21         allow-query     { localhost;any; };

7. 修改/etc/named.rfc1912.zones

vi /etc/named.rfc1912.zones
# 注册一段新的域名
zone "kubernetes.com" IN {
        type master;
        file "kubernetes.com.zone";
        allow-update { none; };
};

8. 新建kubernetes.com.zone并修改

cd /var/named/

cp -p named.localhost kubernetes.com.zone
vi kubernetes.com.zone
$TTL 1D
@       IN SOA  kubernetes.com admin.kubernetes.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       NS      ns.kubernetes.com.
ns      A       192.168.189.254
harbor  A       192.168.189.30
www     A       192.168.189.30
nfs     A       192.168.189.31
nginx   A       192.168.189.32

说明:使用Tab隔开,不能使用空格。

9. 启动服务

systemctl enable named

systemctl start named

10. 检查验证

yum -y  install bind-utils
nslookup

分类:

后端

标签:

计算机网络

作者介绍

江小南
V1