1.概念的介绍
1)DNS
DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
2)高速缓存DNS服务
高速缓存DNS服务的作用:正常上网时,使用域名,需要进行DNS解析,当主机非常多的时候,这是很浪费时间的。设置一台服务器为高速缓存DNS服务器,当系统内访问过某个域名时,这个域名会记录在服务器端,系统内的其他主机下次再访问这个域名时,会特别的快。
2.bind的安装和高速缓存DNS的演示
bind安装包中包含named服务,named服务为域名解析服务
服务器端:
1)在服务器端配置好yum源,安装bind
2)开启named服务:systemctl start named 开启高速缓存服务
注意:开启服务时,若因为加密字符不够,无法正常开启;需要敲击键盘或移动鼠标
cat /dev/random可以查看加密字符
正常开启后生成文件 /etc/rndc.key
3)查看named接口端口号为53,且只回环接口上,所以需要修改配置文件
netstat -antlupe
4)修改named服务的配置文件:vim /etc/named.conf
如何查看某个软件的配置文件在那里
11 listen-on port 53 { any; }; ##允许所有网卡访问53端口
17 allow-query { any; }; ##允许所有IP可以访问这个域名解析
18 forwarders { 114.114.114.114; }; ##不知道的域名解析访问114.114.114.114
33 dnssec-validation no; ##关闭检测
5)重启动named服务
systemctl restart named
用户端:
1)在测试主机中,即客户端主机
修改本地解析文件
vim /etc/resolve.conf
nameserver 172.25.254.185 指向服务器主机
2)第一次dig www.qq.com ##dig命令是对域名进行解析
3)第二次dig www.qq.com
3.权威DNS的正向解析
上面的高速缓存过程中,使用的域为外面的域名解析,下面我们介绍本地的域名解析如何配置。
正向解析:域名 --> IP地址
1)修改配置/etc/named.conf配置文件
将上一个实验中forwarders { 114.114.114.114; }; 注释掉。 ####因为此时不需要使用外important
2)在/etc/named.conf下面,关于域名空间。
因为在域(zone)太多,将所有的域放到一个文件里面
其中 include "/etc/named.rfc1912.zones";
包含了所有域的信息
3)查看域名空间:vim /etc/named.rfc1912.zones
编写新的域westos.com
zone "westos.com" IN { ##域为westos.com
type master; ##类型为主域
file "westos.com.zone"; ##域名解析文件的名字为westos.com.zone
allow-update { none; }; ##不允许更新
};
3)新建域名文件 ##/var/named目录下
cd /var/name
cp -p named.localhost westos.com.zone ##复制样板,-P代表权限也要复制
4)编辑westos.com.zone
编辑前
$TTL 1D ##生存周期为1天
@ IN SOA @ rname.invalid. (
授权信息开始 DNS域的地址 域名管理员邮箱(去掉@)
0 ; serial ## 更新序列号,每次更新完必须变
1D ; refresh ##更新时间
1H ; retry ##重试延时
1W ; expire ##失效时间
3H ) ; minimum ##无效解析记录的缓存时间
NS @ ##域名服务器记录
A 127.0.0.1 ##地址记录
AAAA ::1
编辑后
$TTL 1D
@ IN SOA wen.westos.com. wen.com (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.westos.com.
dns A 172.25.254.185
music A 172.25.254.10
hello A 172.25.254.1
说明:wen.westos.com. 后面的点表示结束,如果不加点 解析的时候会变成wen.westos.com.westos.com
有时候,写的时候可以直接写wen ,系统会自动编译
5)重启动named
6)测试
[root@localhost named]# dig hello.westos.com
; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> hello.westos.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30818
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION: ##询问
;hello.westos.com. IN A
;; ANSWER SECTION: ##响应
hello.westos.com. 86400 IN A 172.25.254.1
;; AUTHORITY SECTION: ##负责域名的服务器
westos.com. 86400 IN NS wen.westos.com.
;; ADDITIONAL SECTION: ##提供其他的服务器
wen.westos.com. 86400 IN A 172.25.254.111
;; Query time: 0 msec
;; SERVER: 172.25.254.185#53(172.25.254.185)
;; WHEN: Wed Nov 21 06:41:28 EST 2018
;; MSG SIZE rcvd: 95
4.轮询:域名转换
域名转换:把规范名称改为内部不完全名称,再解析
1)在westos.com.zone内编写
www CNAME hahaha ##将规范名称改为不完全名称
hahaha A 172.25.254.3 ##规范名称
hahaha A 172.25.254.4
2)测试
结果解析出两个结果
5.邮箱的解析
1)简单邮件传输协议
简单邮件传输协议 (Simple Mail Transfer Protocol, SMTP) 是在Internet传输email的事实标准。
SMTP是一个相对简单的基于文本的协议。在其之上指定了一条消息的一个或多个接收者(在大多数情况下被确认是存在的),然后消息文本会被传输。可以很简单地通过telnet程序来测试一个SMTP服务器。SMTP使用TCP端口25。要为一个给定的域名决定一个SMTP服务器,需要使用MX (Mail eXchange) DNS。
MX(Mail Exchanger)记录是邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。
当Internet上的某用户要发一封信给 [email protected] 时,该用户的邮件系统通过DNS查找mydomain.com这个域名的MX记录,如果MX记录存在, 用户计算机就将邮件发送到MX记录所指定的邮件服务器上。
2)邮件的地址解析
步骤一:编写邮件的zone域
步骤二:重启named,并发送邮件
[root@localhost named]# mail [email protected] ##发送一封邮件
Subject: mail ##主题
123 ##正文
. ##以.结束
EOT
===========================================================================
[root@localhost named]# mailq ##查询结果
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
CE11217E86D* 436 Wed Nov 21 08:25:01 [email protected]
[email protected]
=========================================================================
6.反向解析
反向解析:IP地址 --> 域名
1)编辑包含域的文件vim /etc/named.rfc1912.zones
编写
zone "254.25.172.in-addr.arpa" IN { ##反向写
type master;
file "172.25.254.ptr"; ##文件名
allow-update { none; };
};
2)编写域的文件
cp -p named.loopback 172.25.254.ptr ##复制模型文件
编写模型文件为下
3)测试
dig -x 172.25.254.123
7.内部解析和外部解析
不同IP解析出的内容不同,此时需要网卡拥有两个IP地址
实验环境:team0有两个IP
1)配置/etc
步骤一:注释掉52-57
步骤二:重新编写
59 view localnet { ##对于本地用户
60 match-clients { 1.1.1.0/24; }; ##匹配的IP范围
61 zone "." IN {
62 type hint;
63 file "named.ca";
64 };
65 include "/etc/named.rfc1912.local"; ##域的文件
66 };
67
68 view internet { ##对于网络用户
69 match-clients { any; }; ##匹配任何人
70 zone "." IN {
71 type hint;
72 file "named.ca";
73 };
74 include "/etc/named.rfc1912.zones";
75 };
2)配置/etc/named.rfc1912.inter
步骤一:复制
cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.local
步骤二:修改 vim /etc/named.rfc1912.local
zone "westos.com" IN {
type master;
file "westos.com.local";
allow-update { none; };
};
3)编写/var/named/westos.com.local
步骤一:复制cp -p /var/named/westos.com.zone /var/named/westos.com.local
步骤二:编写vim /var/named/westos.com.local
$TTL 1D
@ IN SOA wen.westos.com. wen.com (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.westos.com.
dns A 1.1.1.185
music A 1.1.1.10
hello A 1.1.1.1
4)重启,测试
在IP为1.1.1.8上测试
IP地址
域源
测试结果
在IP为172.25.254.8上测试
IP地址
域源
测试