LINUX网络服务之DNS详解

1.DNS介绍
1.1域名介绍

讲DNS之前,我们先来了解一下域名。域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位。具有独一无二,不可重复的特性。

1.2DNS介绍

域名系统(Domain Name System,缩写:DNS)是互联网的一项服务。域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。我们可以把DNS服务器理解为翻译官。

2.域名解析过程
image.png

  • 客户机首先查看查找本地hosts文件,如果有则返回,否则进行下一步
  • 客户机查看本地缓存,是否存在本条目的缓存,如果有则直接返回,否则进行下一步。
  • 将请求转发给指向的DNS服务器。
  • 查看域名是否本地解析,是则本地解析返回,否则进行下一步。
  • 本地DNS服务器首先在缓存中查找,有则返回,无则进行下一步。
  • 向全球13个根域服务器发起DNS请求,根域返回com域的地址列表。
  • 使用某一个com域的IP地址,发起DNS请求,com域返回lyw域服务器地址列表。
  • 使用某一个lyw域IP地址,发起DNS请求,lyw域返回www.lyw.com主机的IP地址,本地DNS服务收到后,返回给客户机,并在本地DNS服务器保存一份。

递归查询:
客户机向指定的DNS服务器发起请求,指定DNS服务器返回给客户机确定值
迭代查询:
指定DNS服务器向根服务器发起请求,根服务器返回近似的值给指定DNS服务器

3.DNS软件信息
软件名称:

bind

服务名称:

named

软件端口:
UDP 53 数据通信(域名解析)
TCP 53 数据同步(主从同步)
配置文件:
主配置文件:/etc/named.conf(服务器运行参数)
区域配置文件:/etc/named.rfc1912.zones(服务器解析的区域配置,正反向区域定义信息)
数据配置文件:/var/named/xx.xx(主机名和IP地址的对应解析关系,及主从同步信息)

记录类型:
A: 地址记录,用来指定域名的IPv4地址的记录
CNAME: 将域名指向另一个域名,再由另一个域名提供ip地址,就需要添加CNAME记录
TXT: 可填写任何东西,长度限制255。绝大多数的TXT记录是用来做SPF的(反垃圾邮件)
NS: 域名服务器记录,如果需要把子域名交给其他DNS服务商解析,就需要添加NS记录。
AAAA: 地址记录,用来指定域名的IPv6地址的记录
MX3: 邮件交换记录,如果需要设置邮箱,让邮箱能收到邮件,就需要添加MX记录。

4.DNS服务搭建
注意:先关闭服务器和客户机上的防火墙和SELinux
4.1 软件安装

yum -y install bind

4.2 配置主配置文件(/etc/named.conf)

