Linux系统的DNS解析

1、高速缓存DNS
1)dns服务器
BIND时最广泛的开源名称服务器
在RHEL中,通过bind软件包提供
防火墙开启端口53/TCP 和53/UDP
主配置文件在/etc/named.conf
/var/named目录包含名称服务器所使用的其他数据文件
/etc/named.conf的用法:
1、//或者#至行末尾是注释,//之间也是注释
2、指令以分号(;)结束
3、文件以options块开始,其中包含控制named如何运作的指令
4、zone块控制named如何查对于其具有权威性的根名称服务器和区域
2)配置
yum install bind -y 安装dns服务器
systemctl start named 开启服务
systemctl stop firewalld
netstat -antlupe | grep named 查看接口情况
vim /etc/named.conf
13 listen-on port 53 { any; }; 使任意网络都可以接入53接口
19 allow-query { any; }; 使任何人都可以来连接此DNS服务
20 forwarders {114.114.114.114;}; 设置解析域名为114.114.114.114
34 dnssec-validation no; 取消验证,实验是内网 ,不需要验证,yes是表示网警检测
systemctl restart named

测试端联网并配置如下:
systemctl start firewalld 开启防火墙
firewall-cmd --list-all 查看masquerade是否开启
firewall-cmd --add-masquerade 打开masquerade
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置DNS服务
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
vim /etc/resolv.conf
nameserver 172.25.254.147
在配置了服务的主机输入 dig www.taobao.com
需要时间2343ms如下:
在这里插入图片描述
在另外两台主机分别输入 dig www.taobao.com
用时分别为0ms,如下
在这里插入图片描述
2、正向解析
a、修改配置文件

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

dnssec-validation no;
b、创建域名
vim /etc/named.rfc1912.zones 此文件下写入的内容等同于在主配置文件/etc/named.conf下,分开写时为了便于维护
24 zone “westos.com” IN { 维护的域名为westos.com
25 type master;
26 file “westos.com.zone”; 域名文件,查询时候要查看westos.com.zone文件
27 allow-update { none; };
};
c、编写正向解析文件
cd /var/named/
ls
cp -p named.localhost westos.com.zone 生成域名文件,-p表示权限同步过来,复制一个模板,此处写westos.com.zone是因为配置文件中写的查找的文件是westos.com.zone
vim westos.com.zone
1 $TTL 1D ##表示客户缓存可以保存一天
2 @ IN SOA dns.westos.com. rname.invalid. ( @即表示域westos.com,SOA是授权起始。此文件中会自动添加@表示内容,故加“ . ”表示域名到此结束。“dns.westos.com.”客户访问时可以看到,即客户所访问的域名,此处rname.invalid. 表示谁来维护这台服务器
3 0 ; serial dns主从同步时间,当主dns此值发生变化,辅助dns服务器会同步主dns服务器
4 1D ; refresh 刷新时间是1天
5 1H ; retry 当访问无果时,1小时后可再次访问
6 1W ; expire 客户查询内容的有效期限,此处为1万天
7 3H ) ; minimum 缓存最短保存的时间
8 NS dns.westos.com.
9 dns A 127.25.254.147 将域名dns.westos.com转变为127.25.254.137
10 www A 172.25.254.111 将域名www.westos.com转变为172.25.254.111
11 bbs A 172.25.254.222 同上
systemctl restart named 重启服务

