内网搭建DNS服务器
DNS:Domain Name Service,域名解析服务
监听端口:udp/53,tcp/53
应用程序:bind
根域:.
一级域:
组织域:.com, .org, .net, .mil, .edu, .gov, .info, .cc, .me, .tv
国家域:.cn, .us, .uk, .jp, .tw, .hk, .iq, .ir
反向域:.in-addr.arpa

DNS 记录类型:DNS 域名数据库由资源记录和区文件指令组成。
SOA 记录:起始授权机构记录,SOA 备注说明了众多 NS(name server)记录中谁是主名称服务器,不参与功能,但是不能缺少。
NS 记录:域授权记录,当请求到达根域的时候,通过 NS 记录找到对应的域。
A 记录:当通过 NS 记录到达域以后,比如访问 www.baidu.com,通过 NS 我们找到了 baidu.com,此时就需要通过 A 记录找到 www。
MX:将该域下的所有邮件服务器地址指向邮件服务器。
AAAA 记录:A 记录处理 IPV4,AAAA 处理 IPV6。
PTR 记录:反向解析,将 IP 解析成域名。
CNAME:别名记录,允许多个名字映射到另外一个域名。比如我们 ping 百度的时候可以发现返回其实是 www.a.shifen.com 这个域名返回。所有 www.baidu.com 其实是个别名。

