1、系统环境说明

[root@dns-server etc]# cat /etc/redhat-release
CentOS Linux release 7.3. (Core) 防火墙和Selinux关闭
[root@dns-server etc]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld() Oct :: localhost.localdomain systemd[]: Starting firewalld - dynamic firewall daemon...
Oct :: localhost.localdomain systemd[]: Started firewalld - dynamic firewall daemon.
Oct :: localhost.localdomain systemd[]: Stopping firewalld - dynamic firewall daemon...
Oct :: localhost.localdomain systemd[]: Stopped firewalld - dynamic firewall daemon.
[root@dns-server etc]# getenforce
Permissive [root@dns-server etc]# hostname -I
10.0.3.57

2、安装bind

[root@dns-server ~]# yum install  bind*  -y
[root@dns-server ~]# rpm -ql bind
/etc/named.conf # 主配置文件
/etc/named.rfc1912.zones # 区域解析库文件
/var/log/named.log #日志文件
/var/named #服务根目录

3、修改配置文件

[root@dns-server ~]# cp /etc/named.conf{,.bak}
[root@dns-server ~]# vim /etc/named.conf
#删除IPv6地址,修改监听地址
options {
listen-on port { 10.0.3.57; };
....
allow-query { localhost;any; }; //允许DNS查询客户端
...
}

4、启动bind服务

#检查配置文件
[root@dns-server ~]# named-checkconf /etc/named.conf #启动bind服务
[root@dns-server ~]# systemctl start named
[root@dns-server ~]# netstat -lntup|grep
tcp 10.0.3.57: 0.0.0.0:* LISTEN /named
tcp 127.0.0.1: 0.0.0.0:* LISTEN /named
tcp6 ::: :::* LISTEN /named
udp 10.0.3.57: 0.0.0.0:* /named #测试DNS服务器 dig @表示指定NDS服务器
[root@dns-server ~]# dig baidu.com @10.0.3.57
; <<>> DiG 9.9.-RedHat-9.9.-.el7_5. <<>> baidu.com @10.0.3.57
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id:
;; flags: qr rd ra; QUERY: , ANSWER: , AUTHORITY: , ADDITIONAL: ;; OPT PSEUDOSECTION:
; EDNS: version: , flags:; udp:
;; QUESTION SECTION:
;baidu.com. IN A ;; ANSWER SECTION:
baidu.com. IN A 123.125.115.110
baidu.com. IN A 220.181.57.216 ;; AUTHORITY SECTION:
baidu.com. IN NS ns2.baidu.com.
baidu.com. IN NS ns7.baidu.com.
baidu.com. IN NS dns.baidu.com.
baidu.com. IN NS ns4.baidu.com.
baidu.com. IN NS ns3.baidu.com. ;; ADDITIONAL SECTION:
dns.baidu.com. IN A 202.108.22.220
ns2.baidu.com. IN A 61.135.165.235
ns3.baidu.com. IN A 220.181.37.10
ns4.baidu.com. IN A 220.181.38.10
ns7.baidu.com. IN A 119.75.219.82 ;; Query time: msec
;; SERVER: 10.0.3.57#(10.0.3.57)
;; WHEN: Thu Oct :: CST
;; MSG SIZE rcvd:

5、搭建内网DNS服务器

让当前的DNS解析qipai.com域名

/etc/named.conf
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
主配置文件中指定了/etc/named.rfc1912.zones文件
01.将域名 IP 关系存储在DNS上,在 /etc/named.rfc1912.zones 文件中进行添加
[root@clsn6 ~]# vim /etc/named.rfc1912.zones
zone "qipai.com" IN { # qipai.com是域名
type master; # 表示权威DNS,即第一个
file "qipai.com.zone"; # 域数据库,默认位于/var/named/下面,只需告知文件名qipai.com.zone是库文件名
};
需要解析多个域名时,在来一个zone然后创建对应的域名文件就OK了。
02.以
/var/named目录下的named.localhost为模板,创建qipai.com.zone文件,创建区域数据库
[root@dns-server ~]# cd /var/named/
[root@dns-server named]#  cp -av named.localhost qipai.com.zone
'named.localhost' -> 'nmtui.com.zone' ## 注意cp -a 保持原有属性
03.解析区域数据库格式,存放域名与IP的对应关系
[root@dns-server named]# cat qipai.com.zone
$TTL 1D
@       IN SOA  @ qipai.top. (
; serial
1M ; refresh
1M ; retry
1M ; expire
3M ) ; minimum
NS @
admin A 10.0.3.10
gm2.admin A 10.0.3.10
@ A 10.0.3.10

6、检查配置文件,重启bind服务

[root@dns-server named]# named-checkzone qipai.com /var/named/qipai.com.zone
zone qipai.com/IN: loaded serial
OK
[root@dns-server named]# systemctl restart named

7、测试DNS是否生效

Linux测试

[root@dns-server named]# dig qipai.com @10.0.3.57

