DNS域名解析:
主机名解析为IP地址,通过IP地址解析为域名.
为什么要有域名?
反向解析:
www.baidu.com.[主机名](完全限定域名)(满足域结构思想)
发起域名查询,被中间者冒充.
域名 -> IP
正向解析:
IP -> 域名
DNS简介:
一个域名不能对应多个IP地址,
对应关系:
多对一.
无DNS则需要自己写
/etc/hosts (域名文件)
本地添加(临时添加)
比较麻烦
DNS域名服务器:
协议端口:53端口
协议类型:TCP/UDP
why?
UDP效率高,正常查询.响应数据报(小于512)
TCP保证数据可靠性,(当UDP未查询到时)
汉字域名.?
二级域名结构可以用不?
联通:
联通本地DNS服务器没有 ->
本地也有服务器缓存.
3.DNS 服务器配置:
通过DNS服务的软件是Bind,服务名是named.
rpm -ql bind
/etc/named.conf
/etc/rndc.conf
/usr/lib/systemd/system/named.service
# DNS配置文件
vim /etc/named.conf
# options 全局生效
#监听端口为53,大括号内数据内容可以为any
listen-on port 53 { 192.168.65.128; };
# logging 局部生效
# zone 局部生效
# 默认master
# /var/named.ca (资源记录文件)
vim /var/named/named.ca
# 定义几级域,
主机名 缓存时间(TTL值) 类(internet) 资源记录类型 解析的数据
# 配置备份
cp /etc/named.conf{,.bd}
# 区域信息
vim /etc/
#正向域
[root@localhost ~]# vim /etc/named.conf主配置文件
options {
#监听端口为53,大括号内数据内容可以为any
listen-on port 53 { 192.168.65.128; };
directory "/var/named";
allow-query {any;}
recursion yes;
};
# 三级就写二级域
zone "baidu.com" IN {
type master;
file "named.baidu.com";
};
vim /etc/named/named.baidu.com
# 注释符号
; // #
# 正向解析域名(FQDN -> ip)
# 主机名
# TTL
# IN
# 资源记录类型:
(A[ipv4.正向解析(即主机映射为IPV4地址)],
AAAA[ipv6.正向解析],
PTR[反向解析记录(ipv4/ipv6映射为主机名)],
NS[标记DNS服务器(后跟主机名)],
MX[标记邮件服务器的主机名],
CNAME[标记域的别名],
SOA[启示授权记录]) 从服务同步信息
SOA ns.openlab.com. admin@qq.com. (年月日编号 同步时间 重试时间 失效时间 )
NS ns.openlab.com.
# 数据(IP地址信息)
# 1.SOA
# 对当前主机授权
$TTL 1D
# 全局定义TTL
openlab.com. IN SOA ns.openlab.com. admin.qq.com. (
2023050500
1D
3H
12H
2D )
# 二级域信息(@) IN SOA 完全域名. 完全邮箱地址.
# @的作用: 通用匹配域名(即自己的域名)
# 2.DNS服务器(NS必须要有A记录)
@ IN NS ns.openlab.com.
ns(ns.openlab.com. 向上匹配) IN A 192.168.65.128
# 3.测试结果
www IN A 192.168.10.128
FTP IN A 192.168.10.129
# 4.别名
http IN CNAME www
# 5.退出
:wq!
# 示例文件
vim /etc/named/named.ca
NS ns.openlab.com.
# 有向上匹配
4.启动服务测试
systemctl restart named
netstat -tunlp | grep 53
ps -aux | grep named
953 端口(对DNS进行检测操作)
# 本地默认开启RNDC服务
# 客户端开始测试
ping www.openlab.com
# 外网
# 永久修改DNS地址
nmtui
Manual
192.168.124.129
192.168.124.2
192.168.124.128
# 临时
vim /etc/resolv.conf
nameserver 192.168.65.128
ping www.openlab.com
# nslookup 解析工具
nslookup
server 192.168.124.130
www.openlab.com
http.openlab.com
ftp.openlab.com
exit
# dig [options] FQDN [@server]
# options:+trace代表从.开始追踪;
-t type查询的数据主要有MX、NS、SOA、A等类型;
-x 查询反解信息
dig -t A www.openlab.com # @DNS服务器
# 百度比较特殊一个域名多个ip地址
# 追溯
dig -t A www.openlab.com +trace
# 实验过程:
Server:
# 写环境
yum install -y bind
systemctl stop firewalld
setenforce 0
cp /etc/named.conf{,.bak}
# 写配置文件
vim /etc/named.conf
options {
listen-on port 53 { any; };
directory "/var/named";
allow-query { any; };
recursion yes;
};
zone "openlab.com" IN {
type master;
file "named.openlab.com";
};
vim /var/named/named.openlab.com
$TTL 1D
@ IN SOA ns.openlab.com. admin.qq.com. (
0
1D
3H
12H
2D )
@ IN NS ns.openlab.com.
ns IN A 192.168.65.100
www IN A 192.168.10.128
FTP IN A 192.168.10.111
http IN CNAME www
# 检查配置文件和端口监听
named-checkconf -z /etc/named.conf
systemctl restart named
netstat -anpt | grep 53
ps -aux | grep named
Client:
# 测试网络可用
ping www.openlab.com
# 方法一(特殊工具):
nslookup
server 192.168.124.131
www.openlab.com
http.openlab.com
ftp.openlab.com
# 方法二(修改临时文件):
vim /etc/resolv.conf
nameserver 192.168.124.131
ping www.openlab.com
ping http.openlab.com
ping ftp.openlab.com
# 方法三(回溯):
vim /etc/resolv.conf
nameserver 192.168.124.131
dig -t A www.openlab.com
dig -t A httpd.openlab.com
dig -t A FTP.openlab.com
dig -t A www.openlab.com +trace
:反向解析
[root@localhost ~]# vim /etc/named.conf zone "8.24.172.in-addr.arpa" IN { type master; file "named.192.168.124"; }; #反向区域文件 [root@localhost ~]# vim /var/named/named.192.168.124 $TTL 1D @ IN SOA ns.baidu.com. admin.baidu.com. ( 0 1D 1H 1W 3H ) IN NS ns.baidu.com. 128 IN PTR ns.baidu.com. 128 IN PTR www.baidu.com. 128 IN PTR mail.baidu.com. 128 IN PTR ftp.baidu.com. #反解需要注意:主机名尽量使用完整的FQDN,即要写上“.”#客户端测试 [root@localhost ~]# host 192.168.124.131 192.168.124.131 [root@localhost ~]# nslookup 192.168.124.131 192.168.124.131 [root@localhost ~]# dig -x 1192.168.124.131 @192.168.124.131
实验3:主从DNS服务器
将一个区域文件复制到多个服务器上的过程叫做区域传送。将主服务器上的信息复制到辅助服务器上来实现。
(1)完全区域传送:复制整个区域文件
#主DNS服务器的配置【主dns服务器的ip地址为192.168.124.131 】 [root@localhost ~]# vim /etc/named.conf options { listen-on port 53 { 192.168.124.131 ; }; directory "/var/named"; allow-transfer { 192.168.124.1310; }; }; zone "baidu.com" IN { type master; file "named.baidu.com"; }; [root@localhost ~]# vim /var/named/named.baidu.com $TTL 1D @ IN SOA @ admin.baidu.com. ( 0 1D 1H 1W 3H ) IN NS ns.baidu.com. IN NS slave.baidu.com. IN MX 10 mail.baidu.com. ns IN A 172.24.8.128 slave IN A 172.24.8.129 mail IN A 172.24.8.128 www IN A 172.24.8.128 ftp IN CNAME www [root@localhost ~]# systemct restart named #从DNS服务器的配置【从dns服务器的ip地址为192.168.124.131 】 [root@localhost ~]# yum install bind -y [root@localhost ~]# vim /etc/named.conf options { listen-on port 53 {192.168.124.130; }; directory "/var/named"; }; zone "baidu.com" IN { type slave; file "slaves/named.baidu.com"; masters {192.168.124.111;}; }; [root@localhost ~]# systemct restart named #测试 [root@localhost ~]# host www.baidu.com 192.168.124.131
(2)增量区域传送:仅复制区域里变化的文件
#修改主服务器的区域配置文件,序号比之前的序号大【注:区域文件里面必须要写从服务器的NS和A记录】 #主DNS服务器的配置【主dns服务器的ip地址为192.168.124.131 】 [root@localhost ~]# vim /var/named/named.baidu.com $TTL 1D @ IN SOA @ admin.baidu.com. ( 1 1D 1H 1W 3H ) IN NS ns.baidu.com. IN NS slave.baidu.com. IN MX 10 mail.baidu.com. ns IN A 192.168.124.131 slave IN A 192.168.124.131 mail IN A 192.168.124.131 www IN A 192.168.124.131 ftp IN CNAME www www1 IN CNAME www [root@localhost ~]# systemct restart named