安装dns服务并配置
[root@jhr-hub ~]# yum -y install bind-utils bind bind-devel bind-libs
[root@jhr-hub ~]# vim /etc/named.rfc1912.zones
[root@jhr-hub ~]#
[root@jhr-hub ~]#
[root@jhr-hub ~]#
[root@jhr-hub ~]# tail -n 10 /etc/named.rfc1912.zones
zone "chenby.cn" IN {
type master;
file "chenby.cn.zone";
};
[root@jhr-hub ~]#
[root@jhr-hub ~]# cd /var/named/
[root@jhr-hub named]# ls
data dynamic named.ca named.empty named.localhost named.loopback pakho.zone slaves
[root@jhr-hub named]#
[root@jhr-hub named]# cp named.localhost chenby.cn.zone
[root@jhr-hub named]#
[root@jhr-hub named]# chown named.named chenby.cn.zone
[root@jhr-hub named]#
[root@jhr-hub named]# vim chenby.cn.zone
[root@jhr-hub named]#
检查配置文件
[root@jhr-hub named]# named-checkconf /etc/named.conf
[root@jhr-hub named]#
[root@jhr-hub named]#
[root@jhr-hub named]# named-checkzone chenby.cn /var/named/chenby.cn.zone
zone chenby.cn/IN: loaded serial 0
OK
[root@jhr-hub named]#
启动服务,并设置开机自启
[root@jhr-hub named]# systemctl restart named
[root@jhr-hub named]#
[root@jhr-hub named]# systemctl enable named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
[root@jhr-hub named]#
测试是否可行
[root@jhr-hub named]# dig @3.7.191.1 www.chenby.cn
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> @3.7.191.1 www.chenby.cn
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5275
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 3
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.chenby.cn. IN A
;; ANSWER SECTION:
www.chenby.cn. 86400 IN A 3.7.191.1
;; AUTHORITY SECTION:
chenby.cn. 86400 IN NS chenby.cn.
;; ADDITIONAL SECTION:
chenby.cn. 86400 IN A 127.0.0.1
chenby.cn. 86400 IN AAAA ::1
;; Query time: 0 msec
;; SERVER: 3.7.191.1#53(3.7.191.1)
;; WHEN: Thu Dec 09 14:44:51 CST 2021
;; MSG SIZE rcvd: 116
[root@jhr-hub named]#
附录:
1.name.conf文件详解
options {
listen-on port 53 { 127.0.0.1; }; //设置named服务器监听端口及IP地址
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; }; //允许DNS查询客户端
allow-query-cache { any; };
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
match-clients { any; };
match-destinations { any; };
recursion yes; //设置允许递归查询
include "/etc/named.rfc1912.zones";
};
2.区域配置文件/etc/named.rfc1912.zones
zone "." IN { //定义了根域
type hint; //定义服务器类型为hint
file "named.ca"; //定义根域的配置文件名
};
zone "localdomain" IN { //定义正向DNS区域
type master; //定义区域类型
file "localdomain.zone"; //设置对应的正向区域地址数据库文件
allow-update { none; }; //设置允许动态更新的客户端地址(none为禁止)
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN { //设置反向DNS区域
type master;
file "named.local";
allow-update { none; };
};
3.根域配置文件named.ca
根域配置文件设定根域的域名数据库,包括根域中13台DNS服务器的信息。几乎所有系统的这个文件都是一样的,用户不需要进行修改。
4.正向域名解析数据库文件
$TTL 600
@ IN SOA dns.cwlinux.com dnsadmin.cwlinux.com. (//SOA字段
2015031288 //版本号 同步一次 +1
1H //更新时间
2M // 更新失败,重试更新时间
2D // 更新失败多长时间后此DNS失效时间
1D //解析不到请求不予回复时间
)
IN NS dns //有两域名服务器
IN NS ns2
IN MX 10 mial // 定义邮件服务器,10指优先级 0-99 数字越小优先级越高
ns2 IN A 192.168.1.113 //ns2域名服务器的ip地址
dns IN A 192.168.1.10 //dns域名服务器的ip地址
mail IN A 192.168.1.111 //邮件服务器的ip地址
www IN A 192.168.1.112 //www.cwlinux.com的ip地址
pop IN CNAME mail //pop的正式名字是mail
ftp IN CNAME www //ftp的正式名字是www
5.反向域名解析数据库文件
$TTL 600
@ IN SOA dns.cwlinux.com. dnsadmin.cwlinux.com. (
2014031224
1H
2M
2D
1D
)
IN NS dns.cwlinux.com.
10 IN PTR dns.cwlinux.com. //反向解析PTR格式
111 IN PTR mail.cwlinux.com.
112 IN PTR www.cwlinux.com.
// 声明域的时候已经有了,192.168.1 所以我们只需要输入10即代表192.168.1.10jc

https://blog.csdn.net/qq_33921750
https://my.oschina.net/u/3981543
https://www.zhihu.com/people/chen-bu-yun-2
https://segmentfault.com/u/hppyvyv6/articles
https://juejin.cn/user/3315782802482007
https://space.bilibili.com/352476552/article
https://cloud.tencent.com/developer/column/93230
知乎、CSDN、开源中国、思否、掘金、哔哩哔哩、腾讯云
内网搭建DNS服务器的更多相关文章
- 请问 内网的 dns服务器 为什么和 外网的dns服务器 一样??
公司内的内网使用192.169.X.X的内网地址,但是在DNS段填写的是210.34.X.X,显然这是一个公网固定IP,我不明白的是:为什么内部网客户端使用的DNS服务器是公网上的IP呢?内网客户端能 ...
- 内网配置DNS服务器,无域名,只有主机名
Hadoop集群中,使用DNS而不是hosts来访问服务器. 1. 安装bind软件 用root用户运行: yum -y install bind* 2. 配置named.conf文件 vi /etc ...
- 如何内网搭建NuGet服务器
NuGet 是.NET程序员熟知的给.NET项目自动配置安装library的工具,它可以直接安装开源社区中的各个公用组件,可以说是非常方便.不过,有些时候,公司内部的公用的基础类库,各个项目都有引用, ...
- 【转】如何内网搭建NuGet服务器
原文:http://www.cnblogs.com/zhangweizhong/p/7755332.html NuGet 是.NET程序员熟知的工具,它可以直接安装开源社区中的各个公用组件,可以说是非 ...
- [转]DNS服务器原理详解与Centos6.x下搭建DNS服务器
转自:http://blog.it985.com/8958.html DNS 数据库的记录:正解,反解, Zone 的意义 通过DNS解析过程详解这篇文章,我们知道了要想访问www.zmit.cn,最 ...
- Centos7 搭建DNS服务器与原理配置详解
在搭建我们自己DNS服务器之前,先必须了解下DNS服务器的作用和原理. DNS是在互联网上进行域名解析到对应IP地址的服务器,保存互联网上所有的IP与域名的对应信息,然后将我们对网址的访问,解析成IP ...
- dnspod-sr内网轻量级DNS首选方案 - 运维生存时间
dnspod-sr内网轻量级DNS首选方案 - 运维生存时间 undefined
- 第一次搭建dns服务器
CentOS 7 搭建DNS服务器 主要参考的是小左先森的一篇博客:https://blog.51cto.com/13525470/2054121. 1.搭建过程中遇到的几个问题说一下: a.在重启服 ...
- centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课
centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更 ...
- Windows Server 2008 R2 搭建DNS服务器(转)
Windows Server 2008 R2 搭建DNS服务器将本机IP设为首选DNS服务器的地址在dos 下分别输入 nslookup www.mydns.com 和 nslookup 192.16 ...
随机推荐
- Debug --> wireshark中的lua插件使用
一.使用Lua脚本对pcap文件按流进行存储 https://zhuanlan.zhihu.com/p/35188803 二.使用tshark对pcap报文进行批量切流 https://blog.cs ...
- MySQL 面试题总结
MySQL的面试知识点总结 Q1:MySQL 的逻辑架构了解吗? 第一层是服务器层,主要提供连接处理.授权认证.安全等功能. 第二层实现了 MySQL 核心服务功能,包括查询解析.分析.优化.缓存以及 ...
- 在NCBI中下载SRA数据
目前,在NCBI中下载SRA数据主要有三种方式: 利用Aspera工具下载. 利用SRA Toolkit下载. 利用wget命令直接下载 第三种最为方便.其中的关键是得到下载数据的链接,即ftp的地址 ...
- OO课程第二阶段(实验和期中试题)总结Blog2
OO课程第二阶段(实验和期中试题)总结Blog2 前言:学习OOP课程的第二阶段已经结束了,在此进行对于知识点,题量,难度的个人看法. 学习OOP课程的第二阶段已经结束了,较第一次阶段学习难度加大,学 ...
- MongoDB 相关的一些操作
一. 在 MongoDB Compass中输入条件查询数据 {"src":"小车"} // = 该值 {"src":{$ ...
- C# 类库 dll 读取配置文件信息
一:给 C# 类库 dll 添加配置文件并读取配置信息 效果: 1.给类库程序添加配置文件,并命名为:类库名.DLL.config 如上面效果图,类库为:API.dll ,那么其对应的类库配置文件为: ...
- CATIA的后处理
同其他的cam软件一样,catia可以使用配置好的后处理文件输出相应的G代码文件, 也可以输出相应的刀位文件. 下图中的1选择的是后处理文件:下图2种设置的是输出刀位文件的格式. 输出G代码: 选择[ ...
- 2020/5/26-笔记:Oracle数据库表空间的管理
1新建表空间 (1)普通(本地管理)表空间: create tablespace 表空间名 datafile'OS系统文件路径\文件名.dbf' size nM; 或 create tablespac ...
- C#中Socket连接请求的超时设置
C#中Socket连接请求的超时设置 <转载> C#中, 对于Socket的请求,无论是同步还是异步,都没有提供超时机制,SendTimeout,ReceiveTimeout均无用.. 对 ...
- Mac 系统下 xxx.py 在终端运行
1.在文件中添加注释首先在你所要运行的python文件里首行添加一个特殊的注释(我使用的是python 3.7.3) #!/usr/bin/env python3 注意:如果是python3的话,&q ...