本人对DNS的理解:
-->主从DNS服务器:
主DNS服务器(Master DNS): 数据库更新由管理员手动完成;
辅助DNS服务器 (SlaveDNS):数据库更新从主服务器或其他辅助DNS服务器那里完成;
注意:如果您感觉内容不理解,那么请到以下分支查看你所需要的内容:
1. 总结 DNS and BIND: http://xiaomazi.blog.51cto.com/5891742/1376225
2. 分支1- 正/反向域名解析之yum与编译安装: http://xiaomazi.blog.51cto.com/5891742/1376228
3. 分支2- 主从DNS服务器: http://xiaomazi.blog.51cto.com/5891742/1376231
4. 分支3- 子域授权、请求转发: http://xiaomazi.blog.51cto.com/5891742/1377087
5. 分支4- ACL 及 view视图: http://xiaomazi.blog.51cto.com/5891742/1377090
① 这里我是基于2和3的配置的基础之上实现的详情请查看:
http://xiaomazi.blog.51cto.com/5891742/1376228
一、DNS的常用命令:
1.测试解析命令.
1). dig命令:
# dig [-t type] [-x addr] [name] [@server]
+[no]trace-->(跟踪解析过程)
+[no]recurse-->(是否使用递归的方式)
+[no]tcp -->(是否使用tcp查询,而不使用udp)
+[no]question-->(是否隐藏问题)
+[no]answer-->(是否隐藏答案)
+[no]authority-->(是否隐藏权威段)
+[no]additional-->(是否隐藏附加段)
2). host命令:
# host [-t type] {name} [server]
例子:
[root@localhost ~]# host -t MX xiaoma.com
xiaoma.com mail ishandled by 10mail.xiaoma.com.
[root@localhost ~]#
3). nslookup命令(交互式的命令):
nslookup>
server DNS_SERVER_IP
set q=TYPE
{name}
例子:
[root@localhost ~]# nslookup
> setq=A
> www.xiaoma.com
Server:172.16.17.202
Address:172.16.17.202#53
Name:www.xiaoma.com
Address: 172.16.17.203
>
2.启动/重加载命令:
1).启动命令:
# named -u named
# servcice named start(这个可能会依赖rndc.key的)
2).重载命令:
# service named reload
# killall -1 named
# killall named(关闭)
3.测试语法错误:
# service named configtest
# named-checkconf
# named-checkzone "xiaoma.com" /var/named/xiaoma.com.zone
二、区域传送的 主从复制:
注意:
这里的主机名字我改了,为了方便认出 主和从 的;
主DNS服务器: host1
从DNS服务器: host2
----不在同一网段也可以同步----
前提:
挂载光盘:
[root@host2 ~]# mkdir /media/cdrom
[root@host2 ~]# mount /dev/cdrom /media/cdrom/
mount: block device /dev/sr0 iswrite-protected, mounting read-only
配置本地yum源:
[root@host2 ~]# cd /etc/yum.repos.d/
[root@host2 yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.bak
[root@host2 yum.repos.d]# vim media1.repo
[media1]
name=media1
baseurl=file:///media/cdrom
enabled=1
gpgcheck=0
-->将准备好的bind包安装:
[root@localhost ~]# yum -y install bind
1.配置正向主从服务的实现:
1).主服务器配置 /var/named/xiaoma.com.zone:
2).主服务器配置 重新加载区域文件:
[root@host1 ~]# service named reload
Reloading named: [ OK ]
3).测试主从服务器是否能通信:
2).从服务器配置 /etc/named.conf:
注意:
这里只是把注释的内容贴出来了:
//listen-on port 53{ 127.0.0.1; };
//listen-on-v6 port 53{ ::1; };
//allow-query { localhost; };
//dnssec-enable yes;
//dnssec-validation yes;
//dnssec-lookaside auto;
//bindkeys-file"/etc/named.iscdlv.key";
//managed-keys-directory "/var/named/dynamic";
//include "/etc/named.root.key";
3).从服务器配置 vim /etc/named.rfc1912.zones:
4).从服务器配置 启动并查看端口53是否启动:
[root@host2 ~]# named -u named
[root@host2 ~]# ss tunl
5).从服务器配置查看/var/named/slaves/xiaoma.com.zone是否以同步:
6).从服务器配置 测试解析:
7).主服务器配置 重新加载并修改序列号:
I.添加一条记录并修改序列号:
II.重新加载:
[root@host1 ~]# service named reload
Reloading named: [ OK ]
8).查看日志:
9).从服务器 查看是否同步:
10).其它解析:
[root@host2 ~]# dig -t NS xiaoma.com @172.16.17.100
[root@host2 ~]# dig -t MX xiaoma.com @172.16.17.100
[root@host2 ~]# dig -t CNAME pop.xiaoma.com @172.16.17.100
[root@host2 ~]# dig -t CNAME ftp.xiaoma.com @172.16.17.100
接上(1.配置正向主从服务的实现)
2.配置反向主从服务的实现:
1).从服务器配置 vim /etc/named.rfc1912.zones :
2).从服务器 测试语法并重新加载:
[root@host2 ~]# named-checkconf
[root@host2 ~]# service named reload
Reloading named: [ OK ]
3).从服务器 查看日志:
4).从服务器 查看同步文件:
5).将主服务器的记录添加至反向记录:
我们在主服务器(/var/named/172.16.17.zone)里面加一条NS记录,告诉主服务器有一个从服务器.(ns2、img以及从服务器的记录).
6).启动服务并重新加载:
7).主服务器 查看日志:
8).从服务器 查看同步:
接上面(2.配置反向主从服务的实现)
3.区域传送的安全控制:
注意:我们都知道默认在未设置安全控制的情况下,DNS服务器的区域传送是传送所有服务器的,那么我们应该如何防范别人同步你的服务器的数据呢?
1).主服务器配置 vim /etc/named.rfc1912.zones :
2).主服务器配置 测试语法/重加载:
[root@host1 ~]# named-checkconf
[root@host1 ~]# service named reload
Reloading named: [ OK ]
[root@host1 ~]#
3).主服务器 测试区域传送:
4).从服务器 测试区域传送:
6).定从服务器的安全控制 vim /etc/named.rfc1912.zones:
7).从服务器 测试语法/重加载
[root@host2 ~]# named-checkconf
[root@host2 ~]# service named reload
Reloading named:
8).从服务器 测试:
A smile is the most beautiful language!!!
以本人的理解而写出博客,如若有错误,欢迎指出.
---->小马子
转载于:https://blog.51cto.com/xiaomazi/1376231