点击返回架构师成长之路

架构师成长之路6.3 DNS服务器搭建(部署单台DNS)

1.安装bind

yum -y install bind-utils bind bind-devel bind-chroot bind-libs

2.编辑/etc/named.conf

  • 全局配置:options {};
  • 日志子系统配置:logging {};
  • 区域定义:本机能够为哪些zone进行解析,就要定义哪些zone。
                       zone "ZONE_NAME" IN {};

注意:任何服务程序如果期望其能够通过网络被其它主机访 问,至少应该监听在一个能与外部主机通信的IP地址上。

options {
version "1.1.1";
listen-on port 53 {any;}; #表示使用53端口
directory "/var/named/chroot/etc/";#用来指定zone(A记录/MX记录等)文件配置路径,注意chroot加强安全性
pid-file "/var/named/chroot/var/run/named/named.pid"; #当服务起来的时候,pid的位置
allow-query { any; };#允许解析访问的权限,可以是ip地址或ip段
Dump-file "/var/named/chroot/var/log/binddump.db";
Statistics-file "/var/named/chroot/var/log/named_stats";#可以看到解析数量/成功率等,用于监控
zone-statistics yes;# 配置yes,才能写入
memstatistics-file "log/mem_stats";
empty-zones-enable no; #不允许配置zone,却没有记录
forwarders {202.106.196.115;8.8.8.8; };#外部转发至以下IP地址
}; key "rndc-key" { # 生成rndc控制命令的key文件,rndc与bind之间使用md5认证
algorithm hmac-md5;
secret "Eqw4hClGExUWeDkKBX/pBg==";
}; controls {
inet 127.0.0.1 port 953 #连接的实际是953,不是53
allow { 127.0.0.1; } keys { "rndc-key"; };
}; logging { #指定日志记录分类和他们的目标位置
channel warning {
file "/var/named/chroot/var/log/dns_warning" versions 10 size 10m;#日志轮转10次,每次10M
severity warning;
print-category yes;
print-severity yes;
print-time yes;
};
channel general_dns {
file "/var/named/chroot/var/log/dns_log" versions 10 size 100m;#日志轮转10次,每次100M
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category default {
warning;
};
category queries {
general_dns;
};
}; include "/var/named/chroot/etc/view.conf"; # viem简单实现智能DNS功能

3.编辑/etc/rndc.key

内容需要与/etc/named.conf中的key一样

key "rndc-key" {
algorithm hmac-md5;
secret "Eqw4hClGExUWeDkKBX/pBg==";
};

4.编辑/etc/rndc.conf

默认没有此文件。

key "rndc-key" {
algorithm hmac-md5;
secret "Eqw4hClGExUWeDkKBX/pBg==";
}; options {
default-key "rndc-key";
default-server 127.0.0.1;
default-port 953;
};

5.编辑/var/named/chroot/etc/view.conf

view "View1" {  #View1只是一个view名称
allow-transfer {
#dns-ip-list;
};
notify yes;
also-notify {
#dns-ip-list;
}; # ixfr-from-differences yes;
zone "carlos.com" {
type master; #master:表示定义的是主域名服务器,slave :表示定义的是辅助域名服务器 
file "carlos.com.zone"; #与文件对应的zone文件
allow-transfer { #允许谁同步信息
192.168.56.14;
};
notify yes; #当我的master配置文件发生变更时,通知以下IP
also-notify {
192.168.56.14;
};
};
zone "forward.com" {
type forward;
forwarders { 10.255.253.220; };
};
};

6.编辑/var/named/chroot/etc/com.zone

\$ORIGIN .   #zone生效的域
\$TTL 3600 ; 1 hour
carlos.com IN SOA op.Carlos.com. dns.carlos.com. (
2000 ; serial #多DNS时候,以数量增加确认同步是否正常
900 ; refresh (15 minutes)#同步数据超15min失败
600 ; retry (10 minutes)#同步失败后10min重传一次
86400 ; expire (1 day)# 过期时间1day
3600 ; minimum (1 hour)#TTL
)
NS op.carlos.com.
\$ORIGIN carlos.com.
shanks A 1.2.3.4
op A 1.2.3.4

7.修改目录权限  

cd /var && chown -R named.named named/ #修改目录权限
/etc/init.d/named start #启动
chkconfig named on #加开机启动

8.监听端口

.....

架构师成长之路6.3 DNS服务器搭建(部署单台DNS)的更多相关文章

  1. 架构师成长之路2.3-PXE+Kickstart无人值守大量部署Linux

    点击返回架构师成长之路 架构师成长之路2.3-PXE+Kickstart无人值守大量部署Linux 所谓的无人值守,就是自动应答,当安装过程中需要人机交互提供某些选项的答案时(如如何分区),自动应答文 ...

  2. 架构师成长之路6.6 DNS服务器搭建(构建企业级DNS)

    点击返回架构师成长之路 架构师成长之路6.6 DNS服务器搭建(构建企业级DNS) 采用LVS-DR模式负载均衡,多IDC,多套DNS集群,通过master-slave技术保证dns配置的一致性. 1 ...

  3. 架构师成长之路6.5 DNS服务器搭建(添加记录、负载均衡、DNS视图)

    点击返回架构师成长之路 架构师成长之路6.5 DNS服务器搭建(添加记录.负载均衡.DNS视图)  部署主DNS : 点击 部署从DNS : 点击 1.添加A记录.CNAME记录.MX记录.PTR记录 ...

  4. 架构师成长之路6.4 DNS服务器搭建(部署主从DNS)

    点击返回架构师成长之路 架构师成长之路6.3 DNS服务器搭建(部署主从DNS)  部署主DNS : 点击 部署从DNS : 如下步骤 1.与主DNS一样,安装bind yum -y install ...

  5. 架构师成长之路6.2 DNS配置文件

    点击返回架构师成长之路 架构师成长之路6.2 DNS 配置文件 /etc/hosts 主机的一个文件列表 ,添加记录如:111.13.100.92   www.baidu.com 对于简单的主机名解析 ...

  6. 架构师成长之路6.1 DNS理论

    点击返回架构师成长之路 架构师成长之路6.1 DNS理论 1.DNS一些基本概念       ① FQDN:Full Qualified Domain Name,完全限定域名,即每个域在全球网络都是唯 ...

  7. 架构师成长之路7.1 CDN理论

    点击返回架构师成长之路 架构师成长之路7.1 CDN理论 CDN,Content Distribute Network,内容分发网络:CDN解决的是如何将数据快速可靠从源站传递到用户的问题.用户获取数 ...

  8. 架构师成长之路2.4-Kickstart文件剖析

    点击返回架构师成长之路 架构师成长之路2.4-Kickstart文件剖析 kickstart文件是一个简单的文本文件,它包含了一个项目列表,每个项目由一个关键字来识别. 创建kickstart文件注意 ...

  9. 架构师成长之路3.1-Cobber原理及部署

    点击返回架构师成长之路 架构师成长之路3.1-Cobber原理及部署 Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装.重装物理服务器和虚拟机,同时还可以管理 ...

随机推荐

  1. CF1060E Sergey and Subways 假的点分治

    题目传送门:http://codeforces.com/problemset/problem/1060/D 题意:给出$N$个点的一棵树,现在将距离为$2$的点之间连一条边,求所有点对之间最短路的和, ...

  2. (原创)odoo在docker环境下无法备份

    odoo容器内置postgresql-client版本和数据库版本不一致,安装和数据库版本相同或者更高版本的客户端 参考:https://www.postgresql.org/download/lin ...

  3. 决策树(ID3,C4.5,CART)原理以及实现

    决策树 决策树是一种基本的分类和回归方法.决策树顾名思义,模型可以表示为树型结构,可以认为是if-then的集合,也可以认为是定义在特征空间与类空间上的条件概率分布. [图片上传失败...(image ...

  4. bash:express:command not found

    重新设置了node_global和node_cache目录后,总是显示command not found 找了几篇博文后,终于解决了这个问题   步骤如下: 1.新建node_global和node_ ...

  5. [2019校招] - Java多线程面试题总结

    Object 的 wait()和notify() 方法 下图为线程状态的图: Object 对象中的 wait()和notify()是用来实现实现等待 / 通知模式.其中等待状态和阻塞状态是不同的.等 ...

  6. nginx通过https方式反向代理多实例tomcat

    案例说明:前面一层nginx+Keepalived部署的LB,后端两台web服务器部署了多实例的tomcat,通过https方式部署nginx反向代理tomcat请求.配置一如下: 1)LB层的ngi ...

  7. websocket(三)——基于node sockit.io的即时通讯

    通过前面的学习发现,常见的websocket虽然可以很好地实现服务端和客户端的信息传递,但二者之间传递的数据只是简单的字符串,这对事物的描述,信息的传递是非常不友好的,下面将引入socket.io,来 ...

  8. 程序设计第三次作业---C++计算器雏形

    Github链接:https://github.com/Wasdns/object-oriented 题目:程序设计第三次作业 程序设计第三次作业附加 我的程序设计第三次作业附加 代码规范 更新时间: ...

  9. a simple example for spring AOP

    /** * Created by Administrator on 2015/11/25. * a interface */public interface ArithmeticCalculator{ ...

  10. shell脚本--输入与输出

    输出带有转义字符的内容 单独一个echo表示一个换行 使用echo输出时,每一条命令之后,都默认加一个换行:要想取消默认的换行,需要加 -n 参数. #!/bin/bash #文件名:test.sh ...