RHEL构建DNS服务器-多区域
前言
<沿用单区域配置>
DNS服务器信息: 操作系统版本:RHEL 6.5 (VMware 11 For Linux) 服务器IP地址:192.168.4.7 服务器主机名:dns.lianst.com 负责解析区域:lianst.com,baidu.com
客户端信息: 操作系统版本:RHEL 6.5 (VMware 11 For Linux) 客户端IP地址:192.168.4.6 客户机主机名:pxe.lianst.com
实现如下查询: 能够解析lianst.com(沿用单区域的解析) 能够将www.baidu.com或baidu.com解析为1.2.3.4 能够将music.baidu.com解析为5.6.7.8
一、准备工作
1.修改主机名 2.关闭防火墙(iptables/SELINUX) 3.配置好YUM源
二、安装DNS服务器所需软件
1.所需软件
-bind:bind是Linux下构建DNS服务器的主要软件。
-bind-chroot:bind-chroot是bind的一个功能。一般称之为监牢技术,使bind在chroot模式下运行,也就是说,bind运行时的/(根)目录,并不是系统真正的/(根)目录,只是系统中的一个子目录而已.这样做的目的是为了提高安全性.因为在chroot的模式下,bind可以访问的范围仅限于这个子目录的范围里,无法进一步提升,进入到系统的其他目录中.
-bind监听端口:TCP/UDP 53
-主要服务程序:/usr/sbin/named
-服务脚本:/etc/init.d/named
-运行时的虚拟根环境:/vat/named/chroot
2.使用yum安装软件
[root@dns 桌面]# yum -y install bind bind-chroot
三、配置DNS服务器
1.配置文件位置
-主配置文件:/etc/named.conf
-区域数据文件:/var/named/....
2.配置住配置文件
[root@dns 桌面]# vim /etc/named.conf
.....
options {
listen-on port 53 { any; }; //监听端口{any:任意;网段;主机}
#listen-on-v6 port 53 { ::1; };
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";
allow-query { any; }; //允许那些主机|网段查询,any:任意
recursion yes; //是否开启递归查询,默认是开启的
.....
//对于一台DNS服务器来说,可能不止管理一个区域。当需要支持多个DNS区域的时候,可以在named.conf配置文件中添加新的zone区域定义,并且为这些区域分别制定解析记录文件,然后重新启动DNS服务即可。
zone "lianst.com." IN { //定义正向区域
type master; //定义服务器类型{master;salve;hint}
file "lianst.com.zone"; //定义区域数据文件
};
zone "baidu.com." IN { //定义正向区域
type master; //定义服务器类型{master;salve;hint}
file "baidu.com.zone"; //定义区域数据文件
};
3.配置区域数据文件 3.1 lianst.com区域配置
[root@dns 桌面]# cd /var/named/
[root@dns named]# cp -p named.localhost lianst.com.zone
[root@dns named]# vim lianst.com.zone
$TTL 86400
@ IN SOA @ root.lianst.com. (
2016053001 ; serial //更新序列号,每更新一次加1
4H ; refresh //刷新时间
15M ; retry //重试间隔时间
4H ; expire //超时时间
1D ) ; minimum //无效记录的生存时间
NS dns.lianst.com. //本区域DNS服务器的主机名
dns A 192.168.4.7 //本区域DNS服务器的IP地址
www A 192.168.4.8
mail A 192.168.4.8
~
3.2 baidu.com区域文件配置
[root@dns named]# cp -p lianst.com.zone baidu.com.zone
[root@dns named]# vim baidu.com.zone
$TTL 1D
@ IN SOA @ root.baidu.com. (
201605301 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.baidu.com.
dns A 192.168.4.10
www A 1.2.3.4
mail A 192.168.4.12
music A 5.6.7.8
四、测试DNS服务器
1.测试配置文件是否有误
[root@dns named]# named-checkconf /etc/named.conf //测试配置文件
[root@dns named]# named-checkzone liant.com /var/named/lianst.com.zone //测试区域数据文件
zone liant.com/IN: loaded serial 2016053001
OK
[root@dns named]# named-checkconf /etc/named.conf //测试配置文件
[root@dns named]# named-checkzone baidu.com /var/named/baidu.com.zone //测试区域数据文件
zone liant.com/IN: loaded serial 201605301
OK
[root@dns named]# /etc/init.d/named restart
停止 named: [确定]
Generating /etc/rndc.key: [确定]
启动 named: [确定]
2.在Client
上使用nslookup
命令测试DNS服务器是否能正常解析
[root@pxe ~]# hostname
pxe.lianst.com
[root@pxe ~]# nslookup
> www.lianst.com
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: www.lianst.com
Address: 192.168.4.8
> mail.lianst.com
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: mail.lianst.com
Address: 192.168.4.8
> dns.lianst.com
Server: 192.168.4.7
Address: 192.168.4.7#53
> www.baidu.com
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: www.baidu.com
Address: 1.2.3.4
> music.baidu.com
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: music.baidu.com
Address: 5.6.7.8
>
至此,多区域DNS配置就完成了,相对单区域来说没有增加新的东西,仅仅在主配置文件中多加入一个zone,然后新建一个区域数据文件.只要单区域配置完成,多区域很容易就配置好了.
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Flutter基础widgets教程-TabBarView篇
- 求求你不要在用!=null判空了
- Geant4--root和csv文件存储
- 爬虫模拟登录破解无原图滑动验证码
- Flutter基础widgets教程-TabBarView篇
- python + selenium 爬虫模拟登录破解无原图滑动验证码
- python 轻量级定时框架apscheduler,周中定时给自己发送邮件。
- python 舆情分析 nlp主题分析 (1) 待续
- Flutter基础widgets教程-Text篇
- python 舆情分析 nlp主题分析 (2)-结合snownlp与jieba库,提高分词与情感判断 待续
- No qualifying bean of type 'com.pjh.service.Imp.serviceImp' available和Exception in thread "main" jav
- python音频文件中pcm格式提取
- Spring系列之事务的控制 注解实现+xml实现+事务的隔离等级
- Leetcode刷题 237. 删除链表中的节点 两行代码实现
- python提取视频第一帧图片