DNS映射是将域名系统(Domain Name System)中的域名转换为对应的IP地址的过程,以便计算机能够通过网络找到并访问特定的网站或服务。
DNS映射
DNS(Domain Name System,域名系统)是互联网的一项核心服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,而不用去记住难以记忆的IP地址,通过主机名,最终得到该主机对应的IP地址的过程叫做域名解析(或主机名解析)。
DNS映射原理
1. DNS服务器分类
分类 | 作用 |
根DNS服务器 | 最顶层的域名服务器,负责管理顶级域,共有13个IP地址,但机器数量不止13台。 |
顶级域名服务器 | 负责管理二级域,如.com、.net等。 |
权威域名服务器 | 负责特定区域的域名解析,存储域名与IP的对应关系。 |
本地域名服务器 | ISP提供的DNS服务器,缓存常用域名解析结果,减少查询时间。 |
2. DNS解析过程
1、浏览器缓存检查:输入域名后,首先检查浏览器缓存是否有该域名的映射关系。
2、操作系统缓存检查:若浏览器缓存中无记录,则检查操作系统的DNS缓存文件(如hosts)。
3、本地DNS服务器查询:若上述步骤均未找到映射关系,则向本地DNS服务器发起请求。
4、根域名服务器查询:本地DNS服务器向根域名服务器发起请求,获取顶级域服务器的地址。
5、顶级域名服务器查询:根域名服务器返回顶级域服务器地址,本地DNS服务器再向其发起请求。
6、权威域名服务器查询:顶级域服务器返回权威域名服务器地址,本地DNS服务器再向其发起请求。
7、获取IP地址:权威域名服务器返回最终的IP地址,本地DNS服务器缓存该结果并返回给客户端。
DNS映射配置
1. 安装BIND
使用yum安装BIND yum install y bind bindutils
2. 配置主文件
备份原有的配置文件 cp /etc/named.conf /etc/named.conf.bak 编辑named.conf文件 vim /etc/named.conf
在/etc/named.conf
文件中添加以下内容:
options { directory "/var/named"; }; zone "." IN { type hint; file "named.ca"; }; zone "localhost" IN { type master; file "localhost.zone"; }; zone "0.0.127.inaddr.arpa" IN { type master; file "named.local"; };
3. 修改主文件所属用户
chown named /etc/named.conf
4. 设定根服务器
cd /var/named dig t NS . > named.ca
5. 编辑正解析文件
vim /var/named/localhost.zone
在localhost.zone
文件中添加以下内容:
$TTL 86400 @ IN SOA localhost. root.localhost. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS localhost. @ IN A 127.0.0.1
6. 编辑反解析文件
vim /var/named/named.local
在named.local
文件中添加以下内容:
$TTL 86400 @ IN SOA localhost. root.localhost. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS localhost. 1 IN PTR localhost.
7. 检查配置
检查正解析配置 namedcheckzone "localhost" /var/named/localhost.zone 检查反解析配置 namedcheckzone "0.0.127.inaddr.arpa" /var/named/named.local
8. 生成rndc.key并修改权限
rndcconfgen a chmod 700 rndc.key
9. 启动服务
systemctl start named systemctl enable named
10. 测试正反解析
dig @127.0.0.1 localhost dig @127.0.0.1 x 127.0.0.1
增加一个域名(zone)
1. 编辑named.conf文件
vim /etc/named.conf
在/etc/named.conf
文件中添加以下内容:
zone "abc.com" IN { type master; file "abc.com.zone"; }; zone "137.168.192.inaddr.arpa" IN { type master; file "192.168.zone"; };
2. 编辑正解析文件
vim /var/named/abc.com.zone
在abc.com.zone
文件中添加以下内容:
$TTL 86400 @ IN SOA ns1.abc.com. admin.abc.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.abc.com. @ IN A 192.168.1.1 www IN A 192.168.1.2
3. 编辑反解析文件
vim /var/named/192.168.zone
在192.168.zone
文件中添加以下内容:
$TTL 86400 @ IN SOA ns1.abc.com. admin.abc.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.abc.com. 1 IN PTR www.abc.com.
4. 检查配置文件
检查正解析配置 namedcheckzone "abc.com" /var/named/abc.com.zone 检查反解析配置 namedcheckzone "137.168.192.inaddr.arpa" /var/named/192.168.zone
5. 重启服务并测试
systemctl restart named dig @127.0.0.1 www.abc.com dig @127.0.0.1 x 192.168.1.2
相关问题与解答栏目:与本文相关内容的两个问题及解答。
问题1: 为什么需要DNS映射?
答:DNS映射是为了将人类易记的域名转换为机器可识别的IP地址,从而方便用户访问互联网资源,如果没有DNS映射,用户需要记住复杂的数字IP地址,这非常不便,DNS映射还能提高网络访问的效率和安全性。
来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/56078.html