Linux下dns解析服务:部署、正向解析、反向解析、双向解析、加密等

116 篇文章 0 订阅
114 篇文章 0 订阅

Linux下dns解析服务

1.安装部署dns

DNS,Domain Name System,域名系统。万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户方便的访问网络,主要负责把域名和IP地址的互换,DNS运行于TCP|UDP的53端口上。

(1)安装bind

yum install -y bind

(2)设置防火墙

firewall-cmd --permanent --add-service=dns		设置防火墙允许dns服务
firewall-cmd --reload 							使命令立即生效

在这里插入图片描述

(3)开启named服务

systemctl start named
注:开启服务时,因为系统本身的加密字符不够而服务无法正常开启,可以在虚拟机中随意敲击键盘,并且只有在服务开启后才可以看到/etc/rndc.key文件

(4)修改named文件

需要修改以下信息:

listen-on port 53{any;};			设置监听所有域名

allow-query	{any;};					设置所有设备均可访问域名缓存

forwards {114.114.114.114;};		设置当缓存中查找不到域名时,直接去114.114.114.114查找

dnssec-validatiom no;				关闭dns扫描

保存退出后执行以下命令:
systemctl restart named				重启named

在这里插入图片描述
在这里插入图片描述

2.高速缓存

配置之后,当访问某个网址时会将此解析缓存下来,以后再次访问此网址就直接从缓存读取,速度更快。

首先在真机开启路由功能,打开防火墙并开启地址伪装,并在虚拟机中配置好网关。

再在虚拟机中进行以下操作:

vim /etc/resolv.conf
nameserver 172.25.254.128         	将访问的dns服务器改为自己

在这里插入图片描述

netstat -antulpe |grep named  		查看是否开启dns端口
dig www.baidu.com			首次访问
dig www.baidu.com  			已访问过的,下次访问缓存为0s

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

真机:

vim /etc/resolv.conf 
nameserver 172.25.254.128    		dns解析改为已搭建的dns服务器ip

在这里插入图片描述

dig www.baidu.com   			通过搭建的dns服务器访问,已访问过的,下次访问缓存为0s

在这里插入图片描述

3.正向解析(通过域名解析ip)

vim /etc/named.rfc1912.zones					编辑配置文件

编辑:

zone "haohao.com" IN {		域名
        type master;
        file "haohao.com.zone";	对应文件
        allow-update { none; };
};

在这里插入图片描述

cd /var/named
cp -p named.loopback haohao.com.zone				复制一份文件包括其权限(一定要加-p)

在这里插入图片描述
编辑:

vim haohao.com.zone						编辑解析文件

