DNS集群搭建实战

实验环境:RHEL7.0

主DNS   server1.example.com  172.25.254.1

辅助DNS server2.example.com  172.25.254.2

实验内容:1.主DNS配置

2.辅助DNS配置

3.辅助DNS动态获取主DNS数据

4.DNS更新

5.有Key才能对主机进行更新

6.DDNS搭建

前提:装bind软件,关火墙,关SELINUNX,开启53端口

1.主DNS配置(IP:172.25.254.158)  

    1)vim /etc/named.conf  

//    listen-on port 53 { 127.0.0.1; };

//    allow-query     { localhost; };

dnssec-validation no;     (//代表开启着接口)

    2)vim /etc/named.rfc1912.zones  

zone "willis.com" IN {
                type master;
                file "willis.com.zone";
                allow-update { none; };
                allow-transfer { 172.25.254.2; };##允许谁同步
        };

    3)cp -p /var/named/      /var/named/willis.com.zone#特殊文件,注意权限

    4)vim /var/named/willis.com.zone 

$TTL 1D
            @       IN SOA  dns.willis.com. root. (
                                                    0       ; serial
                                                    1D      ; refresh
                                                    1H      ; retry
                                                    1W      ; expire
                                                    3H )    ; minimum
            NS      dns.willis.com.
            dns     A       172.25.254.1
            www     A       172.25.254.1
    5)vim /etc/resolv.conf   

nameserver 172.25.254.1

  6)systemctl start named 

2.辅助DNS

 1)vim /etc/named.conf     

//    listen-on port 53 { 127.0.0.1; };

//    allow-query     { localhost; };

dnssec-validation no;

    2)vim /etc/named.rfc1912.zones  

zone "willis.com" IN {
                type slave;

masters { 172.25.254.1; };

file "slaves/willis.com.zone";
                allow-update { none; };
        };

    3)vim /etc/resolv.conf  

nameserver 172.25.254.1
  

4)systemctl start named  

3.辅助DNS动态获取主DNS数据(数据同步)

1)主DNS     

    1-1)vim /etc/named.rfc1912.zones

zone "willis.com" IN {

type master;

file "w.com.zone";

allow-update { none; };

allow-transfer { 172.25.254.2; };

also-notify { 172.25.254.2; }; ##添加此条,当DNS文件发生改变时,将数据推送给谁

};

    1-2)vim /var/named/willis.com.zone  

$TTL 1D

@    IN SOA    dns.willis.com.  root. (

31    ; serial   #此值改变,进行数据推送

1D    ; refresh

1H    ; retry

1W    ; expire

3H )    ; minimum

NS    dns.willis.com.

dns    A    172.25.254.1

www    A       172.25.254.1

    1-3)systemctl restart named   


2)辅助DNS  

2-1)vim /etc/resolv.conf

named 172.25.254.1

[[email protected] slaves]# ls
willis.com.zone
[[email protected] slaves]# rm -rf willis.com.zone
[[email protected] slaves]# ls
[[email protected] slaves]# dig www.willis.com

; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> www.willis.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63871
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.willis.com.            IN    A

;; ANSWER SECTION:
www.willis.com.        86400    IN    A    172.25.254.1

;; AUTHORITY SECTION:
willis.com.        86400    IN    NS    dns.willis.com.

;; ADDITIONAL SECTION:
dns.willis.com.        86400    IN    A    172.25.254.1

;; Query time: 0 msec
;; SERVER: 172.25.254.1#53(172.25.254.1)
;; WHEN: Wed Sep 07 20:32:55 CST 2016
;; MSG SIZE  rcvd: 93

[[email protected] slaves]# ls
willis.com.zone

4.DNS更新(远程主机对DNS A记录修改)

cp -p /var/named/westos.com.zone  /mnt  ##备份,便于恢复

    1)主DNS     

    1-1)vim /etc/named.rfc1912.zones
zone

zone "willis.com" IN {
                    type master;
                    file "willis.com.zone";
                    allow-update { 172.25.254.2; };  ##添加此条,允许那个远程主机DNS更新主机DNS A记录 
                    allow-transfer { 172.25.254.2; };
                    also-notify { 172.25.254.2; };
            };

    1-2)chmod g+w /var/named    ###此目录必须对named组有执行

   1-3)systemctl restart named  

    2)辅助DNS(远程DNS)进行更新  

[[email protected] slaves]# nsupdate
> server 172.25.254.1
> update add hello.willis.com 86400 A 172.25.254.3
> send

    3)测试  dig hello.willis.com   

[[email protected] slaves]# dig hello.willis.com

; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> hello.willis.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8312
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;hello.willis.com.        IN    A

