DNS服务的作用
将域名转换成IP地址的功能
DNS概念
DNS是一个分布式数据库,命名系统采用层次的逻辑结构,如同一棵倒置的树。这个逻辑的树形结构称为域名空间。由于DNS划分了域名空间,所以各机构可以使用自己的域名空间创建DNS信息。
FQDN域名
FQDN --完全正式域名。能准确表示出其相对于DNS域树根的位置,也就是节点到DNS树根的完整表述方式,从节点到树根采用反向书写,并将每个节点用“.”分隔。
域
DNS根域由Internet域名注册授权机构管理。*域有3类,分别为:
组织域:采用3个字符的代号,表示DNS域中所包含的组织的主要功能或活动。比如,com为商业机构组织,edu为教育机构组织,gov为*机构组织,mil为军事机构组织,net为网络机构组织,org为非营利机构组织,int为国际机构组织。
地址域:采用两个字符的国家或地区代号,如cn为中国、kr为韩国、us为美国。
反向域:这是个特殊域,名字为in-addr.arpa,用于将IP地址映射到域名(反向查询)。
DNS域名解析过程
(1)客户端向本地DNS服务器直接查询www.163.com的域名。
(2)本地DNS无法解析此域名,它先向根域服务器发出请求,查询.com的DNS地址。
(3)根域DNS管理.com、.net、.org等*域名的地址解析,它收到请求后,把解析结果返回给本地的DNS。
(4)本地DNS服务器得到查询结果后,接着向管理.com域的DNS服务器发出进一步的查询请求,要求得到163.com的DNS地址。
(5).com域把解析结果返回给本地DNS服务器0。
(6)本地DNS服务器得到查询结果后,接着向管理163.com域的DNS服务器发出查询具体主机IP地址的请求(www),要求得到满足要求的主机IP地址。
(7)163.com把解析结果返回给本地DNS服务器。
(8)本地DNS服务器得到了最终的查询结果,它把这个结果返回给客户端,从而使客户端能够和远程主机通信
正、反向解析
正向解析:正向解析是指域名到IP地址的解析过程。
反向解析:反向解析是从IP地址到域名的解析过程。反向解析的作用为服务器的身份验证。
DNS服务器配置
首先我们配置正向解析
任务要求:
某校园网要架设一台DNS服务器负责long.com域的域名解析工作。DNS服务器的FQDN为dns.long.com,IP地址为192.168.225.10。要求为以下域名实现正向域名解析服务。
dns.long.com 192.168.225.10
mail.long.com 192.168.225.2
slave.long.com 192.168.225.3
www.long.com 192.168.225.4
ftp.long.com 192.168.225.5
另外,为www.long.com设置别名为web.long.com。
实验操作
首先安装bind服务
[root@dns ~]# yum install bind bind-chroot -y
编辑全局配置文件
[root@dns ~]# vim /etc/named.conf
listen-on port 53 { any; }; //监听的IP地址及端口
listen-on-v6 port 53 { ::1; };
directory "/var/named"; //指定区域配置文件所在的路径
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; }; //指定SELinux的影响
dnssec-validation no;
......
......
include "/etc/named.rfc1912.zones"; //主配置文件
include "/etc/named.root.key";
主配置文件的名称一定要与/etc/named.conf文件中指定的文件名一致。
修改主配置文件
仿照文件中格式添加即可。
[root@dns ~]# vim /etc/named.rfc1912.zones
zone "long.com" IN {
type master;
file "long.com.zone";
allow-update{ none;};
};
修改bind的区域配置文件,
创建long.com.zone正向区域文件。
[root@dns ~]# cd /var/named //文件路径
[root@dns named]# ls
chroot data dynamic named.ca named.empty named.localhost named.loopback slaves
[root@dns named]# cp -p named.localhost long.com.zone
[root@dns named]# vim long.com.zone
$TTL 1D
@ IN SOA @ root.long.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
@ IN NS dns.long.com.
@ IN MX 10 mail.long.com.
dns IN A 192.168.225.10
mail IN A 192.168.225.2
slave IN A 192.168.225.3
www IN A 192.168.225.4
ftp IN A 192.168.225.5
web IN CNAME www.long.com.
~
在dns服务器上配置防火墙,设置主配置文件和区域文件的属组为named,然后重启DNS服务。
[root@dns ~]# firewall-cmd --permanent --add-service=dns
success
[root@dns ~]# firewall-cmd --reload
success
[root@dns ~]# chgrp named /etc/named.conf
[root@dns ~]# systemctl restart named
配置Linux客户端,并使用nslookup测试
[root@client ~]# vim /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.225.10
search long.com
[root@client ~]# nslookup
> ftp //正向查询,查询域名所对应IP
Server: 192.168.225.10
Address: 192.168.225.10#53
Name: ftp.long.com
Address: 192.168.225.5
> dns
Server: 192.168.225.10
Address: 192.168.225.10#53
Name: dns.long.com
Address: 192.168.225.10
> www
Server: 192.168.225.10
Address: 192.168.225.10#53
Name: www.long.com
Address: 192.168.225.4
> 192.168.225.10
** server can't find 10.225.168.192.in-addr.arpa.: NXDOMAIN //反向无法解析
配置反向解析
修改主配置文件,格式仿照文件即可
[root@dns ~]# vim /etc/named.rfc1912.zones
zone "225.168.192.in-addr.arpa" IN {
type master;
file "192.168.225.zone";
allow-update { none; };
};
创建192.168.225.zone 反向区域文件。
[root@dns ~]# cd /var/named/ //文件路径
[root@dns named]# ls
chroot data dynamic long.com.zone named.ca named.empty named.localhost named.loopback slaves
[root@dns named]# cp -p named.loopback 192.168.225.zone
[root@dns named]# vim 192.168.225.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
PTR localhost.
@ IN NS dns.long.com.
@ IN MX 10 mail.long.com.
10 IN PTR dns.long.com.
2 IN PTR mail.long.com.
3 IN PTR slave.long.com.
4 IN PTR www.long.com.
5 IN PTR ftp.long.com.
~
在dns服务器上配置防火墙,设置主配置文件和区域文件的属组为named,然后重启DNS服务。
[root@dns ~]# firewall-cmd --permanent --add-service=dns
success
[root@dns ~]# firewall-cmd --reload
success
[root@dns ~]# chgrp named /etc/named.conf
[root@dns ~]# systemctl restart named
> 192.168.225.10
** server can't find 10.225.168.192.in-addr.arpa.: NXDOMAIN
> ^C[root@client ~]#
[root@client ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.225.10
search long.com
[root@client ~]# nslookup
> 192.168.225.2 //反向查询,查询IP所对应域名
2.225.168.192.in-addr.arpa name = mail.long.com.
> 192.168.225.10
10.225.168.192.in-addr.arpa name = dns.long.com.
> 192.168.225.3
3.225.168.192.in-addr.arpa name = slave.long.com.
>
DNS服务器还有其他操作方式
这里不做演示