标签:dns
简介:DNS(域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。它在UDP协议上运行,使用53端口。
UDP(用户数据报协议),是OSI(开放式系统互联)参考模型中一种无连接的传输层协议,提供面向事物的简单不可靠信息传送服务。
学习目标:配置高速缓存DNS,了解DNS的功能与用途。
DNS资源记录:DNS采用资源记录的形式存储信息。每条记录均记录具体一个类型,表明其保留的数据类型
— A : 名称至 IPv4 地址(正向记录,域名到IP)
— AAAA : 名称至 IPv6 地址
— CNAME : 名称至 "规范名称" (包含A/AAAA 记录的另一个名称)
— PTR : IPv4/IPv6地址至名称(反向记录,IP到域名)
— MX : 用于名称的邮件交换器(向何处发送其电子邮件)
— NS : 域名的名称服务器
— SOA : “授权起始”,DNS区域的信息(管理信息)
DNS排错:通过显示的信息来判断和分析为什么DNS查找的信息失败。
— NOERROR : 查询成功
— NXDOMAIN : DNS 服务器提示不存在这样的名称
— SERVFAIL : DNS 服务器停机或 DNSSEC响应验证失败
— REFUSED : DNS 服务器拒绝回答(也许是出于访问控制原因)
缓存 DNS 服务器 :
BIND 是最广泛使用的开源名称服务器,在 RHEL 中,通过bind软件包提供,防火墙开启端口53/tcp 和 53/udp ,bind 的主配置文件是 /etc/named.conf , /var/named 目录包含名称服务器所使用的其他数据文件。
配置DNS服务器:
安装 bind 软件包
yum install bind -y
编辑 /etc/named.conf 配置文件
listen-on port 53 { any; }; 控制 named 侦听的 IPv4 地址 ##这里是监听任何地址的53端口(any改为localhost,监听本地53端口)
allow-query { any; }; 控制哪些客户端可以向 DNS 服务器询问信息 ##允许与任何直连的网络使用(any改为localhost,允许与本地直连的网络使用)
dnssec-validation no;是否进行DNSSEC确认开关
重启服务
systemctl restart named
/etc/named.conf 文件还有一些重要的参数,例:
listen-on-v6 port 53 控制 named 侦听的 IPv6 地址
forwarders { IP; }; 包含 DNS 查询将转发至指定名称服务器的列表。(而不是直接联系外部名称服务器,在设有防火墙的情况中很有用。)
如何配置 DNS 的正向解析 :
编辑配置文件 vim /etc/named.rfc1912.zones
加入以下内容: zone "westos.com" IN { #指定要维护的域名
type master;
file "westos.com.zone"; #指定A记录文件名
allow-update { none; };
};
编辑A记录文件:
cd /var/named
cp -p named.localhost westos.com.zone
vim westos.com.zone
systemctl restart named #重启服务
dig hello.westos.com #dig 查看A记录解析情况
如何配置 DNS 的反向解析:
编辑配置文件 vim /etc/named.rfc1912.zones
加入以下内容: zone "254.25.172.in-addr.arpa" IN {
type master;
file "westos.com.ptr";
allow-update { none; };
};
cd /var/named
cp -p westos.com.zone westos.com.ptr
vim westos.com.ptr
systemctl restart named
dig -x 172.25.254.100 # dig 查看反向解析情况
配置 DNS 正向解析的类型:
cd /var/named
vim westos.com.zone
systemctl restart named
dig mx westos.com #dig 查看 MX 解析记录
注:CNAME(别名,此记录用于将某个别名指向到某个某个主机(A),记录上,从而无需为某个新名字解析的主机额外创建A记录)。
MX(邮件交换器),此记录列出了负责接收发到域中的电子邮件的主机,通常用于邮件的收发。
NS(名称服务器),此记录指定负责此DNS区域的权威服务器。
如何配置 DNS 内外网解析:
在desktop主机上添加一块网卡,配置 IP 为192.168.0.100
cp -p /etc/named.rfc1912.zones /etc/named.inter.zones
vim /etc/named.inter.zones
加入以下内容: zone "westos.com" IN {
type master;
file "westos.com.inter";
allow-update { none; };
};
vim /etc/named.conf
cd /var/named
cp -p westos.com.zone westos.com.inter
vim westos.com.inter
systemctl restart named
用 dig 命令查看解析情况
以下操作在客户端 server 主机上进行
vim /etc/resolv.conf
加入以下内容: nameserver 172.25.254.100
用 dig 命令查看外网解析情况
如何配置 DNS 文件同步:
在desktop上执行以下操作:
vim /etc/named.rfc1912.zones
systemctl restart named
在server上执行以下操作:
yum install bind -y
systemctl start named
vim /etc/named.conf
vim /etc/named.rfc1912.zones
systemctl restart named
cd /var/named/slaves
ls
生成westos.com.zone文件,文件内容和desktop主机上的一样
在desktop主机上修改westos.com.zone配置文件
systemctl restart named
dig bbs.westos.com ##dig解析出来的IP 为修改后的IP
在servcer主机上进行解析,显示的内容为原来的内容,因为在服务端上修改DNS客户端不能进行同步,这样的缺点就是客户端不能实时的对服务器的信息进行同步,造成信息的不正确性。
如何解决DNS服务端和客户端数据同步的问题:
在desktop 主机上进行如下操作:
vim /etc/named.rfc1912.zones
在配置文件中加入 also-notify { 172.25.254.200; }; 这个参数
vim /var/named/westos.com.zone
systemctl restart named
dig bbs.westos.com #dig 查看解析的IP为172.25.254.123
在客户端server上,
dig bbs.westos.com #dig 查看解析的IP 为 172.25.254.123
如何配置DNS可以实现通过客户端同步服务器的信息:
在desktop 服务器上编辑配置文件
vim /etc/named.rfc1912.zones
systemctl restart named
chmod g+w /var/named
参数allow-update { 172.25.254.200; }; #通过IP为172.25.254.200 的客户端可以进行文件的更新
在server客户端上执行以下操作:
dig redhat.westos.com #查看解析情况
这样做的安全级别不高,因为任何客户端都可以对服务端进行数据的更新,我们需要通过加密的方式进行更新,只有拥有密钥的客户端才可以对服务器的数据进行更新,解决安全的问题。
在desktop服务器上进行如下操作:
cp /etc/rndc.key /etc/westos.key -p
cd /mnt/
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos ##此命令生成私钥
vim /etc/westos.key
vim /etc/named.conf
在第43行加上 include "/etc/westos.key";
vim /etc/named.rfc1912.zones
systemctl restart named
scp Kwestos.+157+14602.* root@172.25.254.200:/mnt/ #将密钥给IP为200的客户端
在server客户端上
nsupdate -k Kwestos.+157+14602.private #进行数据更新
本文出自 “11721816” 博客,转载请与作者联系!
标签:dns
原文地址:http://11731816.blog.51cto.com/11721816/1812468