; <<>> DiG 9.9.-RedHat-9.9.-.el7_5. <<>> qipai.com @10.0.3.57
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id:
;; flags: qr aa rd ra; QUERY: , ANSWER: , AUTHORITY: , ADDITIONAL: ;; OPT PSEUDOSECTION:
; EDNS: version: , flags:; udp:
;; QUESTION SECTION:
;qipai.com. IN A ;; ANSWER SECTION:
qipai.com. IN A 10.0.3.10 ;; AUTHORITY SECTION:
qipai.com. IN NS qipai.com. ;; Query time: msec
;; SERVER: 10.0.3.57#(10.0.3.57)
;; WHEN: Thu Oct :: CST
;; MSG SIZE rcvd: [root@dns-server named]#

修改网卡配置文件(/etc/sysconfig/network-scripts/ifcfg-eth0需要重启网卡生效)或  /etc/resolv.conf (即时生效)指定DNS解析

Windows测试,指定DNS服务器

更多详情参考 bind9中文手册
https://www.centos.bz/manual/BIND9-CHS.pdf
https://www.linuxprobe.com/set-up-dns-server.html

Centos7.3搭建DNS服务器--BIND的更多相关文章

  1. 搭建DNS服务器-bind

    1. 安装 yum install -y bind-chroot yum install -y bind-utils service named-chroot start    2. 修改配置 增加一 ...

  2. 简单搭建DNS服务器——bind

    1安装bind yum install -y bind bind-utils bind-chroot 2 修改配置文件 # grep '^[^#]' /etc/named.conf options { ...

  3. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

    centos  DNS服务搭建  DNS原理  使用bind搭建DNS服务器 配置DNS转发 配置主从  安装dig工具  DHCP  dhclient  各种域名解析记录  mydns DNS动态更 ...

  4. Centos7 搭建DNS服务器与原理配置详解

    在搭建我们自己DNS服务器之前,先必须了解下DNS服务器的作用和原理. DNS是在互联网上进行域名解析到对应IP地址的服务器,保存互联网上所有的IP与域名的对应信息,然后将我们对网址的访问,解析成IP ...

  5. centos6.5环境DNS-本地DNS服务器bind的搭建

    centos6.5环境DNS-本地DNS服务器bind的搭建 域名系统(英文:Domain Name System,缩写:DNS)是因特网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库, ...

  6. [转]DNS服务器原理详解与Centos6.x下搭建DNS服务器

    转自:http://blog.it985.com/8958.html DNS 数据库的记录:正解,反解, Zone 的意义 通过DNS解析过程详解这篇文章,我们知道了要想访问www.zmit.cn,最 ...

  7. 第一次搭建dns服务器

    CentOS 7 搭建DNS服务器 主要参考的是小左先森的一篇博客:https://blog.51cto.com/13525470/2054121. 1.搭建过程中遇到的几个问题说一下: a.在重启服 ...

  8. Windows Server 2008 R2 搭建DNS服务器(转)

    Windows Server 2008 R2 搭建DNS服务器将本机IP设为首选DNS服务器的地址在dos 下分别输入 nslookup www.mydns.com 和 nslookup 192.16 ...

  9. centos搭建dns服务器

    前言:搭建dns服务器,dns服务器我就不多说什么了,大家都懂,就是域名解析,就将ip装换为域名,域名就可以理解为类似这样的www.baidu.com网址,接下来我就直接上图了.这里面最重要的是修改u ...

随机推荐

  1. 绑定到异步的ObservableCollection

    原文:绑定到异步的ObservableCollection 在进行WPF开发过程中,需要从一个新的线程中操作ObservableCollection,结果程序抛出一个NotSupportedExcep ...

  2. Python实例讲解 -- 获取本地时间日期(日期计算)

    1. 显示当前日期: print time.strftime('%Y-%m-%d %A %X %Z',time.localtime(time.time())) 或者 你也可以用: print list ...

  3. [Unity3D]Unity3D叙利亚NGUI血液和技能的冷却效果

    ---------------------------------------------------------------------------------------------------- ...

  4. 【codeforces】Codeforces Round #277 (Div. 2) 解读

    门户:Codeforces Round #277 (Div. 2) 486A. Calculating Function 裸公式= = #include <cstdio> #include ...

  5. asp .net Cookies

    Request.Cookies和Response.Cookies When validating cookies or cookie data from the browser you should ...

  6. 【转载】json 数据 添加 删除 排序

    张映 发表于 2014-02-10 分类目录: js/jquery 标签:json, 删除, 排序, 添加 js数据格式和json数据格式,各有各的用处,就个人而言,json更好用一点,js自身的数组 ...

  7. XF 键盘类型设置

    键盘类型: default Chat-输入短信或表情 Email Numeric Telephone Url-输入网址和文件路径 其他额外选项: CapitalizeSentence SpellChe ...

  8. 读BeautifulSoup官方文档之html树的搜索(1)

    之前介绍了有关的四个对象以及他们的属性, 但是一般情况下要在杂乱的html中提取我们所需的tag(tag中包含的信息)是比较复杂的, 现在我们可以来看看到底有些什么搜索的方法. 最主要的两个方法当然是 ...

  9. jquery QQ微博

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. WPF最大化避免覆盖任务栏

    原文:WPF最大化避免覆盖任务栏 WPF当窗体WindowStyle=”None”时,最大化会覆盖掉任务栏.如何解决这个问题呢? 我在Google里面搜到一篇文章,要用到Win32 API,通过让WP ...