linux基础学习(十六)DNS服务器的相关配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux基础学习(十六)DNS服务器的相关配置相关的知识,希望对你有一定的参考价值。
DNS高速缓存
什么是DNS高速缓存?
DNS 服务器可以高速缓存从其他 DNS 服务器收到的 DNS 记录。 也可以在 DNS 客户服务中使用高速缓 存,将其作为 DNS 客户端保存在最近的查询过程中得到的信息高速缓存的方法。 总的来说就是提高解 析速度。 我们需要两台虚拟机,一台服务端,一台客户端 服务端: 安装DNS服务 yum install bind -y 运行DNS服务 systemctl start named 在火墙中添加DNS服务 firewall-cmd --list-all (列出火墙允许的服务名称) firewall-cmd --permanent --add-service=dns (添加DNS为火墙允许的服务) firewall-cmd --reload (刷新火墙) 然后开始进行DNS配置 首先配置/etc/named.conf文件 vim /etc/named.conf 第11到17行如下, options { 11 listen-on port 53 { 127.0.0.1; }; 12 listen-on-v6 port 53 { ::1; }; 13 directory "/var/named"; 14 dump-file "/var/named/data/cache_dump.db"; 15 statistics-file "/var/named/data/named_stats.txt"; 16 memstatistics-file "/var/named/data/named_mem_stats.txt"; 17 allow-query { localhost; }; 将其进行更改为: options { 11 listen-on port 53 { any; }; 12 listen-on-v6 port 53 { ::1; }; 13 directory "/var/named"; 14 dump-file "/var/named/data/cache_dump.db"; 15 statistics-file "/var/named/data/named_stats.txt"; 16 memstatistics-file "/var/named/data/named_mem_stats.txt"; 17 allow-query { any; }; 再将第32行进行修改 32 dnssec-validation yes; --> 32 dnssec-validation no; 客户端: 从服务端主机读取域名解析 vim /etc/resolv.conf nameserver 172.25.254.101 (服务端主机IP) DNS服务器的配置(正向解析) 做完上述步骤后 然后开始配置/etc/named.rfc1912.zones vim /etc/named.rfc1912.zones 将第19到第23行复制到第25行,对粘贴的内容进行修改 jpg 设置A记录 进入/var/named,将named.localhost完全复制为你刚才所写的文件名 cd /var/named cp -p named.localhost lcdqqq.com.zone vim lcdqqq.com.zone进行修改,改为如下所示 jpg 都更改后重启DNS服务 systemctl restart named 此时在客户端dig www.lcdqqq.com即可将域名转化为IP地址 3.jpg DNS服务器的配置(反向解析) 服务端: vim /etc/named.rfc1912.zones 把第37到42行复制粘贴到43行,修改成: zone "254.25.172" IN { 44 type master; 45 file "lcdqqq.loopback"; 46 allow-update { none; }; 47 }; vim /var/named ll 把named.loopback复制为lcdqqq.loopback cp -p named.loopback lcdqqq.loopback (-p:完全复制,连权限也复制) 进入文件进行修改:(在这个配置文件里都要以.结尾,不然自动补齐lcdqqq.com) @ IN SOA dns.lcdqqq.com. root.lcdqqq.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns.lcdqqq.com. A 172.25.254.201 1 PTR www.lcdqqq.com. 101 PTR www.hello.com. 此时再在客户端dig -x 172.25.254.1就会连接到 DNS的内外网区分检测 修改etc/name.conf为: view localnet { match-clients { 172.25.254.101; }; zone "." IN { type hint; file "named.ca"; }; include "/etc/named.rfc1912.zones"; }; view internet { match-clients {any;}; zone "." IN { type hint; file "named.ca"; }; include "/etc/named.rfc1912.zones.inter"; }; 把/etc/named.rfc1912.zones复制一份命名为name.rfc1912.zones.inter 在/var/named下把lcdqqq.com.zone复制为lcdqqq.com.inter 把所有254改为0 在/var/named下把lcdqqq.loopback复制为lcdqqq.loopback.inter 把所有254改为0 用172.25.254.101和172.25.254.1分别做测试 DNS主从服务器 如果DNS服务器负载过高,则需要多个DNS服务器,一个master服务器,多个slaves服务器 做法: 再另一台服务器上安装bind 把他的nameserver改成自己 vim /etc/named.conf 更改4个配置 vim /etc/named.rfc1912.zones 把第19到24行复制并粘贴在25行,进行修改 25 zone "lcdqqq.com" IN { 26 type slave; masters { 172.25.254.100; }; 27 file "lcdqqq.com.zone"; 28 allow-update { none; }; 29 }; 再把主服务器的 vim /etc/named.rfc1912.zones 进行修改 25 zone "lcdqqq.com" IN { 26 type master; 27 file "lcdqqq.com.zone"; 28 allow-update { 172.25.254.1; }; allow-transfer { 172.25.254.1; }; also-notify { 172.25.254.1; }; 29 }; chmod 770 /var/named 在主服务器更改A记录时,将 0 ; serial进行修改,把0改为2016112601(2016年11月26日第一次修改) 这样从服务器就会自动同步 有权限的 从服务器也可以更新主服务器的A记录 nsupload server 172.25.254.101 (主服务器的IP) upload delete send KEY 可是这样一来有个问题,那就是所有IP为172.25.254.1的用户都可以更改主服务器的A记录,如果别人通过 手动方式更改自己的IP,那么就获得了权限,这样是不安全的 所以我们引入了key 在主服务器上生成公私钥 dnssec-keygen -a HMAC-MD5 -b 128 -n HOST lcdqqq 通过ls查看生成的公钥私钥的文件名,通过cat来查看密钥里的内容 在/etc/named.conf中logging上面一行写入include "/etc/lcdqqq.key" 于是我们需要在/etc下有这个lcdqqq.key文件 cp -p /etc/rndc.key /etc/lcdqqq.key vim /etc/lcdqq.key进行修改 将引号内的内容修改为你的钥匙名字 将下面的密钥内容换成自己刚才生成的 vim /etc/named.rfc1912.zones 将allow-update中的参数由IP改为key lcdqqq 然后将密钥通过scp发送给从服务器 进入从服务器有密钥的目录 nsupdate -k 私钥名字 server 172.25.254.101 update add 86400 A 172.252.54.101 send
以上是关于linux基础学习(十六)DNS服务器的相关配置的主要内容,如果未能解决你的问题,请参考以下文章
Linux网络服务学习之路——DNS域名系统服务之基础功能实验