Centos7.3搭建DNS服务器--BIND
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的更多相关文章
- 搭建DNS服务器-bind
1. 安装 yum install -y bind-chroot yum install -y bind-utils service named-chroot start 2. 修改配置 增加一 ...
- 简单搭建DNS服务器——bind
1安装bind yum install -y bind bind-utils bind-chroot 2 修改配置文件 # grep '^[^#]' /etc/named.conf options { ...
- centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课
centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更 ...
- Centos7 搭建DNS服务器与原理配置详解
在搭建我们自己DNS服务器之前,先必须了解下DNS服务器的作用和原理. DNS是在互联网上进行域名解析到对应IP地址的服务器,保存互联网上所有的IP与域名的对应信息,然后将我们对网址的访问,解析成IP ...
- centos6.5环境DNS-本地DNS服务器bind的搭建
centos6.5环境DNS-本地DNS服务器bind的搭建 域名系统(英文:Domain Name System,缩写:DNS)是因特网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库, ...
- [转]DNS服务器原理详解与Centos6.x下搭建DNS服务器
转自:http://blog.it985.com/8958.html DNS 数据库的记录:正解,反解, Zone 的意义 通过DNS解析过程详解这篇文章,我们知道了要想访问www.zmit.cn,最 ...
- 第一次搭建dns服务器
CentOS 7 搭建DNS服务器 主要参考的是小左先森的一篇博客:https://blog.51cto.com/13525470/2054121. 1.搭建过程中遇到的几个问题说一下: a.在重启服 ...
- Windows Server 2008 R2 搭建DNS服务器(转)
Windows Server 2008 R2 搭建DNS服务器将本机IP设为首选DNS服务器的地址在dos 下分别输入 nslookup www.mydns.com 和 nslookup 192.16 ...
- centos搭建dns服务器
前言:搭建dns服务器,dns服务器我就不多说什么了,大家都懂,就是域名解析,就将ip装换为域名,域名就可以理解为类似这样的www.baidu.com网址,接下来我就直接上图了.这里面最重要的是修改u ...
随机推荐
- requireJS简单的学习门户网站
总结 requireJS.这翻译成中国"必须js".说白了就是装js文件与.如何装好了?.这是继AMD标准化的模块化装.除了AMD另一种规范称为CMD规范.跟随CMD兼容模块加载. ...
- ASP.NET Core 登录登出 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 登录登出 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 登录登出 上一章节我们总算完善了注册的功能,而且也添加了一个用户,现 ...
- Qt如何绘制(简单深刻,fearlazy的系列文章)
我觉得绘制只需要考虑几个问题.简单地说就是谁在什么地方画什么? 在Qt中可以这么回答:QPainter在QPainterDevice中画想画的东西. 举个例子:用QtCreator向导新建一个项目,基 ...
- 构建自己的PHP框架(Twig模板引擎)
完整项目地址:https://github.com/Evai/Aier Twig 模板引擎 模版引擎 twig 的模板就是普通的文本文件,也不需要特别的扩展名,.html .htm .twig 都可以 ...
- css 浏览器兼容性问题解决
一个.!important (功能有限) 随着IE7正确!important支持, !important 方法现在只IE6兼容.(注意措辞.我记得这句话需要推进的位置.) : #example ...
- 【转】postgresql 9.4 在linux环境的安装步骤详解
本文章来为各位介绍一篇关于postgresql 9.4 在linux环境的安装步骤详解,希望文章能够对各位新手朋友带来帮助的哦. 环境说明系统:centos 6.4 64位软件:postgresql ...
- Carthage 包管理工具,另一种敏捷轻快的 iOS & MAC 开发体验 | SwiftCafe 咖啡时光
说起 iOS 开发的包管理,大家就不由得会想起 CocoaPods, 它确实是一个强大的工具.但这次咱们来关注另外一个包管理工具 Carthage,如果说 CocoaPods 像一个航母,一应俱全,坚 ...
- asp .net Cookies
Request.Cookies和Response.Cookies When validating cookies or cookie data from the browser you should ...
- node 后台管理插件forever
在一台计算机上手动跑Node项目简单,node xx.js就搞定了,想让Node项目后台运行,虽然不能直接用node命令搞定,但是在安装了forever这个包以后,还是很轻松的.不过要是在远程服务器上 ...
- jquery hover()的使用
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...