云计算百科
云计算领域专业知识百科平台

Linux DNS域名解析服务器

DNS简介

DNS
(
Domain Name System
)是互联网上的一项服务,它作为将域名和
IP
地址相互映射的一个分

布式数据库,能够使人更方便的访问互联网。

DNS
使用的是
53
端口,

通常
DNS
是以
UDP
这个较快速的数据传输协议来查询的,但是没有查询到完整的信息时,就会再次

以
TCP
这个协议来重新查询所以启动
DNS
时,会同时启动
TCP
以及
UDP
的
port53
。

因特网的域名结构

由于因特网的用户数量较多,所以因特网在命名时采用的是层次树状结构的命名方法。任何一个连

接在

因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名
(domain name)
。
“
域
”

(domain)
是名字空间中一个可被管理的划分

国家顶级域名:采用
ISO3166
的规定。如:
cn
代表中国,
us
代表美国,
uk
代表英国,等等。国家域

名又常记为
ccTLD(country code top-level domains
,
cc
表示国家代码
contry-code)
。

通用顶级域名:最常见的通用顶级域名有
7
个,即:
com(
公司企业
)
,
net(
网络服务机构
)
,
org(
非营

利组织
)
,
int(
国际组织
)
,
gov(
美国的政府部门
)
,
mil(
美国的军事部门
)
。

基础结构域名
(infrastructure domain)
:这种顶级域名只有一个,即
arpa
,用于反向域名解析,因

此称为反向域名。

域名服务器的类型划分

  • 根域名服务器:最高层次的域名服务器,也是最重要的域名服务器。所有的根域名服务器都知道所有的 顶级域名服务器的域名和IP地址。不管是哪一个本地域名服务器,若要对因特网上任何一个域名进行解 析,只要自己无法解析,就首先求助根域名服务器。所以根域名服务器是最重要的域名服务器。假定所 有的根域名服务器都瘫痪了,那么整个DNS系统就无法工作。需要注意的是,在很多情况下,根域名服 务器并不直接把待查询的域名直接解析出IP地址,而是告诉本地域名服务器下一步应当找哪一个顶级域名 服务器进行查询。
  • 顶级域名服务器:负责管理在该顶级域名服务器注册的二级域名。
  • 权限域名服务器:负责一个“区”的域名服务器。
  • 本地域名服务器:本地域名服务器不属于域名服务器的层次结构,但是它对域名系统非常重要。当一个 主机发出DNS查询请求时,这个查询请求报文就发送给本地域名服务器。
  • 主从DNS服务器:为了提高域名服务器的可靠性,DNS域名服务器都把数据复制到几个域名服务器来保 存,其中的一个就是主DNS服务器(Master name server),负责解析至少一个域。其他的是辅助 (从)DNS服务器(Slave name server):负责解析至少一个域,是主DNS服务器的辅助。当主域名服 务器出故障时,辅助域名服务器可以保证DNS的查询工作不会中断。主域名服务器定期把数据复制到辅 助域名服务器中,而更改数据只能在主域名服务器中进行。这样就保证了数据的一致性。

 DNS域名解析的过程

> set type=ns
> com.
Authoritative answers can be found from:
com     nameserver = a.gtld-servers.net.
*** ***
a.gtld-servers.net     internet address = 192.5.6.30
> server 192.33.14.30
Default server: 192.33.14.30
Address: 192.33.14.30#53
> set type=ns
> bilibili.com.
> server 1.12.0.17
> set type=a
> www.bilibili.com
www.bilibili.com       canonical name = a.w.bilicdn1.com.
> a.w.bilicdn1.com.

DNS服务器配置

关于服务端

dns服务的安装与启用

安装

dnf install bind -y

启用

systemctl enable –now bind

开放服务

vim /etc/named.conf
listen-on port 53 { any; } ##在本地所有网络接口上开启53端口
allow-query { any; }; ##允许查询A记录的客户端列表
dnssec-validation no; ##禁用dns检测使dns能够缓存外部信息到本纪
systemctl restart named

DNS企业级高级配置

高速缓存dns

高速缓存dns是一个非权威的dns,在dns服务器中本身并没有数据

当客户需要解析域名时首先查询缓存中是否有数据,如果没有就会从指定的dns服务器中缓存

高速缓存dns可以大大节省内网在做地址解析上所需要花费的时间

高速缓存配置参数

vim /etc/named.conf
forwarders { 114.114.114.114; };
systemctl restart named

DNS的正向解析

DNS正向解析的作用

当客户设定当前dns服务器为dns解析服务器时,正向解析即为客户提供A记录 客户提供域名,dns服务器负责把域名解析成对应IP

实施方法

1.编写zones文件设定要维护的域

vim /etc/named.rfc1912.zone
zone "easylee.org" IN { ##维护的域名
type master; ##当前服务器位主dns
file "easylee.org.zone"; ##域名A记录文件
allow-update { none; }; ##允许更新主机列表
};

2.根据zones文件中的指定生成A记录文件

cd /var/named/
cp -p named.localhost westos.com.zone
$TTL 1D ##TIME-TOLIVE(dns地址保存时间长度默认是“S”)
@
      IN SOA dns.easylee.org. root.easylee.org. ( ##SOA授权起始
(Start of Authority)
##负责管理管理员邮
箱,NS服务器名称等7个信息
                                      0       ; serial #域名版本序列号
                                      1D     ; refresh #刷新时间(辅助dns)
                                      1H     ; retry #重试时间(辅助dns)
                                      1W     ; expire #过期时间
                                      3H )   ; minimum #A记录最短有效期,如
果$TTL被设定那么一设定值为准
              NS     dns.easylee.org. #nameserver 域名
