Linux:DNS服务器搭建
DNS简介
DNS(Domain Name System)域名系统:
是一种采用客户端/服务器机制,负责实现计算机名称与IP地址转换的系统。DNS作为一种重要的网络服务,既是国际互联网工作的基础,同时在企业内部网络中也得到了广泛地应用。
DNS服务器的作用
正向解析:根据主机名称(域名)查找对应的IP地址
反向解析:根据IP地址查找对应的主机域名
DNS系统的分布式数据结构

DNS查询方式
递归查询:大多数客户机向DNS服务器解析域名的方式
迭代查询:大多数DNS服务器向其他DNS服务器解析域名的方式
DNS服务器的类型
缓存域名服务器
缓存域名服务器:也称唯高速缓存服务器,通过向其他域名服务器查询获得域名->IP地址记录,将域名查询结果缓存到本地,提高重复查询时的速度。
主域名服务器
主域名服务器:特定DNS区域的官方服务器,具有唯一性,负责维护该区域内所有域名->IP地址的映射记录。
从域名服务器
从域名服务器:也称为辅助域名服务器,其维护的域名->IP地址记录来源于主域名服务器。
BIND域名服务基础
BIND(Berkeley Internet Name Daemon)伯克利Internet域名服务。
官方站点:https://www.isc.org/
BIND服务器端程序
主要执行程序:/usr/sbin/named
服务脚本:/etc/init.d/named
默认监听端口:53
主配置文件:/etc/named.conf
保存DNS解析记录的数据文件位于:/var/named/chroot/var/named/
配置文件分析
/etc/named.conf
options { #选项
listen-on port 53 { 127.0.0.1; }; #服务监听端口为53
listen-on-v6 port 53 { ::1; }; #服务监听端口为53(ipv6)
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 { localhost; }; #允许连接的客户机
recursion yes; #递归查找
dnssec-enable yes; #DNS加密
dnssec-validation yes; #DNS加密高级算法
dnssec-lookaside auto; #DNS加密的相关东西
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key"; #加密用的key(私钥公钥的加密,很强)
};
logging { #日志
channel default_debug {
file "data/named.run"; #运行状态文件
severity dynamic; #静态服务器地址(根域)
};
};
zone "." IN { #根域解析
type hint; master slave
file "named.ca"; #根域配置文件
};
include "/etc/named.rfc1912.zones"; #扩展配置文件(新开域名)
/etc/named.rfc1912.zones
zone "localhost.localdomain" IN { #本地主机全名解析
type master; #类型为主域
file "named.localhost"; #域配置文件(文件存放在/var/named目录中)
allow-update { none; }; #不允许客户端更新
};
zone "localhost" IN { #本地主机名解析
type master;
file "named.localhost";
allow-update { none; };
};
zone ".0.ip4.arpa" IN { #ipv6本地地址反向解析
type master;
file "named.loopback";
allow-update { none; };
};
zone "1.0.0.127.in-addr.arpa" IN { #本地地址反向解析
type master;
file "named.loopback";
allow-update { none; };
};
zone "0.in-addr.arpa" IN { #本地全网地址反向解析(和/域更新用的)
type master;
file "named.empty";
allow-update { none; };
};
/var/named/named.localhost
$TTL 1D #更新为最长1天
@(使用域的域名) IN SOA(权威DNS服务器) @(权威DNS服务器的名称) rname.invalid.(rname@invalid的邮件) (
0 ; serial #(更改号)十位数的序列号
1D ; 更新频率
1H ; 失败重新尝试时间
1W ; 失效时间
3H ) ; 缓存时间
NS(域名服务器) @(域名服务器名称)
A(正向解析记录) 127.0.0.1(正向解析的ip)
AAAA(ipv6正向解析) ::1(ipv6正向解析的ip)
搭建DNS服务器
安装DNS服务器
安装bind程序包
yum install bind
启动服务
systemctl start named.service
设置自启动状态
systemctl enable named.service
配置文件
配置主配置文件
vim /etc/named.conf
改动为
listen-on-v6 port 53 { any; };
allow-query { any; };
配置zones文件
正向解析配置
添加 正向解析
zone "lzy.com." IN {
type master;
file "lzy.com.zone";
allow-update { none; };
};
反向解析配置
添加反向解析
zone "134.168.192.in-addr.arpa" IN {
tpye master;
file "134.168.192.zone";
allow-update { none; };
};
配置区域配置文件
复制文件
cp /var/named/named.empty /var/named/lzy.com.zone
cp /var/named/named.empty /var/named/134.192.168.zone
修改权限
chown :named zlt.com.zone
正向解析配置
为excesoft.com域名设计正向解析,将/var/named/named.empty复制重命名为excesoft.com.zone,
修改文件属组为named,并对其内容进行修改
$TTL 3H
@ IN SOA lzy.com. root.lzy.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H) ; minimum
NS dns.lzy.com.
dns A 192.168.134.139
www A 192.168.134.139
反向解析配置
为excesoft.com域名设计反向解析,将/var/named/named.empty复制重命名为137.168.192.zone,修
改文件属组为named,并对其内容进行修改。
配置网卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
IPADDR1=192.168.134.139
NETMASK=255.255.255.0
GATEWAY=192.168.134.2
DNS1=192.168.134.139
启动DNS服务器
systemctl start named.service
检查配置文件
named-checkconf
配置客户端
修改配置文件
修改配置文件:#vim /etc/resolv.conf。
写入以下内容:
excesoft.
nameserver 192.168.137.22
测试DNS服务器
测试DNS服务器
在客户端计算机上使用命令 nslookup进行测试。
Linux:DNS服务器搭建的更多相关文章
- Linux下dns服务器搭建
Linux下dns服务器搭建1-环境Red Hat Enterprise Linux Server release 6.7 (Santiago)2-配置本地yum源安装dns相关包yum -y ins ...
- Linux下DNS服务器搭建详解
Linux下DNS服务器搭建详解 DNS 即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域名解析 ...
- DNS服务器搭建(主、从、缓)
主dns服务器搭建 在本机上搭建一个管理hngd.com域名的域名服务器1. 确保安装好以下bind域名服务器 [root@主人 ~]# rpm -qa |grep ^bindbind-chroot- ...
- 架构师成长之路6.6 DNS服务器搭建(构建企业级DNS)
点击返回架构师成长之路 架构师成长之路6.6 DNS服务器搭建(构建企业级DNS) 采用LVS-DR模式负载均衡,多IDC,多套DNS集群,通过master-slave技术保证dns配置的一致性. 1 ...
- 架构师成长之路6.5 DNS服务器搭建(添加记录、负载均衡、DNS视图)
点击返回架构师成长之路 架构师成长之路6.5 DNS服务器搭建(添加记录.负载均衡.DNS视图) 部署主DNS : 点击 部署从DNS : 点击 1.添加A记录.CNAME记录.MX记录.PTR记录 ...
- 架构师成长之路6.4 DNS服务器搭建(部署主从DNS)
点击返回架构师成长之路 架构师成长之路6.3 DNS服务器搭建(部署主从DNS) 部署主DNS : 点击 部署从DNS : 如下步骤 1.与主DNS一样,安装bind yum -y install ...
- 架构师成长之路6.3 DNS服务器搭建(部署单台DNS)
点击返回架构师成长之路 架构师成长之路6.3 DNS服务器搭建(部署单台DNS) 1.安装bind yum -y install bind-utils bind bind-devel bind-chr ...
- DNS服务器搭建与配置
DNS服务器搭建与配置目录 1.DNS查询方式 2.DNS服务器类型 3.DNS主要配置文件组 4.name.conf文件配置介绍 5.DNS的资源记录格式 6.DNS服务器和客户端配置 7.简单搭建 ...
- linux下DNS服务器搭建,正反向解析配置
dns服务器之前自己搭建玩过,一段时间不搞,加上当时没写文档,基本忘光光了,这次老实了,写个文档记下来,方便以后查阅. 1.服务器准备 为了避免不必要的问题,关闭防火墙,关闭selinux,hosts ...
随机推荐
- 【30天自制操作系统】day05:结构体、文字显示与 GDT/IDT 初始化
输出一个 16 行 8 列的点阵字符 void putfont8(char *vram, int xsize, int x, int y, char c, char *font) { int i; c ...
- Android 获取当前IP地址
首先设置用户权限 <uses-permission android:name="android.permission.INTERNET"></uses-permi ...
- Java生鲜电商平台-生鲜电商中商品类目、属性、品牌、单位架构设计与实战
Java生鲜电商平台-生鲜电商中商品类目.属性.品牌.单位架构设计与实战 说明:Java生鲜电商平台-生鲜电商中商品类目.属性.品牌.单位架构设计与实战经验分享 凡是涉及到购物,必然是建立在商品的基础 ...
- Spring基础——配置文件pom.xml,web.xml,ApplicationContext.xml
Spring配置文件——复制粘贴即用 为了以后兼容SSM框架,直接创建Maven Project,包结构如下图. pom.xml <project xmlns="http://mave ...
- zabbix获取一周内各个等级告警的次数
# encoding:UTF-8 import xlsxwriter import datetime import pymysql import numpy as np import pandas _ ...
- Effect:Mobile ocd
Satisfy the following two Keep your phone at all times Check your phone even if there's no news Alwa ...
- 极客必备 Chrome 浏览器插件
本文微信公众号「AndroidTraveler」首发. 自己平时使用的最多的就是 Chrome 浏览器,因此本文主要分享自己添加的一些扩展程序. 介绍扩展程序的时候也是以我本人的实际使用为主,有些功能 ...
- 将CocoStudio产生的UI文件导入到项目
配置: Xcode 6.0 + CocoStudio 1.6 + Cocos2d-x 3.4 添加资源 将导出的资源文件放到 Resource 文件夹下. 头文件 #include "coc ...
- CF#603 Div2
差不多半年没打cf,还是一样的菜:不过也没什么,当时是激情,现在已是兴趣了,开心就好. A Sweet Problem 思维,公式推一下过了 B PIN Codes 队友字符串取余过了,结果今天早上一 ...
- Python 变量与运算符
变量 基本概念: 1. 变量,名字,数据的唯一标识2.变量命名: 字母.数字.下划线: 不能以数字开头: 区分大小写: 不能使用保留字和关键字: 命名要有意义:(多个单词时,推荐使用下划线连接) 3. ...