实验背景:在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. Python Scrapy 自动爬虫注意细节(1)

    一.首次爬取模拟浏览器 在爬虫文件中,添加start_request函数.如: def start_requests(self): ua = {"User-Agent": 'Moz ...

  2. Python 处理命令行参数

    optparse模块用于从命令行直接读取参数,用法基本与 argparse模块 一致,如下: #!/usr/bin/env python #-*- coding:utf-8 -*- from optp ...

  3. int()

    int() 用于将一个对象转换为整数,可转换的对象如下: In [1]: int(') # 将纯数字的字符串转换为整数 Out[1]: 10 In [2]: int(10.6) # 将浮点数转换为整数 ...

  4. C语言之选择结构

    该章内容:本章我们学习三大结构之一:选择结构,采用选择结构来解决问题称为判断问题,它的求解规则是在不同的条件下进行不同的操作.选择结构比顺序结构要复杂一些.本章是考试的重点章节. 学习方法:先了解选择 ...

  5. php执行外部命令

    php执行外部命令的不少,例如:exec.shell_exec.system.popen等.我特意的讲一下popen,它跟其他函数不太一样,其他函数执行一个命令后,会等待其返回后,再向下执行,而pop ...

  6. js里面进行位运算时候的注意事项

    &(按位与):两个操作数都是1就是1 任何数与1按位与的出来的都是其二进制最后一位:任何数与0按位与都是0|(按位或):两个操作数一个是1就是1 任何数与0按位或都是其本身^(按位异或):两个 ...

  7. SpringMvc 400 Bad Request解决方法

    今天做项目的时候突然报出400 Bad Request错误,后台没有出现任何问题. 首先我看了看log日志中没有接受到任何参数,可以确定这个请求并没有发送出去,所以应该是前台数据提交的问题. 然后我看 ...

  8. Linux命令行常用光标移动快捷键

    Linux 命令行快捷键 涉及在Linux命令行下进行快速移动光标.命令编辑.编辑后执行历史命令.Bang(!)命令.控制命令等.让basher更有效率. 常用 ctrl+左右键:在单词之间跳转 ct ...

  9. linux下php安装

    nginx中配置php:  http://www.111cn.net/sys/nginx/64044.htm

  10. Mysql group_concat函数列转行,与行转列

    例一: SELECT num from user 1.使用group_concat函数得到列转行 select group_concat(num) from user 2.使用SUBSTRING_IN ...