实验背景:在Linux系统上配置主要DNS服务器辅助DNS服务器,所在域名为example.com,子网为192.168.X.0。

启动已安装LINUX系统,进行DNS服务器配置。

一、配置主要DNS服务器

1.为linux服务器的默认网卡设置IP地址:192.168.x.1/24,设置完毕后,重启网络服务,查看设定的IP是否生效;虚拟机 XP系统IP地址设置为:192.168.x.3/24,首选DNS为:192.168.X.1。(注:x为自己学号最后两位)

配置网卡网络参数

或 #service network restart 重启网络服务

或 # ip a  查看IP是否生效

2.在/media目录下新建目录RHEL,把第一个光驱/dev/sr0挂载到该目录(注:挂载前先把第一块虚拟光驱装载ISO文件,并连接)

 #mkdir /media/RHEL

  #mount /dev/sr0 /media/RHEL

3. 配置本地yum源,并安装DNS程序包bind

进入yum源配置文件所在目录

在当前目录新建后缀为.repo的yum源配置文件

用vi 编辑该配置文件,并写入yum源的配置代码,保存退出

用yum命令安装bind程序包

4. 编辑主配置文件/etc/named.conf,在配置文件中新建正向查找区域:example.com和反向查找区域:x.168.192.in-addr.arpa

编辑DNS主配置文件

新建正反向查找区域

5. 进入区域文件目录/var/named,复制模板文件生成正反向查找区域文件:

更改2个区域文件权限

编辑正向查找区域文件:vi /var/named/example.com.zone,新建SOA和NS记录,然后再新建3条

A记录:dns.example.com~192.168.X.1,www.example.com~192.168.X.10,mail.example.com~192.168.X.20;新建别名记录:bbs.example.com~www.example.com;新建邮件交换器记录MX,example.com~mail.example.com

新增:1)为FTP服务添加3条A记录,对应的IP地址分别是;192.168.100.11、192.168.100.12、192.168.100.13,实现FTP服务器网络负载均衡功能。2)为本域名添加直接解析域名

6. 编辑反向查找区域文件:vi /var/named/192.168.x.arpa,新建反向PTR指针,1~dns ,10~www,20~mail,11~ftp,12~ftp,13~ftp:

7. 启动named服务

或用:#serive named start

8.在虚拟机XP系统中,进入CMD控制台,通过命令nslookup测试DNS解释是否正确,结果显示超时,失败,查找原因:

1) 进入主配置文件查看

#vi /etc/named.conf

a. 更改选项listen-on port 53 {127.0.0.1;}修改为listen-on port 53 {any;}

代表任意机器监听53端口

b. 更改选项allow-query {localhost;}修改为allow-query {any;},代表允许任意机器查询

2)系统默认是禁用53端口,故需要在防火墙iptables中添加53端口例外:

编辑防火墙主配置文件,添加2个规则

重启防火墙服务

9. 在虚拟机XP系统中,重新进入CMD控制台,通过命令nslookup测试DNS解释是否正确。注:nslookup命令默认是测试A记录,如要测试其它类型的资源记录,要通过命令转换再测试:

set type=MX。

二、配置辅助DNS服务器

在虚拟机上新建多一台虚拟机并安装Linux系统,或通过克隆的方法做多一个Linux系统,用该系统搭建辅助DNS服务器。

1.进入第二台linux系统,为该系统网卡分配IP地址:192.168.X.2/24,并查看IP是否生效。(代码略)

2.挂载系统光盘并安装DNS的服务器组件bind(代码略)

3.进入辅助DNS服务主配置文件,#vi /etc/named.conf,添加正反向查找区域,并指定其对应的区域文件,注意:辅助DNS服务器的区域文件类型type是slave,区域文件是定义在slaves目录下,并且要通过关键字masters指定其主要DNS的IP地址。

4.启动named服务,然后查看/var/named/slaves目录下是否从主要名称服务器中同步生成正反向查找区域文件:

  xample.com.zone和192.168.100.arpa

#systemctl start named

#ll /var/named/slaves

在本机命令窗口用nslookup测试域名解释是否正确

