正向解析:根据域名查找IP地址
反向解析:根据IP地址查找对应的域名,多用在调试中
域名结构如下图所示,最上到下依次为根域、顶级域、二级域和主机名。如:www.baidu.com,其实完整的地址是www.baidu.com.,其中最后一个“.”表示根域,“com” 表示顶级域,“baidu”表示二级域,“www”表示主机名。对于www.sina.com.cn.域名,“www”为主机名,“sina”为二级域名,“com.cn”为顶级域名,“.”为根域
全世界只有13台IPv4根域名服务器。1个为主根服务器在美国。其余12个均为辅根服务器,其中9台在美国,欧洲2个,位于英国和瑞典,亚洲1个位于日本。
顶级域可按类型和地区来分,如类型中“.edu”表示教育类,“.com”表示商业类;按区域中“.cn”表示中国
DNS系统类型分为:缓存域名服务器、主域名服务器和从域名服务器。
缓存域名服务器也称DNS高速缓存服务器,通过向其他域名服务器查询获得域名与IP地址的对应关系记录,将域名查询结果缓存到本地,提高重复查询时的速度。
DNS缓存服务器在网络中的工作原理大致如下图所示:
该工作原理的过程描述大致如下:
当客户端访问一个域名
若一台DNS缓存服务器中有域名和IP地址的对应记录,那么DNS缓存服务器就根据对应记录将IP地址返回给客户机,客户机按IP地址去访问即可。
若没有相应记录,那么DNS缓存服务器将先去访问根域服务器(也就是那13台,如果是我们国家的话,就去日本了),根域服务器将告诉DNS缓存服务器相应的顶级域服务器在哪;接着DNS缓存服务器去找顶级域服务器,顶级域服务器告诉DNS缓存服务器二级域服务器在哪;接着DNS缓存服务器去找二级服务器,二级服务器将域名和IP地址的对应记录返回给DNS缓存服务器,DNS缓存服务器对返回的记录进行记录,方便下次转发并把对应IP地址返回给客户端,客户端便可访问相应网站了。
主域名服务器是特定DNS区域的权威服务器,具有唯一性;负责维护该区域内所有的域名与IP地址的映射记录;需要自行建立所负责区域的地址数据文件
从域名服务器也叫辅助域名服务器,是对主域名服务器的热备份;其维护的域名与IP地址记录来源主域名服务器;需要从主域名服务器自动同步区域地址数据库。
1.构建缓存域名服务器
BIND是应用最广泛的DNS服务程序。有许多相关软件依赖包,其中bind-utils是提供host工具,用在本地DNS服务自检。
主要执行程序:/usr/sbin/named
默认监听端口:53,TCP 53端口用来建立连接,UDP 53端口用来传输
服务控制:systemctl [start|stop|status|restart] named
主配置文件:/etc/named.conf,负责DNS全局功能,如:日志文件存放位置,访问权限
保存DNS解析记录的数据文件位于:/var/named/,区域配置文件,负责构建解析区域如:多域名解析,区域数据配置文件,负责管理主机解析记录,如:解析映射
主配置文件
设置DNS服务器的全局参数,包括监听地址和端口、区域数据配置文件存放的目录,使用option{…};配置段
全局配置
[root@localhost ~]# vi /etc/named.conf
... 省略部分内容
options {
listen-on port 53 { 127.0.0.1; }; ##监听端口、地址,地址可改成any
listen-on-v6 port 53 { ::1; }; ##ipv6,可删
directory "/var/named"; ##区域数据配置文件的存放位置
...省略部分内容
allow-query { localhost; }; ##允许使用本DNS服务器的网段,可改成any
...省略部分内容
};
zone "." IN { ##根域文件,里面有13个根域
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones"; ##include包括,即可使本配置文件指向区域配置文件
... 省略部分内容
区域配置文件
设置本服务器提供域名解析的特定DNS区域,包括域名、服务器角色、数据文件名等,使用zone “区域名” IN{…};的配置段。
[root@localhost ~]# vi /etc/named.rfc1912.zones
... 省略部分内容
zone "localhost.localdomain" IN { ##正向解析,域名可自己取,如:”zn.com”
type master; ##区域类型,主
file "named.localhost"; ##区域数据配置文件
allow-update { none; };
};
... 省略部分内容
zone "1.0.0.127.in-addr.arpa" IN { ##反向解析区域
type master;
file "named.loopback";
allow-update { none; };
};
区域数据配置文件
全局TTL配置及SOA记录,$TTL(Time To Live,生存时间),SOA(Start Of Authority,授权信息开始)
[root@localhost named]# vi /var/named/named.localhost
$TTL 1D ##有效解析记录的生存周期
@ IN SOA @ rname.invalid. ( ##SOA标记、域名、管理邮箱
0 ; serial ##更新序列号
1D ; refresh ##主从同步间隔
1H ; retry ##同步失败,重试间隔
1W ; expire ##失效时间,超过该时间,仍同步失败,则放弃
3H ) ; minimum ##无效解析记录的生存时间
NS @
A 127.0.0.1
AAAA ::1
在这里添加记录
网卡配置
防火墙设置
iptables -F
setenforce 0
DNS主配置文件
vi /etc/named/named.conf
区域配置文件
vi /etc/named.rfc1912.zones
区域数据配置文件
cp -p /var/named/named.localhost /var/named/zn.com.zone
vi /var/named/zn.com.zone
echo “nameserver 20.0.0.31” > /etc/resolv.conf
systemctl start named