dns             A       172.25.254.100 #nameserver A记录
www             CNAME   node.a.easylee.org. #Canonical Name
(规范名称,A记录别名)
node.a         A       172.25.254.101 #A记录
node.a         A       172.25.254.102
easylee.org.     MX 1   172.25.254.111. #邮件解析记录

3.测试实验结果

dig -t A www.easylee.org @172.25.254.100 ##查询A记录
dig -t mx easylee.org @172.25.254.100 ##查询MX记录

在查询结果时会有几种反馈值

DNS的反向解析

DNS反向解析的作用

当客户设定当前dns服务器为dns解析服务器时,正向解析即为客户提供PRT记录 客户提供域名,dns服务器负责把域名解析成对应IP

实施方法

1.编写zones文件设定要维护的域

]# vim /etc/named.rfc1912.zones
…
zone "254.25.172.in-addr.arpa" IN {
      type master;
      file "172.25.254.ptr";
      allow-update { none; };
};

2.根据zones文件中的指定生成A记录文件

]# cd /var/named/
]# cp -p named.loopback 172.25.254.ptr
]# vim 172.25.254.ptr
$TTL 1D
@       IN SOA dns.easylee.org. root.easylee.org. (
                                      0       ; serial
                                      1D     ; refresh
                                      1H     ; retry
                                      1W     ; expire
                                      3H )   ; minimum
      NS     dns.easylee.org.
dns     A       172.25.254.100
111     PTR     bbs.easylee.org.

3.测试实验结果

]# dig -x 172.25.254.111 @172.25.254.100

DNS多向解析方案

在企业中服务器不可能在同一个网段,不同网段的服务器是不是需要用多台dns来满足服务器需求? 根据这一企业需求我们可以在DNS中通过访问设置,让不同网段的服务器都解析到自己网段的相应地址 这就是DNS多项解析

配置实验环境

在当前网卡中添加所需网段IP

]# ip addr add 192.168.0.100/24 dev ens160

实施方法

1.注释在主配置文件中默认的zone语句块

/*
zone "." IN {
      type hint;
      file "named.ca";
};
include "/etc/named.rfc1912.zones";
*/

2.添加view语句块来限制访问数据走向

view net-172 {
      match-clients { 172.25.254.0/24; };
      zone "." IN {
              type hint;
              file "named.ca";
      };
      include "/etc/named.rfc1912.zones";
};
view net-192 {
      match-clients { 192.168.0.0/24; };
      zone "." IN {
              type hint;
              file "named.ca";
      };
      include "/etc/named.rfc192.zones";
};

3.生成并配置zones文件

]# cp -p /etc/named.rfc1912.zones /etc/named.rfc192.zones
]# vim /etc/named.rfc192.zones
zone "easylee.org" IN {
      type master;
      file "easylee-192.org.zone";
      allow-update { none; };
};

4.生成并配置A记录文件

]# cp -p /var/named/easylee.org.zone /var/named/easylee-192.org.zone
]# vim /var/named/easylee-192.org.zone
$TTL 1D
@       IN SOA dns.easylee.org. root.easylee.org. (
                                      0       ; serial
                                      1D     ; refresh
                                      1H     ; retry
                                      1W     ; expire
                                      3H )   ; minimum
              NS     dns.easylee.org.
dns             A       192.168.0.100
www             CNAME   node.a.easylee.org.
node.a         A       192.168.0.101
node.a         A       192.168.0.102
easylee.org.   MX 5   192.168.0.111.

主从DNS服务器

        为了提高域名服务器的可靠性,DNS域名服务器都把数据复制到几个域名服务器来保存,其中的一个就 是主DNS服务器(Master name server),负责解析至少一个域。其他的是辅助(从)DNS服务器 (Slave name server):负责解析至少一个域,是主DNS服务器的辅助。当主域名服务器出故障时,辅 助域名服务器可以保证DNS的查询工作不会中断。主域名服务器定期把数据复制到辅助域名服务器中, 而更改数据只能在主域名服务器中进行。这样就保证了数据的一致性

1.配置实验环境

  • 新建一台主机作为辅助DNS主机,并配置好网络和软件仓库
  • 在新建主机中安装DNS服务并保证服务可以被访问

2.对辅助DNS进行配置

修改zones文件设定要做主从的域

]# vim /etc/named.rfc1912.zones
zone "easylee.org" IN {
      type slave;
      masters { 172.25.254.100; };
      file "slaves/easylee.org.zone";
//     allow-update { none; };
};

3.启动服务并测试

]# systemctl enable –now named
]# dig -t A www.easylee.org @172.25.254.200

4.解决数据时时同步问题

主从dns经过上述设定后存在数据同步延迟,在主dns中更改数据后要等到下个同步周期的时间到来才能 进行同步。

1.在主dns中设置数据更改后主动通知对象

]# vim /etc/named.rfc1912.zones
zone "easylee.org" IN {
      type master;
      file "easylee.org.zone";
      allow-update { none; };
      also-notify { 172.25.254.200; };
};

2.更改A记录文件测试结果

]# vim /var/named/easylee.org.zone
$TTL 1D
@       IN SOA dns.easylee.org. root.easylee.org. (
                                      2023032901     ; serial #更改A记录后一
定要更新serial值
                                      1D     ; refresh
                                      1H     ; retry
                                      1W     ; expire
                                      3H )   ; minimum
              NS     dns.easylee.org.
dns             A       172.25.254.100
www             CNAME   node.a.easylee.org.
node.a         A       172.25.254.200
node.a         A       172.25.254.202
easylee.org.   MX 5   172.25.254.111.

3.测试数据同步性

]# dig -t A www.easylee.org @172.25.254.100
]# dig -t A www.easylee.org @172.25.254.200

赞(0)
未经允许不得转载:网硕互联帮助中心 » Linux DNS域名解析服务器
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!