$TTL 1D
@       IN SOA  dns.haohao.com. root.haohao.com. (			谁授权 谁维护
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.haohao.com.
dns     A       172.25.254.128
www     A       172.25.254.128					新建域名


在这里插入图片描述

systemctl restart named

dig www.emp.com    						解析新建域名

在这里插入图片描述

真机:

vim /etc/resolv.conf
nameserver 172.25.254.128

dig www.haohao.com

在这里插入图片描述

在这里插入图片描述

4.CNAME

vim haohao.com.zone

编辑:

bbs     CNAME   linux   		域名重定向
linux   A        172.25.254.188		域名
linux   A        172.25.254.199

在这里插入图片描述

dig bbs.haohao.com

在这里插入图片描述

5.反向解析(PTR)(通过ip解析域名)

vim /etc/named.rfc1912.zones 

编辑:

zone "254.25.172.in-addr.arpa" IN {	反向解析路径
        type master;
        file "haohao1.com.ptr";		对应解析文件
        allow-update { none; };
};

在这里插入图片描述

cp -p named.localhost haohao1.com.ptr
vim haohao1.com.ptr

编辑:

$TTL 1D
@       IN SOA  dns.haohao1.com. root.haohao1.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.haohao.com.
dns     A       172.25.254.128
185    PTR      bbs.haohao1.com.		反向解析域名
195    PTR      www.haohao1.com.

在这里插入图片描述

dig -x 172.25.254.185			解析ip对应的域名
dig -x 172.25.254.195


在这里插入图片描述

在这里插入图片描述

真机:

vim /etc/resolv.conf
nameserver 172.25.254.128		修改解析指向文件

dig -x 172.25.254.185			解析ip对应的域名
dig -x 172.25.254.195

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.双向解析(内网与外网)

cp -p  /var/named/emp.com.zone /var/named/emp.com.localnet
vim emp.com.localnet
替换172.25.254为192.168.0(:%s/172.25.254/192.168.0/g) 		将所有的网络位更换为内网提供服务

在这里插入图片描述

cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.localnet
vim /etc/named.rfc1912.localnet
zone "haohao.com" IN {
        type master;
        file "haohao.com.localnet";
        allow-update { none; };
};

在这里插入图片描述

vim /etc/named.conf
/*
zone "." IN {
        type hint;
        file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
*/
view localnet {
        match-clients { 172.25.254.128; };			自己使用
        zone "." IN{
                type hint;
                file "named.ca";
        };
        include "/etc/named.rfc1912.localnet";			访问内网文件
};

view internet {
        match-clients { any; };					任何人使用
        zone "." IN{
                type hint;
                file "named.ca";
        };
        include "/etc/named.rfc1912.zones";			访问文件
};

在这里插入图片描述

systemctl restart named							重启

测试:

本机:
vim /etc/resolv.conf
nameserver 172.25.254.128
本地解析
dig www.haohao.com     192.168.0.128

在这里插入图片描述

其他:

vim /etc/resolv.conf
nameserver 172.25.254.128	
外网访问
dig www.haohao.com     172.25.254.128

在这里插入图片描述

7.搭建备dns服务器

首先要注释双向解析

在这里插入图片描述

备dns服务器:

配置IP
配置yum源

部署dns
yum install bind -y 
firewall-cmd --permanent --add-service=dns
firewall-cmd --reload

配置文件以及指向文件修改

vim /etc/named.conf
listen-on port 53 { any; };

allow-query     { any; };

vim /etc/named.rfc1912.zones
zone "haohao.com" IN {
        type slave;
        masters { 172.25.254.128; };  		主dns网络ip
        file "slaves/westos.com.zone";
        allow-update { none; };

在这里插入图片描述
在这里插入图片描述

systemctl restart named

vim /etc/resolv.conf
nameserver 172.25.254.228

dig www.haohao.com  

在这里插入图片描述
在这里插入图片描述

主备同步更新
方法1:

解析文件以及指向文件修改

vim haohao.com.zone

 1       ; serial       			用来提醒有更新

www     A       172.25.254.189  		dns变更

vim /etc/named.rfc1912.zones 

 also-notify { 172.25.254.228; };		允许同步设备

systemctl restart named

在这里插入图片描述
在这里插入图片描述

测试 :

dig www.haohao.com

在这里插入图片描述

在这里插入图片描述

方法2:
主dns:
selinux :disable
systemctl start named

vim /etc/named.rfc1912.zones
allow-update { 172.25.254.228; };			允许谁更新

chmod 770 /var/named
systemctl restart named

在这里插入图片描述
实时同步更新:
备dns:

nsupdate

> server 172.25.254.128
> update add hello.haohao.com 86400 A 172.25.254.179	更新
> send							发送

在这里插入图片描述

dig hello.haohao.com

在这里插入图片描述

8.dns加密:

清理被污染的文件:

cd /var/named
ls
rm -rf haohao.com.zone.jnl			删除被污染的文件
cp -p /mnt/haohao.com.zone .		复制备份文件
systemctl restart named 		重启服务
主dns:
cd /mnt
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST haohao	产生钥匙
(-a 加密方式 -b 钥匙大小 -n 主机名称 haohao 钥匙名称)	
生成:Khaohao.+157+65037
ls
Khaohao.+157+65037.key  Khaohao.+157+65037.private	钥匙文件	
cat Khaohao.+157+65037.key
查看:haohao. IN KEY 512 3 157 c95+YrY1Mn4P458rEFIPOw==
cp -p /etc/rndc.key /etc/haohao.key		

在这里插入图片描述

vim /etc/haohao.key
编辑:
key "haohao" {
        algorithm hmac-md5;
        secret "c95+YrY1Mn4P458rEFIPOw==";
};

在这里插入图片描述

vim /etc/named.conf
编辑:
include "/etc/haohao.key";			添加钥匙

在这里插入图片描述

vim /etc/named.rfc1912.zones		编辑配置文件
编辑:
zone "haohao.com" IN {
        type master;
        file "haohao.com.zone";
        allow-update { key haohao; };	允许有钥匙的用户更新
        also-notify { 172.25.254.74; }; 
};

scp Kemp.+157+65037.* root@172.25.254.228:/opt	发送钥匙

在这里插入图片描述

在这里插入图片描述

测试机:
cd /opt
ls
Khaohao.+157+65037.key  Khaohao.+157+65037.private

nsupdate -k Kemp.+157+65037.key		设置有钥匙的用户可以用钥匙更新
输入以下指令:
server 172.25.254.74
update add hello.haohao.com 86400 A 172.25.254.185	
send

dig hello.emp.com  172.25.254.185

在这里插入图片描述

8.dns动态域名解析dhcp

配置dhcp

主dns部署apache服务:
yum install dhcp -y
vim /etc/dhcp/dhcpd.conf
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
编辑:
option domain-name "emp.com";
option domain-name-servers 172.25.254.229;

subnet 172.25.254.0 netmask 255.255.255.0 {
  range 172.25.254.50 172.25.254.80;
  option routers 172.25.254.29;
}
删除27/28,删除35以后;

在这里插入图片描述

重启:
systemctl restart dhcpd
firewall-cmd --permanent --add-service=dhcp
firewall-cmd --reload

备dns:
vim /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=dhcp
删掉 IPADDR 和 PREFIX
systemctl restart network

在这里插入图片描述

主dns:
vim /etc/dhcp/dhcpd.conf

 key haohao {
         algorithm hmac-md5
         secret p5r0xjGy/ghL1SQvHACgTw==;
       };

   zone "haohao.com" {
     primary 172.25.254.228;
     key haohao;
   }

在这里插入图片描述

vim haohao.com.zone
编辑:
只需要留一个dns
systemctl restart dhcpd

在这里插入图片描述

备dns上:
hostnamectl set-hostname test.haohao.com
systemctl restart network

在这里插入图片描述
在这里插入图片描述

10.DNS排错

NOERROR:查询成功
NXDOMAIN:服务器提示不能存在这样的名称
SERVFAIL:DNS服务器停机或DNSSEC响应验证失败
REFUSED:DNS服务器拒绝回答(也许是出于访问控制)

11.DNS资源记录

DNS区域采用资源记录的形式存储信息,每条资源记录具有一个类型,表明其保留的数据类型。
A:名称至IPV4地址
AAAA:名称至IPV6地址
CNAME:名称至规范名称(包含A/AAAA记录的另一个名名称)
PTR:IPV4/IPV6地址至名称
MX:用于名称的邮件交换器(向何处发送其电子邮件)
NS:域名的名称服务器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值