配置dns服务
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试
在这里插入图片描述
在这里插入图片描述
搜索www.westos.com
dig www.westos.com
在这里插入图片描述
搜索bbs.westos.com
dig bbs.westos.com
在这里插入图片描述
2)轮循、CNAME、MX的写法表示
vim westos.com.zone
1 $TTL 1D
2 @ IN SOA dns.westos.com. rname.invalid. (
3 0 ; serial
4 1D ; refresh
5 1H ; retry
6 1W ; expire
7 3H ) ; minimum
8 NS dns.westos.com.
9 dns A 127.25.254.147
10 www CNAME bbs.a.westos.com. 将www.westos.com转化成内部地址bbs.a.westos.com
11 bbs.a A 172.25.254.222
12 bbs.a A 172.25.254.111 设置轮循时,配置两个就可以
13 westos.com. MX 1 mail.westos.com. 优先级时1,MX–>邮件交换器
14 mail A 172.25.254.147 当别人发送邮件时,此主机接收
在这里插入图片描述
在这里插入图片描述
测试:
<1>测试CNAME-----dig www.westos.com,可以看到如下, www.westos.com转化成内部地址bbs.a.westos.com
在这里插入图片描述
<2>测试轮循 dig www.westos.com ,第一次搜索,看到是22服务器在处理,第二次时11服务器在处理,如下
在这里插入图片描述
在这里插入图片描述
<3>MX测试
发邮件给westos.com,发送成功
mail root@westos.com
Subject: adsf
asfsa
dfsasaf
.
EOT ##ctrl+d
mailq ##查看发送列表
在这里插入图片描述
3、反向解析
vim /etc/named.rfc1912.zones
49 zone “254.25.172.in-addr.arpa” IN { ##此处注意zone后面的写法,反着写的
50 type master;
51 file “172.25.254.ptr”;
52 allow-update { none; };
53 };
ls
cp -p named.loopback 172.25.254.ptr
vim 172.25.254.ptr
1 $TTL 1D
2 @ IN SOA dns.westos.com. haha.invalid. (
3 0 ; serial
4 1D ; refresh
5 1H ; retry
6 1W ; expire
7 3H ) ; minimum
8 NS dns.westos.com.
9 dns A 127.25.254.147
10 137 PTR dns.westos.com.
11 111 PTR www.westos.com.
12 222 PTR bbs.westos.com.
systemctl restart named
实验:反向解析与正向解析思路一致,部分配置有所不同:
1)配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
dig -x 172.25.254.111,可以看到解析成功
在这里插入图片描述
4、双向解析-----双向解析即内外网分两套查询体系,
编辑配置文件,使配置文件对两套解析文件都识别
修改配置文件
vim /etc/named.conf 修改配置文件,写入内外网分别对应
51 /*zone “.” IN {
52 type hint;
53 file “named.ca”;
54 };
55 */

56 view localnet {
57 match-clients{ localhost; };
58 zone “.” IN {
59 type hint;
60 file “named.ca”;
61 };
62 include “/etc/named.rfc1912.zones”; 内网访问的文件
63 };
64
65

66 view internet {
67 match-clients{ any; };
68 zone “.” IN {
69 type hint;
70 file “named.ca”;
71 };
72 include “/etc/named.rfc1912.inter”; 外网访问的文件
73 };

cp /etc/named.rfc1912.zones /etc/named.rfc1912.inter -p 生成外网域名文件
vim /etc/named.rfc1912.inter 配置外网域名文件
25 zone “westos.com” IN {
26 type master;
27 file “westos.com.inter”;
28 allow-update { none; };
29 };

cd /var/named/
ls
cp -p westos.com.zone westos.com.inter 生成外网查询文件
vim westos.com.inter
:%s/172.25.254/192.168.0/g
systemctl restart named
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
真机vim /etc/resolv.conf
nameserver 172.25.254.xxx
在这里插入图片描述
在这里插入图片描述
在本机 dig www.westos.com
在这里插入图片描述
在真机 dig www.westos.com
在这里插入图片描述
5、辅助DNS
注意:每次更改A记录文件后,都必须更改serial的数值,这个值最大10位
主DNS:
systemctl stop firewalld
vim /etc/named.conf
listen-on port 53 { any; };
allow-query { any; };

dnssec-validation no;
vim /etc/named.rfc1912.zones
25 zone “westos.com” IN {
26 type master;
27 file “westos.com.zone”;
28 allow-update { none; };
29 also-notify { 172.25.254.247; }; ##允许谁同步
30 };
systemctl restart named

辅助dns
yum install bind -y
systemctl start named
systemctl stop firewalld
vim /etc/named.conf
listen-on port 53 { any; };
allow-query { any; };

