首页 > 其他分享 >DNS

DNS

时间:2023-11-19 21:47:20浏览次数:37  
标签:named root 192.168 localhost DNS com wy

DNS

1. 基本概念

/etc/named.conf配置文件

listen-on port 53 { 192.168.32.0/24; }; 表示谁可以使用该dns解析,可以有三种写法

  • listen-on port 53 { 192.168.32.0/24; }; # 直接写192.168.32.0/24的网段
  • listen-on port 53 { any; }; # any —— 任意网段,这种比较危险
  • // listen-on port 53 { 192.168.32.0/24; }; # 注释掉

allow-query { localhost; }; 表示权限,允许哪个用户使用dns解析

  • allow-query { localhost; 192.168.32.0/24; }; # 允许这个网段的用户使用该dns解析
  • allow-query { any; }; # 任何主机,这种比较危险
  • // allow-query { localhost; }; # 注释掉

各种资源记录

区域解析库:由众多资源记录RR(Resource Record)组成

name	  [TTL]		    IN			rr_type			 value
域名	   生命周期	  使用internet协议	记录类型:A  PTR		IP地址

记录类型:A AAAA PTR SOA NS CNAME MX

  • SOA start Of Authority 起始授权记录,一个区域解析库有且仅能有一个SOA记录,必须位于解析库的第一条记录SOA,说明了在众多NS记录中哪一台才是主要的服务器。在任何DNS记录文件中,都是以SOA记录开始

  • NS(Name Server) NS记录,用于表示当前区域的DNS服务器,服务器类型为域名服务器

  • A(internet Address) A记录,正向域名解析,域名 -> IP地址

  • AAAA AAAA记录,IPv6

  • PTR(PoinTeR) PTR记录,反向解析,IP地址 -> 域名

  • CNAME(Canonical Name) 别名记录

  • MX(mali eXchanger) MX记录, 邮件交换器

  • TXT TXT记录,对域名进行标识和说明的一种方式,一般做验证记录时会使用此项,如SPF(反垃圾邮件)记录,https验证等

SOA与NS记录的区别:NS表示域名服务器记录,用来指定该域名由哪个DNS服务器来解析;SOA表示起始记录,记录了当前域名的基本信息,以及主从域名服务器之间同步的信息

/var/named/named.localhost配置文件

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        NS      master
master	A		192.168.32.50     
www		A		192.168.32.100  
ftp.wy.com	IN	CNAME	mail.wy.com


  • $TTL 1D: 生命周期,1天,全局配置

  • 第一个@:指代域名,wy.com

  • IN:表示使用internet协议解

  • SOA:表示起始记录,记录了当前域名的基本信息,和主从域名服务器之间同步的规定

  • 第二个@(或者wy.com.): 当前服务器的名称

  • rname.invalid. : 邮箱地址,邮箱rname与invalid之间应该用@,但是@被用掉了,@有其他含义了

db数据库中,一行行的数据表示记录;一列列的数据表示字段

  • 0 ; seria 版本号,表示是否更新,如果0变为1,表示数据库内容发生了改变,从域名服务器需要赶紧来跟主域名服务器更新数据,取值范围0-10
  • 1D ; refresh 刷新时间,拉取时间,有两种拉取方式:① 从服务器主动向主服务器拉取数据;② 主服务器主动给数据给从服务器
  • 1H ; retry 如果从服务器这次更新失败了,1个小时后再试一次
  • 1W ; expire 过期时间,如果从服务器老是拉取不了数据,1周以后过期
  • 3H ; minimum 如果有一个无聊的人老是来查找错误的解析地址,那么在3小时内,用户再查找直接返回找不到

固定格式

name [TTL] IN rr_type value

域名 缓存时间 internet记录 区域解析库 值

master A 192.168.32.50

域名 记录类型 IP地址

ftp.wy.com IN CNAME mail.wy.com

域名 internet记录 别名记录 别名的域名

注意事项

A记录中的IP地址可以随意设置

