DNS配置 (正向和反向解析)
---------------------------------------
一、前言
二、环境
三、案例
四、配置
五、解析测试
---------------------------------------
一、前言
DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。在RFC文档中RFC 2181对DNS有规范说明,RFC 2136对DNS的动态更新进行说明,RFC 2308对DNS查询的反向缓存进行说明。
DNS区域分为两大类:正向查找区域和反向查找区域,其中正向查找区域用于FQDN到IP地址的映射,当DNS客户端请求解析某个FQDN时,DNS服务器在正向查找区域中进行查找,并返回给DNS客户端对应的IP地址;反向查找区域用于IP地址到FQDN的映射,当DNS客户端请求解析某个IP地址时,DNS服务器在反向查找区域中进行查找,并返回给DNS客户端对应的FQDN。由于区域类别、区域类型的不同,在DNS服务器上创建区域时的操作也不同。
FQDN:(Fully Qualified Domain Name)完全合格域名/全称域名,是指主机名加上全路径,全路径中列出了序列中所有域成员。全域名可以从逻辑上准确地表示出主机在什么地方,也可以说全域名是主机名的一种完全表示形式。从全域名中包含的信息可以看出主机在域名树中的位置。DNS解析流程:首先查找本机HOSTS表,有的直接使用表中定义,没有查找网络连接中设置的DNS 服务器由他来解析。
二、环境
1.系统:RedHat6.5 32位 IP:192.168.2.100/24
2.软件包:
bind-9.8.2-0.17.rc1.el6_4.6.i686 bind主程序
bind-chroot-9.8.2-0.17.rc1.el6_4.6.i686 为了提高DNS安全,配置文件限定在一个固定目录中
bind-utils-9.8.2-0.17.rc1.el6_4.6.i686 测试相关命令
bind-libs-9.8.2-0.17.rc1.el6_4.6.i686 bind命令相关函数库
3.配置文档:
/etc/named.conf bind主配置文档
/etc/named.rfc1912.zones 区域声明文件
/var/named/named.localhost 区域样例文件
三、案例
www.abc.com 192.168.2.10 要求使用别名www1.abc.com也可以访问
ftp.abc.com 192.168.2.20
四、配置
1.打开防火墙及SELinux
# setup //在图形界面下配置防火墙
选中“Firewall configuration”,并进入。
使用“空格键”,打开防火墙,选中“Customize”,并进入。
选中DNS并打开,然后选中Close,再选中OK,再选中yes,退出即可。
# iptables -L //查看防火墙规则,看到以下两条规则。 ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:domain ACCEPT udp -- anywhere anywhere state NEW udp dpt:domain # getenforce //查看SELinux Enforcing
2.配置DNS
# yum install bind bind-chroot bind-utils # service named start //如果启动较慢,请稍等片刻 Generating /etc/rndc.key: [ OK ] Starting named: [ OK ] # netstat -tupln |grep named //查看DNS的启动端口 tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 2229/named tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 2229/named tcp 0 0 ::1:53 :::* LISTEN 2229/named tcp 0 0 ::1:953 :::* LISTEN 2229/named udp 0 0 127.0.0.1:53 0.0.0.0:* 2229/named udp 0 0 ::1:53 :::* 2229/named # vim /etc/named.conf //编辑主配置文件(只需修改两处)
# vim /etc/named.rfc1912.zones //添加区域声明文件
正向区域声明文件
zone "abc.com" IN { type master; file "abc.com.zone"; allow-update { none; }; };
反向区域声明文件
zone "2.168.192.in-addr.arpa" IN { type master; file "abc.com.local"; allow-update { none; }; };
编写区域文件
# cd /var/named/ # cp -p named.localhost abc.com.zone # cp -p named.localhost abc.com.local # vim abc.com.zone //编辑正向区域文件
# vim abc.com.local //编辑反向区域文件
# service named restart //重启服务 Stopping named: . [ OK ] Starting named: [ OK ]
五、解析测试
1.本机解析测试
# nslookup > server 192.168.2.100 //指定DNS服务器地址 Default server: 192.168.2.100 Address: 192.168.2.100#53 > www.abc.com //正向解析 Server: 192.168.2.100 Address: 192.168.2.100#53 Name: www.abc.com Address: 192.168.2.10 > www1.abc.com //别名解析 Server: 192.168.2.100 Address: 192.168.2.100#53 www1.abc.com canonical name = www.abc.com. Name: www.abc.com Address: 192.168.2.10 > ftp.abc.com Server: 192.168.2.100 Address: 192.168.2.100#53 Name: ftp.abc.com Address: 192.168.2.20 > 192.168.2.10 //反向解析 Server: 192.168.2.100 Address: 192.168.2.100#53 10.2.168.192.in-addr.arpa name = www.abc.com. > 192.168.2.20 Server: 192.168.2.100 Address: 192.168.2.100#53 20.2.168.192.in-addr.arpa name = ftp.abc.com. > exit
2.客户机解析测试(物理机win7)
C:\Users\Administrator>nslookup 默认服务器: UnKnown Address: fec0:0:0:ffff:: > server 192.168.2.100 默认服务器: [192.168.2.1 Address: 192.168.2.100 > www.abc.com 服务器: [192.168.2.100] Address: 192.168.2.100 名称: www.abc.com Address: 192.168.2.10 > www1.abc.com 服务器: [192.168.2.100] Address: 192.168.2.100 名称: www.abc.com Address: 192.168.2.10 Aliases: www1.abc.com > ftp.abc.com 服务器: [192.168.2.100] Address: 192.168.2.100 名称: ftp.abc.com Address: 192.168.2.20 > 192.168.2.10 服务器: [192.168.2.100] Address: 192.168.2.100 名称: www.abc.com Address: 192.168.2.10 > 192.168.2.20 服务器: [192.168.2.100] Address: 192.168.2.100 名称: ftp.abc.com Address: 192.168.2.20 > exit
转载于:https://blog.51cto.com/hatech/1372501