;; ANSWER SECTION:
hello.willis.com.    86400    IN    A    172.25.254.3

;; AUTHORITY SECTION:
willis.com.        86400    IN    NS    dns.willis.com.

;; ADDITIONAL SECTION:
dns.willis.com.        86400    IN    A    172.25.254.1

;; Query time: 0 msec
;; SERVER: 172.25.254.1#53(172.25.254.1)
;; WHEN: Wed Sep 07 20:47:58 CST 2016
;; MSG SIZE  rcvd: 95

4)恢复  rm -rf  /var/named/willis.com.zone

rm -rf  /var/named/willis.com.zone.jnl

cp -p /mnt/willis.come.zone    /var/named/

5.有Key才可对主机进行更新 

1)主DNS    

   1-1)cp -p /etc/rndc.key  /etc/willis.key   

   1-2)cd /mnt 

        dnssec-keygen -a HMAC-MD5 -b 128 -n HOST willis

[[email protected] mnt]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST willis
    Kwillis.+157+54370
[[email protected] mnt]# ls
    Kwillis.+157+54370.key  Kwillis.+157+54370.private
[[email protected] mnt]# cat Kwillis.+157+54370.key
    willis. IN KEY 512 3 157 D3lJsH/gcsyTGmQfDKl/DA==

1-3)vim /etc/willis.key  

key "willis" {
            algorithm hmac-md5;
            secret "D3lJsH/gcsyTGmQfDKl/DA==";
        };

  1-4)vim /etc/named.conf    

在options {};外添加 include "/etc/willis.key";

  1-5)vim /etc/named.rfc1912.zones

修改为allow-update { key willis; };

  1-6)scp Ksteven.+157+09355.*  [email protected]:/mnt/         

  1-7)systemctl restart named 

2)辅助DNS 

[[email protected] slaves]# nsupdate    
> server 172.25.254.1
> update add wahaha.willis.com 86400 A 172.25.254.3
> send
update failed: REFUSED      ###DNS更新失败

[[email protected] slaves]# nsupdate -k /mnt/Kwillis.+157+54370.private
> server 172.25.254.1
> update add wahaha.willis.com 86400 A 172.25.254.3
> send

###添加密码认证后更新成功

测试)

[[email protected] slaves]# dig wahaha.willis.com

; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> wahaha.willis.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40086
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;wahaha.willis.com.        IN    A

;; ANSWER SECTION:
wahaha.willis.com.    86400    IN    A    172.25.254.3

;; AUTHORITY SECTION:
willis.com.        86400    IN    NS    dns.willis.com.

;; ADDITIONAL SECTION:
dns.willis.com.        86400    IN    A    172.25.254.1

;; Query time: 0 msec
;; SERVER: 172.25.254.1#53(172.25.254.1)
;; WHEN: Wed Sep 07 21:12:16 CST 2016
;; MSG SIZE  rcvd: 96

6.ddns

DHCP+DNS=DDNS

动态DNS(DDNS)需要DNS和DHCP来协同工作。

Linux下也可以实现DDNS,不过DNS需要Bind8以上的版本,DHCP需要3.0以上的版本。

1)DNS环境恢复

rm -rf /var/named/willis.com.zone

rm -rf /var/named/willis.com.zone.jnl

cp -p /mnt/willis    /var/named/

2)dhcp配置   

2-1  yum install dhcp -y

2-2  cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

(3)vim /etc/dhcp/dhcpd.conf
################################################option domain-name "server1.example.com";

option domain-name-servers 172.25.254.1;

default-lease-time 600;

max-lease-time 7200;

# DHCP server to understand the network topology.

subnet 172.25.254.0 netmask 255.255.255.0 {

range 172.25.254.80 172.25.254.90;

option routers 172.25.254.1;

}

key willis {

algorithm hmac-md5;

secret D3lJsH/gcsyTGmQfDKl/DA==; ####密钥

};

zone yqy.com. {

primary 172.25.254.1;

key willis;

}

(4)systemctl restart named 

systemctl restart dhcpd

附注:man dhcpd.conf 查找关键字key


2.辅助服务器

systemctl restart network

ifconfig  ###得到一个主服务器server的给的一个IP

hostnamectl set-hostname bbs.willis.com

dig bbs.willis.com   ###测试

时间: 2024-10-24 22:40:14

DNS集群搭建实战的相关文章

rabbitmq3.7集群搭建实战

环境: 3台 centos7.4rabbitmq3.7erlang 22 有几种方式安装,这里使用的yum安装(官方推荐) 使用rabbitmq时需要安装erlang,在各个节点上使用vim添加两个repo文件/etc/yum.repos.d/rabbitmq_erlang.repo [rabbitmq_erlang] name=rabbitmq_erlang baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch repo_

