17.DNS服务

/etc/resolv.conf配置文件详解
1.域名通过访问域名库进行解析,由于数据量巨大、实际使用中要求效率和方便管理所以把DNS数据分级存放形式树状结构,最上一层是根,然后是顶级域、二级、三级。。。 类似于顶级域的DNS服务存放的不是域名解析的数据,而是下层二级域的的IP和位置
(全球被承认的域名服务提供公司只有一家,想要一个被别人认可的域名或几级域都要到这里申请)
在这里插入图片描述
2.
在这里插入图片描述
3.递归查询类型:
递归查询:发出一次请求就能等得到结果(客户端)
迭代查询:发出多次请求才能获得结果(DNS服务器)
因为客户端只能递归查询,而根不可能迭代查询(因为太忙了),所有DNS(中继)服务器就是那个中间人,他负责迭代查询把查到的最终结果返回给客户端
注意:(1)同一台主机的域名根主机名没有任何关系
(2)任何DNS服务建好后都会存放全球的13个根服务器组的IP,如果DNS服务器本地解析不了就会去找根然后迭代查询或者大部分都是不负责解析(或者做权限设置,可以给一部分客户端需要解析的不是本域负责的接卸做递归查询)
(3)正反向解析是两个不同的名称空间,是两个不同的解析树,所以可以一台服务器实现,也可以两台实现,在申请域名解析时,正向解析和反向解析需要单独申请
4.
在这里插入图片描述
5.解析方式:
正向:FQDN --> IP 反向区域
反向: IP–> FQDN 反向区域
6.一次完整的查询请求经过流程:
Client -->hosts文件 --> Lacal Cache -->DNS Server --> Server Cache --> iteration(迭代查询)
在这里插入图片描述
7.
SOA:用来说明当前域名解析库是为哪个区域负责的和协调时间
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8.域名注册:
代理商:万网、新网;(国内,注册时需要国家机构审核)
godaddy (国外,无需审核,注册完成直接使用)
完成注册后解析:
可以直接用免费的DNS服务器
可以自己搭建
可以购买相关公司的专门智能解析服务提高解析速度和带宽
9. BIND的安装配置:
dns服务,程序包名bind,程序名named
程序包:
bind 主包
bind-libs 库文件
bind-utils 测试相关包,包含nslookup、dig、host等测试命令
bind-chroot 安全相关,把dns圈禁在一个范围内(目录 /var/named/chroot)
10.
在这里插入图片描述
补充:
rndc flush 清空缓存
在这里插入图片描述
11.修改配置文件
配置IP监听:可以把监听那一行注释(C语言中注释符号未\)掉,也可以添加上要监听的IP,默认监听在
127.0.0.1的回环接口
dnssec功能(提高安全系统的功能,配置比较复杂而且只自己dns服务器配置是没用)
补充:不能直接把一下两项注释掉,因为默认为yes,需要把所以dns服务器的这两项yes改为no否则全局转发和子域授权不可用

在这里插入图片描述
allow-query 允许谁来查询(内置的访问控制列表)给注释掉或修改为any
recursion 递归查询
在这里插入图片描述
12.配置主DNS名称服务器
除了根之外的域都定义在这里,直接修改添加]
在这里插入图片描述
在这里插入图片描述

例:
直接往后添加
在这里插入图片描述
$TTL 缓存时间 \秒
$ORIGIN magedu.com. 定义名称后缀,定义这个宏以后解析记录的名称不用写全会自动补齐
在这里插入图片描述
注意:新创建的/var/named/的解析库权限一般为属主root数组named
12.相关命令
named-checkconf 检查配置文件语法
在这里插入图片描述
rndc status 查看状态
在这里插入图片描述
13.dig的使用(默认是递归查询,如果通过本地解析多个dns服务器需要迭代查询就需要加norecurse)
在这里插入图片描述
dig -t -A www.magedu.com @172.16.100.11
注意必须要加@表示本地解析,否则可能会找/etc/resolv.conf
在这里插入图片描述
例:
在这里插入图片描述
14.
在这里插入图片描述
例:
在这里插入图片描述 15.
在这里插入图片描述
例:
在这里插入图片描述
vim -o magedu.com.zone 172.16.100.zone
在这里插入图片描述
然后修改权限、验证、测试
在这里插入图片描述
在这里插入图片描述
16.主从DNS服务器
在这里插入图片描述
补充:从服务只需指明主服务器IP地址,会自动同步数据到已经准备好的(数组属主权限都已准备好)/var/named/slaves目录下
vim /etc/named.rfc1912.zones
注意:主服务器一定要有个NS记录指向从服务器,这样主服务器数据变动才会通知到从服务器
只能修改主服务器的区域解析库,不要动从服务器的区域解析库,当主动修改了主服务器的区域解析库需要手动把主服务器的序列号加1,主服务器才能把区域解析库的变动通知到区域解析库中已存在的NS记录中的DNS从服务器
从服务器与主服务器的zone名称要保持一至
在这里插入图片描述
反向从服务器
定义从的ns记录和IP记录
在这里插入图片描述
vim /etc/named.rfc1912.zones
在这里插入图片描述
在这里插入图片描述
17.定义转发服务器
补充:
first :先转发,解析不了就自己迭代
only:转发给的所在的服务器负责解析和迭代,如果转发失败自己也不会去迭代查询
在这里插入图片描述
在这里插入图片描述
例(全部转发):
在这里插入图片描述
例(区域转发):
在这里插入图片描述

在这里插入图片描述
例:
在这里插入图片描述
19.
在这里插入图片描述
20.试图功能:
目的:同一个域名,让电信网解析到电信服务器的IP;让联通网解析到联通的服务IP
在这里插入图片描述
例:测试同一个域名来自不同IP有不同的解析

定义两个view
在这里插入图片描述
修改另一个中同域名的zone的解析库地址和数据

在这里插入图片描述
在这里插入图片描述
验证就会得到不同IP解析同一个域名得到两个不同的地址
在这里插入图片描述
在这里插入图片描述
21.编译安装DNS
(1) 准备好源码包
(2)创建系统组named和系统用户named (参数加-r是系统用户)
(3)配置编译安装 在这里插入图片描述
make
make install
(4)编译安装的启动脚本、配置文件、与目录和库文件都没有需要自己配置、命令没法直接调用需要配置PYTHON或者软连接股票求
在
在这里插入图片描述
在这里插入图片描述
(5)导处库文件(bind库文件是静态库文件这一步可以省略)
在这里插入图片描述
在这里插入图片描述
使库文件生效
ldconfig -v
(6)导出头文件(如果有头文件)
在这里插入图片描述
(7)把bind的man文件放在man的搜索路径中去
在这里插入图片描述
在这里插入图片描述
(8)创建配置文件
(9)创建库文件
创建全球跟服务器解析库
在这里插入图片描述
(10)修改配置文件和库的权限
(11)配置rndc使其可以被使用
需要生成主配置文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重启生效
(12)可以编译安装压力测试工具
在这里插入图片描述
在这里插入图片描述
测试用法
先创建一个数据文件
vim test(打算对哪些域名进行解析压力测试)
在这里插入图片描述
测试命令
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值