dnssec-validation no;
vim /etc/named.rfc1912.zones
25 zone “westos.com” IN {
26 type slave;
27 masters { 172.25.254.147; }; ##要同步的对象
28 file “slave/westos.com.zone”;
29 allow-update { none; };
systemctl restart named
配置主dns:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
辅助dns:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试:辅助-- vim /etc/resolv.conf
nameserver
dig www.westos.com
检测辅助dns配置成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在主dns上更改解析地址 注意:每次更改A记录文件后,都必须更改serial的数值,这个值最大10位
vim westos.com.zone
1 $TTL 1D
2 @ IN SOA dns.westos.com. rname.invalid. (
3 2019021602 ; serial 辅助dns查看此值,当此值发生改变时,辅助dns同步,此值最大十位,为方便分析,时间+当天修改次数
4 1D ; refresh
5 1H ; retry
6 1W ; expire
7 3H ) ; minimum
8 NS dns.westos.com.
9 dns A 127.25.254.147
10 www CNAME bbs.a.westos.com.
11 bbs.a A 172.25.254.22
12 bbs.a A 172.25.254.11
13 westos.com. MX 1 mail.westos.com.
14 mail A 172.25.254.147
systemctl restart named
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
辅助dns上dig www.westos.com, 可以看到与主dns同步
在这里插入图片描述
6、dns的远程更新
1)基于ip
主DNS
vim /etc/named.rfc1912.zones
25 zone “westos.com” IN {
26 type master;
27 file “westos.com.zone”;
28 allow-update { 172.25.254.247; }; ##允许172.25.254.247主机进行远程更新
29 also-notify { 172.25.254.247; };
30 };
chomd 770 /var/named/
systemctl restart named
getenforce ##查看selinux状态是否是disable,如果是,不需修改,如果不是做以下操作,否则会影响更新。
如果不是:
getsebool -a |grep named
named_tcp_bind_http_port --> off
named_write_master_zones --> off
setsebool -P named_write_master_zones on
主DNS 进行配置
cp -p westos.com.zone /mnt/ 此处为了实验结束恢复设置便捷,与实验本身配置无关
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在辅助dns测试
nsupdate ##添加
> server 172.25.254.147
> update add hello.westos.com 86400 A 172.25.254.111 86400表示1天,即1天是86400秒
> send
> quit
dig hello.westos.com
在这里插入图片描述
在这里插入图片描述
主dns/var/named/中会生成 westos.com.zone.jnl文件
在这里插入图片描述
westos.com.zone内容在重启服务后才会发生变化
重启服务前
在这里插入图片描述
重启后
在这里插入图片描述
[root@dns2 ~]# nsupdate ##删除,与添加同理
> server 172.25.254.147
> update delete hello.westos.com
> send
> quit
在这里插入图片描述
2)基于key
主dns
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos 生成密钥,加密方式是HMAC-MD5,长度是128字节,名字是westos
ls
cat Kwestos.+157+40174.key
westos. IN KEY 512 3 157 mVM6n8YnZX3rzyno2/emCQ==
vim /etc/named.conf
43 include “/etc/westos.key”;
44 logging {

cp -p /etc/rndc.key /etc/westos.key
vim /etc/westos.key
1 key “westos” { 注意修改引号内文件名
2 algorithm hmac-md5;
3 secret “mVM6n8YnZX3rzyno2/emCQ==”; 加密字符
4 };

vim /etc/named.rfc1912.zones
25 zone “westos.com” IN {
26 type master;
27 file “westos.com.zone”;
28 allow-update { key westos; }; 允许有key的更新
29 also-notify { 172.25.254.247; };
30 };
31

systemctl restart named
scp Kwestos.+157+40174.* root@172.25.254.247:/mnt/ 发送命令

主dns先恢复之前的配置
rm -fr westos.com.zone westos.com.zone.jnl
cp -p /mnt/westos.com.zone .
systemctl restart named
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
辅助DNS端进行更新,如果时间不同步,会出错,

nsupdate -k Kwestos.+157+40174.private
> server 172.25.254.147
> update add haha.westos.com 86400 A 172.25.254.95
> send
> quit
在这里插入图片描述
dig haha.westos.com,可以看到更新成功

7、ddn—花生壳
dns主服务器
配置DHCP服务
vim /etc/dhcp/dhcpd.conf
7 option domain-name “westos.com”; 维护的域
8 option domain-name-servers 172.25.254.137;

14 ddns-update-style interim; 开启dhcp更新dns功能

30 subnet 172.25.254.0 netmask 255.255.255.0 {
31 range 172.25.254.90 172.25.254.99;
32 option routers 172.25.254.137;
33 }
34
35 key westos { 更新dns时用到的key,也就是/etc/westos.key中
36 algorithm hmac-md5;
37 secret mVM6n8YnZX3rzyno2/emCQ==;
38 }
39
40 zone westos.com. { 指定dhcp的更新域
41 primary 127.0.0.1; 指定dns所在的主机ip,当dns在本机时,可用回环内部更新
42 key westos; 指定更新这个域时用到的key的名称
43 }
systemctl restart dhcpd
测试:
另一台主机 hostnamectl set-hostname news.westos.com 设定这个主机的主机名为news.westos.com,且这个名称在原有dns中没有。
配置网络为DHCP
systemctl restart network
dig news.westos.com

在主dns137上修改dhcp分配的网段范围
vim /etc/dhcp/dhcpd.conf

另一台主机重新获得ip地址
systemctl restart network
dig news.westos.com
可以看到两次解析的ip地址不同
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
另一台配置dhcp网络辅dns主机
在这里插入图片描述
在这里插入图片描述
修改主dns分配ip的网段
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
另一台主机

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

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值