vim /etc/named.conf
options {
    listen-on port 53 { any; };
    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     { any; };

image.png
4.3 配置区域文件(/etc/named.rfc1912.zones)
注:先对区域文件进行备份,删除多余的模板,只留下一个正向和一个反向(反向修改时,网络位的反写格式,如192.168.142.2-->142.168.192.)

vim /etc/named.rfc1912.zones
zone "lyw.com" IN {
    type master;
    file "named.localhost";
    allow-update { none; };
};


zone "241.168.192.in-addr.arpa" IN {
    type master;
    file "named.loopback";
    allow-update { none; };
};

image.png
4.4 配置数据文件/var/named/
正向解析
image.png

vim named.localhost
$TTL 1D
@       IN SOA  lyw.com. rname.invalid. (
                                    0       ; serial
                                    1D      ; refresh
                                    1H      ; retry
                                    1W      ; expire
                                    3H )    ; minimum
         NS      www.lyw.com.
www     A       192.168.241.3
dns1    A       192.168.241.30
dns2    A       192.168.241.40

反向解析

vim named.loopback
$TTL 1D
@       IN SOA  lyw.com. rname.invalid. (
                                    0       ; serial
                                    1D      ; refresh
                                    1H      ; retry
                                    1W      ; expire
                                    3H )    ; minimum
        NS      www.lyw.com.
3       PTR     www.lyw.com.
50      PTR     dns3.lyw.com.
60      PTR     dns4.lyw.com.    

4.5 重启DNS服务

systemctl restart named

4.6 客户端测试
在网卡配置文件中添加DNS服务器的地址,然后用nslookup测试
image.png
image.png
image.png

5.主从DNS服务器
作用:1.备份主服务器数据 2.减轻主服务器的压力
5.1搭建主DNS服务器
步骤参考第四节(配置文件略有不同)
区域文件配置如下(/etc/named.rfc1912.zones)
image.png
配置数据文件/var/named/ 配置如下
image.png

5.2搭建从DNS服务器
步骤参考第四节(配置文件略有不同)
区域文件配置如下(/etc/named.rfc1912.zones)
image.png

5.3客户端测试
在网卡配置文件中添加从DNS服务器的地址,然后用nslookup测试
image.png
image.png

6.缓存服务器
作用:加快解析速度,提高工作效率
6.1安装软件

yum -y install dnsmasq

6.2修改/etc/dnsmasq.conf
添加以下内容

domain=域名                   #需要解析的域名
server=ip                     #主DNS服务器IP
cache-size=10000              #声明缓存条数

LINUX网络服务之DNS详解_第1张图片
重启服务

systemctl restart dnsmasq

6.3客户端测试
在测试机上填写DNS缓存服务器的ip地址然后测试
LINUX网络服务之DNS详解_第2张图片
LINUX网络服务之DNS详解_第3张图片
LINUX网络服务之DNS详解_第4张图片

7.智能DNS(分离解析)
原理:DNS分离解析即将相同域名解析为不同的IP地址。现实网络中一些网站为了让用户有更好的体验效果解析速度更快,就把来自不同运营商、地域的用户解析到相对应的服务器这样就大大提升了访问速度。
7.1服务器准备(双网卡)
LINUX网络服务之DNS详解_第5张图片
LINUX网络服务之DNS详解_第6张图片

# 开启路由转发
vim /usr/lib/sysctl.d/50-default.conf
net.ipv4.ip_forward=1
# 验证开启成功
grep ip_forward /usr/lib/sysctl.d/50-default.conf
reboot

软件安装

yum -y install bind

7.2修改配置文件
vim /etc/named.conf

 view lan{
     match-clients{192.168.241.0/24;};
     zone "." IN {
         type hint;
         file "named.ca";
     };
     include "/etc/lan.zones";
 };
 view wan{
     match-clinets{any;};
     zone "." IN {
         type hint;
         file "named.ca";
     };
     include "/etc/wan.zones";
 };
 #include "/etc/named.rfc1912.zones"; # 注释掉默认的区域配置文件

复制区域文件并修改

cp -a /etc/named.rfc1912.zones /etc/lan.zones
cp -a /etc/named.rfc1912.zones /etc/wan.zones
vim /etc/lan.zones
 zone "lyw.com" IN {
     type master;
     file "lan.localhost";
     allow-update { any; };
 };
 zone "241.168.192.in-addr.arpa" IN {
     type master;
     file "lan.localhost";
     allow-update { any; };
 };

 vim /etc/wan.zones
 zone "lyw.com" IN {
     type master;
     file "wan.localhost";
     allow-update { any; };
 };
 zone "201.168.192.in-addr.arpa" IN {
     type master;
     file "wan.localhost";
     allow-update { any; };
 };

复制数据文件并修改

cd /var/named
cp -a named.localhost wan.localhost
cp -a named.localhost lan.localhost
vim /var/named/wan.localhost
$TTL 1D
@    IN SOA    lyw.com. rname.invalid. (
                202309211    ; serial
                1D        ; refresh
                1H        ; retry
                1W        ; expire
                3H )        ; minimum
NS    www.lyw.com.
NS    www2.lyw.com.
www    A    192.168.201.3
www2    A    192.168.201.4
dns1    A    192.168.201.30
dns2    A    192.168.201.40
vim /var/named/lan.localhost
$TTL 1D
@    IN SOA    lyw.com. rname.invalid. (
                202309211    ; serial
                1D        ; refresh
                1H        ; retry
                1W        ; expire
                3H )        ; minimum
NS    www.lyw.com.
NS    www2.lyw.com.
www    A    192.168.241.3
www2    A    192.168.241.4
dns1    A    192.168.241.30
dns2    A    192.168.241.40
#重启服务
systemctl restart named

客户端测试
lan网段测试
LINUX网络服务之DNS详解_第7张图片
wan网段测试
LINUX网络服务之DNS详解_第8张图片

你可能感兴趣的:(运维linuxdns)