Redis5.0集群搭建实战

安装环境: 6台 centos7.4 在各个节点下载官网release包,可以自己去官网找: wget  http://download.redis.io/releases/redis-5.0.5.tar.gz 解压:tar -zxvf redis-5.0.5.tar.gz 进入目录:cd redis-5.0.5,如果自定义了解压目录的话需要另外指定 编译:make ,编译即可,会在src目录下生成二进制文件,即可运行redis 如果编译时出现提示jemalloc/jemalloc.h: No

MySQL-MMM高可用集群搭建实战(全程可跟做!)

MMM高可用集群案例拓扑图: 环境准备: 主服务器1:192.168.18.146 db1 vip:192.168.18.250 主服务器2:192.168.18.147 db2 从服务器1:192.168.18.128 db3 vip:192.168.18.251 从服务器2:192.168.18.148 db4 vip:192.168.18.252 监控服务器:192.168.18.145 Master1: [[email protected] ~]# wget -O /etc/yum.re

《搭建更新DNS集群服务》RHEL6

DNS服务器的更新: 一听就知道不止一台的DNS服务器,要是一台也用不着更新对吧?一般都是DNS集群. 一台DNS更新了,添加一条数据,下面的都要跟着它变. 主DNS服务器的配置 首先先配置DNS服务器信息同步,后面再配置更新DNS服务器: 1.  前面很简单: 安装bind软件包.修改named服务配置文件; Vim /etc/named.conf 2修改zone语句: also-notify     定义一个用于全局的域名服务器IP地址列表.无论何时,当一个新的域文件被调入系统,域名服务器都

[dubbo实战] dubbo+zookeeper伪集群搭建

zookeeper作为注册中心,服务器和客户端都要访问,如果有大量的并发,肯定会有等待.所以可以通过zookeeper集群解决. 一.为什么需要zookeeper呢? 大部分分布式应用需要一个主控.协调器或者控制器来管理物理分布的子进程.目前,大多数都要开发私有的协调程序,缺乏一个通用机制,协调程序的反复编写浪费,且难以形成通用.伸缩性好的协调器,zookeeper提供通用的分布式锁服务,用以协调分布式应用.所以说zookeeper是分布式应用的协作服务. 二.zookeeper的工作原理 核心

Spark修炼之道(进阶篇)——Spark入门到精通:第一节 Spark 1.5.0集群搭建

作者:周志湖 网名:摇摆少年梦 微信号:zhouzhihubeyond 本节主要内容 操作系统环境准备 Hadoop 2.4.1集群搭建 Spark 1.5.0 集群部署 注:在利用CentOS 6.5操作系统安装spark 1.5集群过程中,本人发现Hadoop 2.4.1集群可以顺利搭建,但在Spark 1.5.0集群启动时出现了问题(可能原因是64位操作系统原因,源码需要重新编译,但本人没经过测试),经本人测试在ubuntu 10.04 操作系统上可以顺利成功搭建.大家可以利用CentOS

集群搭建

RabbitMQ 高可用集群搭建及电商平台使用经验总结 面向EDA(事件驱动架构)的方式来设计你的消息 AMQP routing key的设计 RabbitMQ cluster搭建 Mirror queue policy设置 两个不错的RabbitMQ plugin 大型应用插件(Sharding.Rederation) Queue镜像失败手动同步 各集群配置同步方式(RabbitMQ export\import) 客户端连接方式(尽量采用AMQP组来动态链接) RabbitMQ 产线二次产品化

2-20 MySQL集群搭建实现高可用

MySQL集群概述和安装环境 MySQL Cluster是MySQL适合于分布式计算环境的高实用.高冗余版本.Cluster的汉语是"集群"的意思.它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器. MySQL Cluster 是一种技术,该技术允许在无共享的系统中部署"内存中"数据库的 Cluster .通过无共享体系结构,系统能够使用廉价的硬件,而且对软硬件无特殊要求.此外,由于每个组件有自己的内存和磁盘,不存在单

kafka学习(三)-kafka集群搭建

kafka集群搭建 下面简单的介绍一下kafka的集群搭建,单个kafka的安装更简单,下面以集群搭建为例子. 我们设置并部署有三个节点的 kafka 集合体,必须在每个节点上遵循下面的步骤来启动 kafka 服务器,kafka集群需要依赖zookeeper集群,上一篇已经说道了zookeeper的搭建,方法请参考:http://www.cnblogs.com/chushiyaoyue/p/5615267.html 1.环境准备 测试服务器(2n+1)奇数台 192.168.181.128 ce