例如NS记录中有master,那么下面的A记录中也必须要有master记录

2. 实验

正向解析

目的(用途):将域名解析成IP地址

实验准备

  1. 一台主机

  2. 关闭防火墙、关闭核心防护

1. yum安装bind
[root@localhost ~]# rpm -q bind
未安装软件包 bind 
[root@localhost ~]# yum install -y bind*



2. 将网卡的DNS改为自己的建立的dns服务器的IP地址
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
DNS1=114.114.114.114
# 改为以下dns
DNS1=192.168.32.11
[root@localhost ~]# systemctl restart network
[root@localhost ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 192.168.32.11
[root@localhost ~]# 



3. 修改named的主配置文件 /etc/named.conf
[root@localhost ~]# vim /etc/named.conf
options {
        listen-on port 53 { 192.168.32.0/24; };
        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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { localhost; };
# 检查配置文件是否有问题
1)[root@localhost ~]# systemctl restart named
2)[root@localhost ~]# rndc reload
server reload successful
[root@localhost ~]#



4.修改named的区域配置文件 /etc/named.rfc1912.zones 
[root@localhost ~]# vim /etc/named.rfc1912.zones 
zone "wy.com" IN {
        type master;          # 指定类型为主域名服务器
        file "wy.com.zone";   # 在named的家目录(/var/named)下必须有和该文件一样的文件名
};
# 检查配置文件是否有问题
1)[root@localhost ~]# systemctl restart named
2)[root@localhost ~]# rndc reload
server reload successful
[root@localhost ~]#



5. 进入到named的家目录中,利用“named.localhost”这个文件作为模板,cp -a一个和“wy.com.zone”同名的文件,并修改“wy.com.zone”文件的内容(注意“wy.com.zone”的权限必须和“named.localhost”的权限一致)
[root@localhost ~]# cd /var/named                           # 进入named的家目录
[root@localhost named]# cp -a named.localhost wy.com.zone   # 保留权限复制文件,并改为名“wy.com.zone”
[root@localhost named]# ll
总用量 20
drwxr-x--- 7 root  named   61 11月 14 11:39 chroot
drwxr-x--- 7 root  named   61 11月 14 11:39 chroot_sdb
drwxrwx--- 2 named named   23 11月 14 13:59 data
drwxrwx--- 2 named named   60 11月 14 14:04 dynamic
drwxrwx--- 2 root  named    6 4月   1 2020 dyndb-ldap
-rw-r----- 1 root  named 2253 4月   5 2018 named.ca
-rw-r----- 1 root  named  152 12月 15 2009 named.empty
-rw-r----- 1 root  named  152 6月  21 2007 named.localhost
-rw-r----- 1 root  named  168 12月 15 2009 named.loopback
drwxrwx--- 2 named named    6 10月 16 21:26 slaves
-rw-r----- 1 root  named  152 6月  21 2007 wy.com.zone
[root@localhost named]# vim /var/named/wy.com.zone       # 修改wy.com.zone配置文件
$TTL 1D
@       IN SOA  master rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master
master  A       192.168.32.50
www     A       192.168.32.100
[root@localhost ~]# systemctl restart named
# 重启named



6. host 域名  查看域名是否能解析成IP地址
[root@localhost named]# host www.wy.com
www.wy.com has address 192.168.32.100
[root@localhost named]# 



*  泛域名
@  不需要输入主机名
[root@localhost named]# vim /var/named/wy.com.zone  
www     A       192.168.32.100
[root@localhost ~]# host wwwwwww.wy.com
wwwwwww.wy.com has address 192.168.32.100
# *泛域名起作用,当我们主机名输入不正确,多输或少输,都应该不影响我解析该域名

[root@localhost ~]# host wy.com
wy.com has address 192.168.32.100
# @起作用,可以让我们不输入主机名也可以正确解析出域名

反向解析

目的(用途):将IP地址解析成域名


主从复制

目的:高可用,防止主域名服务器瘫痪

