一文看懂 Linux DNS服务器安装、配置和维护 | 收藏级干货

@[TOC](文章目录) # 前言       DNS域名系统,因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析。DNS协议运行在UDP协议之上,使用端口号是53 ### 一、域名解析 ##### 1、域名解析介绍       域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便的访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。       域名解析也叫域名指向,说白了就是将好记的域名解析成IP,服务由DNS服务器完成,是把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定       域名解析的作用主要就是为了便于记忆;一个域名对应一个IP地址,一个IP地址可以对应多个域名 ##### 2、域名解析过程       Internet上的计算机是通过IP地址来定位的,当应用过程需要将一个主机域名映射为IP地址时,就会调用域名解析函数,解析函数将待转换的域名放在DNS请求中,以UDP报文方式发送给本地域名服务器。本地的域名服务器查找到域名后,将对应的IP地址放在应答报文中返回 ##### 3、DNS域名分布式结构 ①一级域名 .com          #代表国际的商业组织 .net         #代表国际的网络运营商 .edu         #代表教育机构 .cn          #代表中国 .org          #代表非盈利组织 ②二级域名 .net.cn         #代表中国的网络运营商 .com.cn         #代表中国的商业组织 .edu.cn          #代表中国的教育机构 ③三级域名 .sina.com.cn          #具体公司域名 ### 二、DNS服务介绍与搭建DNS服务器 ##### 1、DNS解析的作用 正向解析 - 根据主机名称(域名)查找其对应的IP地址 - 这是最基本、最常用的功能 反向解析 - 根据IP地址查找其对应的主机名称(域名) - 反垃圾邮件/安全防护等领域使用 ##### 2、构建DNS服务器 主配置文件(设置监听地址/端口、区域数据存放位置等):/etc/named.conf ```powershell [root@localhost ~]# yum -y remove firewalld //卸载防火墙 [root@localhost ~]# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config [root@localhost ~]# cp /etc/named.conf /etc/namd.conf.bak //备份DNS主配置文件 [root@localhost ~]# vim /etc/named.conf //修改主配置文件 options { directory "/var/named"; //指定地址库文件的位置 }; zone "baidu.cn" IN { //IN 为internet的缩写,互联网 type master; //hint根域名;master为主DNS服务器 file "baidu.cn.zone"; //地址库文件的名字,需要自己在/var/named下创建 }; ``` 地址库文件(定义DNS区域、类型、地址文件路径等):/var/named/ ```powershell [root@localhost ~]# cd /var/named [root@localhost named]# cp -p named.localhost baidu.com.zone [root@localhost ~]# vim /var/named/baidu.com.zone @ IN SOA @ rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum baidu.cn. NS localhost.baidu.cn. //nameserver,定义域名对应的名称服务器 localhost.baidu.cn. A 192.168.1.5 //A代表IPV4的正向解析记录 www.baidu.com. A 1.2.3.4 ftp.tedu.cn. A 5.6.7.8 [root@localhost ~]# systemctl restart named //重启服务 [root@localhost ~]# systemctl enable named //设置开机自启 ``` ##### 3、多区域DNS服务 ```powershell [root@localhost ~]# vim /etc/named.conf //修改主配置文件 zone "qq.cn" IN { type master; //根域名,master主DNS服务器 file "qq.cn.zone"; #地址库文件的名字,需要自己在/var/named下去创建 }; zone "baidu.cn" IN { type master; file "baidu.cn.zone"; }; [root@localhost ~]# vim /var/named/baidu.com.zone ... baidu.com. NS C C A 192.168.1.2 www A 1.2.3.4 [root@localhost ~]# vim /var/named/qq.cn.zone qq.cn. NS C C A 192.168.1.3 ss A 5.6.7.8 [root@localhost ~]# systemctl restart named //重启服务 [root@localhost ~]# systemctl enable named //设置开机自启 ```
上一篇:Linux系统中的DNS域名解析


下一篇:Angular开发实践(二):HRM运行机制