DNS服务器配置实践的更多相关文章

  1. 美图App的移动端DNS优化实践:HTTPS请求耗时减小近半

    本文引用了颜向群发表于高可用架构公众号上的文章<聊聊HTTPS环境DNS优化:美图App请求耗时节约近半案例>的部分内容,感谢原作者. 1.引言 移动互联网时代,APP 厂商之间的竞争非常 ...

  2. Linux DNS 服务器配置与管理

    一.环境介绍: 运行软件:VMware Workstation Pro 14 系统环境:CentOS-7-x86_64-1810 二.操作配置: 1.基础知识简介 (1)域名空间 域和域名: DNS树 ...

  3. 将 DNSCrypt 部署到 Openwrt 路由器上+ DNSmasq 解析国内域名用本地 DNS[ZT+实践]

    原文地址: 1.https://typcn.com/legacy/blog/posts/openwrt-dnscypt.html 2.http://www.openwrt.pro/post-376.h ...

  4. redhat7.3 dns服务器配置

    1.基本配置 systemctl stop firewalld.service systemctl disable firewalld.service setenforce 0 nmcli conne ...

  5. rndc控制远程dns服务器配置方法

    1- 如果不存在/etc/rndc.conf touch /etc/rndc.conf chown named:named /etc/rndc.conf 2- rndc-confgen > /e ...

  6. DNS服务器配置

    导读 DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器.DNS中保存了一张域名(domain ...

  7. [Ubuntu] Ubuntu DNS服务器配置

    服务器IP:10.68.19.61 操作系统:Ubuntu 13.04 DNS程序:Bind9 测试域名:mycloud.com 目标IP:10.68.19.134 配置步骤 1.安装BIND9程序包 ...

  8. dns 服务器配置

    1.安装 named 2.配置如下文件: /etc/named.conf // 2 // named.conf 3 // 4 // Provided by Red Hat bind package t ...

  9. DNS协议 实践

    根据DNS协议发送UDP请求,然后获取IP地址 头文件: #ifndef __DNS__ #define __DNS__ #include <stdio.h> #include <s ...

随机推荐

  1. 服务端用例设计的思(tao)路!

    服务端的测试简单来说就是除了前端以外的的测试. 总的来说可以分为以下两类: 1.     WEB或者APP的提供业务逻辑的服务端接口测试 2.     数据库.缓存系统.中间件..jar包依赖.输入输 ...

  2. NGUI在5.3打包失败问题

    一.NGUI版本 NGUI是很好用的Unity UI插件. 当前使用版本NGUI Next-Gen UI v3.9.7 (Feb 10, 2016)和NGUI Next-Gen UI 3.9.0两个版 ...

  3. C++的virtual详解

    类的多态特性是支持面向对象的语言最主要的特性,有过非面向对象语言开发经历的人,通常对这一章节的内容会觉得不习惯,因为很多人错误的认为,支持类的封装的语言就是支持面向对象的,其实不然,Visual BA ...

  4. cocos2d-x游戏引擎核心之七——数据持久化

    一.XML与JSON XML 和 JSON 都是当下流行的数据存储格式,它们的共同特点就是数据明文,十分易于阅读.XML 源自于 SGML,是一种标记性数据描述语言,而 JSON 则是一种轻量级数据交 ...

  5. js里面函数的内部属性

    1.arguments用來存放传输参数的集合,可以被调用多次,每次数組都不一样,增强了函数的强壮性 实例: function calc() { var sum = 0; /*参数为一个时候*/ if ...

  6. Android英文文档翻译系列(1)——AlarmManager

      原文:个人翻译,水平有限,欢迎看官指正.                                                              public class Ala ...

  7. JavaBean入门及简单的例子

    不会编写JavaBean就不是一个Java开发人员. 那么,何谓JavaBean呢? JavaBean是符合某种规范的Java组件,也就是Java类. 它必须满足如下规范: 1)必须有一个零参数的默认 ...

  8. [Java语言] HashMap,HashSet,Hashtable,Vector,ArrayList 的关系 <转>

    这么几个比较常用的但是比较容易混淆的概念同出于 java.util 包.本文仅作几个类的浅度解析. (本文基于JDK1.7,源码来自openjdk1.7.) ├── Collection │ ├── ...

  9. elk日志分析与发掘深入分析

    elk日志分析与挖掘深入分析 1 为什么要做日志采集? 2 挖财自己的日志采集和分析体系应该怎么建? 2.1 日志的采集 2.2 日志的汇总与过滤 2.3 日志的存储 2.4 日志的分析与查询 3 需 ...

  10. 关于string的length

    在C++里面,std::string的length()返回的是字节数,与编码方式有关. int main() { std::string s = "我是中国人"; std::cou ...