一、DNS是什么
DNS (Domain Name Server) 域名解析服务,他可以完成域名与IP地址的互换,可以通过IP地址解析到域名,也可以通过域名解析到IP地址,IP地址是平面结构,且不容易记住,DNS是层次化的结构,便于记忆。
二、DNS用什么软件实现
1)既然用bind来实现dns解析,那就先安装bind软件
yum -y install bind
2)理清bind配置文件的关系
/etc/named.conf是dns服务的主配置文件,/etc/named.rfc1912.zones是区域配置文件,正反向区域解析文件均放在/var/named/目录下
3)DNS bind named的关系
DNS是一个服务,是提供域名解析的服务;
bind是实现这个服务的软件包;
named是dns这个服务的守护进程
三、如何构建一个DNS缓存查询服务器
1)vim named.conf
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
options {
// listen-on port 53 { 127.0.0.1; };
// 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";
// allow-query { localhost; }; #允许查询的主机
recursion yes;#是否接受递归,肯定啊
forwarders {192.168.1.80;};#forwarders指定为你解析域名的服务器ip地址,实际运作一般是运营商或isp的ip,这个ip是我们自己用来练功的
2)named-checkconf #检查配置文件是否有误,没有消息就是最好的消息,就是配置正确
开启服务, service named start(/etc/rc.d/init.d/named start) #第一次需要开启服务,之后只需要加载配置文件即可
service named reload (rndc reload)
3)dns测试工具的使用
[root@localhost ~]# rpm -ql bind-utils
/usr/bin/dig #dig测试命令工具
/usr/bin/host#host测试命令工具
/usr/bin/nslookup#nslookup测试命令工具
/usr/bin/nsupdate
/usr/share/man/man1/dig.1.gz
/usr/share/man/man1/host.1.gz
/usr/share/man/man1/nslookup.1.gz
/usr/share/man/man1/nsupdate.1.gz
需要说明的是,现在和可以看得见的未来dig是主流,所以dig的使用我们是必须要掌握的。dig的使用方法
dig [option] 资源记录类型名称 [@server-ip]
option:
[ -t type] 指定类型
[-x addr] 指定IP
资源记录类型名称:
NS :对应DNS服务器的FQDN
A :代表"主机名称"与"IP"地址的对应关系, 作用是把名称转换成IP地址
PTR:代表"IP地址"与"主机名"的对应关系,作用刚好与A记录相反
[@server-ip]:
不写IP,默认是本地服务器的IP
用@server-ip,指定服务器的IP
eg:dig -t A www.51cto.com @192.168.0.1
host [option] 资源记录类型名称 [server-ip]
eg:host -t A www.51cto.com 192.168.0.1
nslookup FQDN [server-ip]
eg: nslookup www.51cto.com 192.168.0.1