实验准备

  1. 两台主机 192.168.32.11(主域名服务器) 192.168.32.12(从域名服务器)

  2. 关闭防火墙、关闭核心防护

1. yum安装bind
[root@localhost ~]# rpm -q bind
未安装软件包 bind 
[root@localhost ~]# yum install -y bind*



2. 将两台主机的网卡DNS改为自己的建立的dns服务器的IP地址
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
DNS1=114.114.114.114
# 改为以下dns
DNS1=192.168.32.11
[root@localhost ~]# systemctl restart network
[root@localhost ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 192.168.32.11
[root@localhost ~]# 



3. 修改两台主机的named的主配置文件 /etc/named.conf
[root@localhost ~]# vim /etc/named.conf
options {
        listen-on port 53 { any; };
        allow-query     { any; };
# 检查配置文件是否有问题
1)[root@localhost ~]# systemctl restart named   # 关机,重启
2)[root@localhost ~]# rndc reload     # 不关机,重启
server reload successful
[root@localhost ~]#



4.修改两台主机的named的区域配置文件 /etc/named.rfc1912.zones 
主机ip:11
[root@localhost ~]# vim /etc/named.rfc1912.zones 
zone "wy.com" IN {
        type master;          # 指定类型为主域名服务器
        file "wy.com.zone";   # 在named的家目录(/var/named)下必须有和该文件一样的文件名
        allow-transfer {192.168.32.12;};  # 允许192.168.32.12IP地址通过
};

# 检查配置文件是否有问题
1)[root@localhost ~]# systemctl restart named    # 关机,重启
2)[root@localhost ~]# rndc reload       # 不关机,重启
server reload successful
[root@localhost ~]#


主机ip:12
[root@localhost ~]# vim /etc/named.rfc1912.zones 
zone "wy.com" IN {
        type slave;          # 指定类型为主域名服务器
        file "slaves/wy.com.zone"; 
        masters {192.168.32.11;};
};

# 检查配置文件是否有问题
1)[root@localhost ~]# systemctl restart named   # 关机,重启
2)[root@localhost ~]# rndc reload    # 不关机,重启
server reload successful
[root@localhost ~]#



5. 主机11,进入到named的家目录中
利用“named.localhost”这个文件作为模板,cp -a一个和“wy.com.zone”同名的文件
并修改“wy.com.zone”文件的内容
(注意“wy.com.zone”的权限必须和“named.localhost”的权限一致)
[root@localhost ~]# cd /var/named                           # 进入named的家目录
[root@localhost named]# cp -a named.localhost wy.com.zone   # 保留权限复制文件,并改为名“wy.com.zone”
[root@localhost named]# vim wy.com.zone 
$TTL 1D
@       IN SOA  master rname.invalid. (
                                        1       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master
        NS      slave
slave   A       192.168.32.51
master  A       192.168.32.50
www     A       192.168.32.100
# 检查配置文件是否有问题
1)[root@localhost ~]# systemctl restart named   # 关机,重启
2)[root@localhost ~]# rndc reload    # 不关机,重启
server reload successful
[root@localhost ~]#


6. 主机12测试结果
[root@localhost ~]# systemctl restart named   # 关机,重启
[root@localhost ~]# cd /var/named/slaves
[root@localhost slaves]# ls
wy.com.zone
[root@localhost slaves]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.32.11
[root@localhost slaves]# echo "nameserver 192.168.32.12" > /etc/resolv.conf
[root@localhost slaves]# cat /etc/resolv.conf
nameserver 192.168.32.12    # 使用从服务器的dns还是可以解析出结果,说明从服务器复制了主服务器的数据库数据
[root@localhost ~]# host www.wy.com
www.wy.com has address 192.168.32.100
[root@localhost ~]# 




分离解析

目的:不同网段的主机输入同样的域名,根据主机IP地址的不同,解析的结果也不同


标签:named,root,192.168,localhost,DNS,com,wy
From: https://www.cnblogs.com/wuyao-bk/p/17842716.html

相关文章

  • DNS服务器搭建与配置
    来源:https://cshihong.github.io/2018/10/15/DNS%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%90%AD%E5%BB%BA%E4%B8%8E%E9%85%8D%E7%BD%AE/DNS服务介绍DNS服务简介:DNS(DomainNameSystem–域名系统),是因特网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便......
  • 具有mDNS功能的串口服务器
    1.概述:通过mDNS协议可以获得设备的ID、mac、IP、port等信息,方便计算机在同一个局域网内连接到具有该服务的模块。支持产品有串口服务器、串口转以太网模块、RS485串口转网口芯片等。  图1mDNS网络结构图当具有mDNS的服务的设备接入网络的时候,首先设备每隔1秒发送一个询......
  • DNS——域名解析介绍
    认识DNS我们访问服务器最后都应该是一个IP地址假设我们要访问百度,我们只知道百度的域名时我们可以通过dns服务器进行解析,将www.baidu.com解析成IP地址www.baidu.com..根域.com顶级域.baidu二级域www主机名根域服务器只负责一个域名解析baidu.一级域只解析www.com.......
  • 真实地址查询 —— DNS
    通过浏览器解析URL并生成HTTP消息后,需要委托操作系统将消息发送给 Web 服务器。但在发送之前,还有一项工作需要完成,那就是查询服务器域名对应的IP地址,因为委托操作系统发送消息时,必须提供通信对象的IP地址。比如我们打电话的时候,必须要知道对方的电话号码,但由于电话号码难......
  • 什么是DNS,A记录,子域名,CNAME别名,MX记录,TXT记录,SRV 记录,TTL值
    DNSDNS,DomainNameSystem或者DomainNameService(域名系统或者域名服务)。域名系统为Internet上的主机分配域名地址和IP地址。由于网络中的计算机都必须有个IP地址,来识别,互相之间才能通信,但让我们记住一大串的IP地址来访问网站显然是不可能的,所以用户使用域名地址,而DNS系统的......
  • 科学时遇到DNS解析的问题
    问题:科学了,发现访问很慢,有时还无法访问,明显是被某种神秘的东方力量给阻断了。DNS解析就起作用了。可以快速寻址,目前国内比较知名的且比较快的就是阿里云的:223.5.5.5。但是呢,这还需要看你自己的网络是哪家的,去访问国际的时候路由节点是否在国内来回的跳了。 为了自己能快......
  • DNS服务器是什么?DNS服务器的主要类型都有哪些?
    相信大部分有网络常识的人都知道DNS服务器,它是一个专门做域名和对应IP地址翻译的服务器,它在人们使用网络时起着巨大的作用,比如影响上网速度,甚至影响网络能否正常打开,那么DNS服务器的主要类型都有哪些呢?请看下文:DNS服务器是什么?DNS是由多个DNS服务器组成的分层分布......
  • 某地区DNS查询解析域名信息后出现本机地址127.0.0.1和0.0.0.0
    一、现象背景: 接某地区分公司同事反馈,手机移动网络无法通过公网访问公司业务系统二、分析过程:1、查看流量入口Nginx,公网访问记录都正常,无异常日志。2、联系用户查询手机客户端出口IP,通过浏览器地址栏中输入,在外部防火墙侧和Nginx侧都未发现有该用户来源IP访问记录,黑名单也无。......
  • DNS服务器
    当你访问一个网站时候,如果浏览器和本机系统都没有该网站的DNS缓存,则会去DNS服务器请求获取该网站IP地址。DNS服务器分为:九九六三四零九五根域名服务器。所有域名的结尾都有一个被忽略的点.就是根域名;根域名服务器只知道顶级域名服务器的地址。顶级域名服务器。例如.co......
  • smartdns 一个强大的dns 服务器
    参考架构 一个集成其他dns的参考玩法 集成示例基于docker-compose运行docker-compose.yamlversion:"3"services:pdnsadmin:image:powerdnsadmin/pda-legacy:0.3networks:dns:ipv4_address:172.16.238.9......