Day15 DNS服务基础&桥设备(Service04)

简介:

一、DNS工作原理

1.1 DNS解析的作用

DNS服务器的功能
正向解析:根据注册的域名查找其对应的IP地址
反向解析:根据IP地址查找对应的注册域名。在安全领域常用,比如查询邮件是否是真正的域名持有人发出的,验证邮件的源IP和域名是否相符

1.2 DNS的分布式架构

FQDN(Full Qualified Domain Name)完全合格主机名
站点名.域名后缀
站点名.三级域.二级域.一级域

1.3 DNS域名管理

IANA(Internet Assigned Numbers Authority)互联网数字分配机构
整个域名系统的最高权威机构,管理DNS根,.int,.arpa等国际化域名资源
CNNIC(China Internet Network Information Center )
主管国家顶级域.cn

二、BIND服务分析

2.1 简介

BIND(Berkeley Internet Name Daemon)伯克利Internet域名服务
官网:https://www.isc.org
执行程序:/usr/bin/named
系统服务:named
默认端口:53/tcp、53/udp。正常解析时用udp协议,主从同步之间用tcp协议传输配置文件信息
运行时的虚拟根环境:/var/named/chroot
安装包:bind、bind-chroot
帮助文件:/usr/share/doc/bind-9.9.4/sample/

2.2 /etc/named.conf

named的主配置文件。指定负责解析的域名是什么。

2.2.1 注释格式

//、#表示注释单行,/....../里面的内容表示多行注释

2.2.2 修改主配置文件

listen-on port 53 { 127.0.0.1; };#表示仅监听本机
要监听所有ip地址有两个方法
方法1:listen-on port 53 { any; };
方法2:把该行删除,就会默认监听所有ip地址
options {
directory "/var/named";#地址库文件路径为/var/named
recursion no;#默认值为yes,手动设置no来禁止递归查询
allow query { any; };#允许任何客户机查询
};
zone "负责解析的域名" IN {
type 类型;#类型为master、slave、forward、hint
file "区域文件";标准的格式为解析的域名.zone
};
例子:
zone "tedu.cn" IN {
type master;
file "tedu.cn.zone";
};
2.3 /var/named/
named区域数据文件目录,存放多个区域文件,区域文件的内容为主机名与ip地址的对应关系。

2.3.1 注释格式

;为注释符,只有单行注释,没有多行
域名必须以.结尾,如果没有加.的话系统会自动补全,补全什么呢?补全的是主配置文件中定义该区域数据文件解析的是哪个域名,这里是tedu.cn+"."

2.3.2 拷贝模板文件为区域文件

cp -p /var/named/named.localhost /var/named/tedu.cn.zone#加-p选项保证named用户对该文件有读权限,也可以用chown,chmod等方式赋予读权限

2.3.3 修改区域文件

目前先修改最后两行
格式:
负责解析的域名+"." NS DNS服务器的FQDN主机名+"."
DNS服务器的FQDN主机名+"." A DNS服务器的IP地址
例子:
复杂写法:
tedu.cn. NS svr7.tedu.cn.
svr7.tedu.cn. A 192.168.4.7
简单写法:
@ NS svr7 #@表示在主配置文件中定义的负责解析主机名+"."。这里是tedu.cn.
svr7 A 192.168.4.7#两行的svr7可以更换为其他字符,只要相同即可

2.3.4 变量

$TTL 生存时间
SOA 授权信息开始

2.3.5 修改/etc/resolv.conf

nameserver 192.168.4.7

2.4 DNS查询测试命令

2.4.1 host 域名 ['DNS服务器地址']

host www.qq.com '192.168.4.7'
Using domain server:
Name: 192.168.4.7
Address: 192.168.4.7#53
Aliases:

www.qq.com has address 1.1.1.1

2.4.2 dig 域名[@DNS服务器地址]

更专业的DNS查询测试命令
dig www.qq.com @192.168.4.7
; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> www.qq.com @192.168.4.7
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55516
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.qq.com. IN A

;; ANSWER SECTION:
www.qq.com. 86400 IN A 1.1.1.1

;; AUTHORITY SECTION:
qq.com. 86400 IN NS ns.qq.com.

;; ADDITIONAL SECTION:
ns.qq.com. 86400 IN A 192.168.4.7

;; Query time: 0 msec
;; SERVER: 192.168.4.7#53(192.168.4.7)
;; WHEN: 五 11月 17 02:59:29 EST 2017
;; MSG SIZE rcvd: 88

2.5 多区域的DNS服务器搭建

2.5.1 在/etc/named.conf增加解析域名qq.com

zone "qq.com" IN {
type master;
file "qq.com.zone";
};

2.5.2 拷贝并修改/etc/named/qq.com.zone区域文件

cd /var/named
cp -p tedu.cn.zone qq.com.zone
vim qq.com.zone
增加内容:
qq.com. NS ns.qq.com.
ns.qq.com. A 192.168.4.7
www A 1.1.1.1
ftp A 2.2.2.2

2.5.3 systemctl restart named

重启服务

2.5.4 nslookup www.bj.tedu.cn 192.168.4.7

指定192.168.4.7为DNS服务器来解析域名

2.6 特殊的解析记录

2.6.1 DNS轮询

默认就是轮询方式。
在地址库文件里面增加多条主机名相同、ip地址不同的解析记录即可

2.6.2 泛域名解析

匹配本域内未定义的的任何主机地址
以"*"匹配,放在区域文件中最后一行,一般用在正向区域文件中

2.6.3 有规律的泛域名解析

stu1.tedu.cn.------192.168.10.1
stu2.tedu.cn.------192.168.10.2
......
stu60.tedu.cn------192.168.10.60
一条记录即可。因为区域文件有函数可以生成连续范围的数字:$GENERATE
$GENERATE 1-60 stu$.tedu.cn. A 192.168.10.$

2.7 查询类型

2.7.1 递归查询

DNS服务器与其他DNS服务器交互,最终将解析结果带回来交给客户端的过程
客户端对首选DNS服务器的查询是递归查询。互联网上DNS服务器都会禁止递归查询

2.7.2 迭代查询

DNS服务器不提供解析结果,只告诉查询客户端应该找另外一个DNS服务器去查询
首选DNS服务器对其他DNS服务器的查询是迭代查询

三、DNS子域授权和子域转发

3.1 父域和子域

父域:www.tedu.cn 父域的DNS负责解析tedu.cn
子域:www.bj.tedu.cn 子域的DNS负责解析bj.tedu.com

-父域的DNS服务器,能够解析tedu.cn结尾(父域)的主机名
-子域的DNS服务器,能够解析bj.tedu.cn结尾(子域)的主机名
-父域的DNS服务器,也能够解析bj.tedu.cn结尾(子域)的主机名,这个就是子域授权
-子域的DNS服务器,也能够解析tedu.cn结尾(父域)的主机名,称之为子域转发

3.2 子域授权具体操作

192.168.4.7上操作:
vim 
tedu.cn. NS svr7.tedu.cn.
bj.tedu.cn. NS pc207.bj.tedu.cn.#增加一条
svr7.tedu.cn. A 192.168.4.7
pc207.bj.tedu.cn. A 192.168.4.207#增加对应一条

192.168.4.207上验证:
nslookup www.bj.tedu.cn 192.168.4.7
Server: 192.168.4.7
Address: 192.168.4.7#53

Non-authoritative answer:#非权威回答,找权威服务器查询得知的
Name: www.bj.tedu.cn
Address: 1.2.3.4

3.3 子域转发具体操作

192.168.4.207上操作:
vim /etc/named.conf
增加:
zone "bj.tedu.cn" IN {
type forward;#类型为转发
forwarders { 192.168.4.7; };#注意前后的空格、分号等
};

四、缓存DNS

4.1 概述

内存要比较大,因为查询结果都是放在内存中。不需要管理任何DNS区域,但是能够代替客户机查询,并且通过缓存、复用查询结果来加快速度

4.2 应用场景

企业内网DNS
ISP公用DNS

4.3 解析记录来源

4.3.1 全局转发式缓存

将请求转发给指定的公共DNS(其他缓存DNS),请求递归服务

4.3.2 根域迭代式缓存

依次向根域、一级域、二级域等的DNS,请求迭代服务

五、DNS Split分离解析(view解析)

5.1 概念

当收到客户机的DNS查询请求的时候,区分客户机的来源地址,来为不同类别的客户机提供不同的解析结果(IP地址)

5.2 适用场景

访问压力大的网站,需要购买CDN提供的内容分发服务。内容分发服务就使用了这个技术,
CDN供应商在全国都有镜像服务节点,针对不同的客户机就近提供离客户最近的服务器

5.3 配置Split分离解析

5.3.1 创建多个区域数据文件

cd /var/named/
cp -p tedu.cn.zone tedu.cn.zone.lan
cp -p tedu.cn.zone tedu.cn.zone.other
sed -i s#1.1.1.1#192.168.4.100#g tedu.cn.zone tedu.cn.zone.lan

5.3.2 针对来源地址定义acl列表

acl列表定义要单独一个格式段,不能放在option格式段里面
acl "mylan" {
192.168.4.207;
192.168.4.254;
};

5.3.3 配置两个view,调用不同的区域数据文件

view视图匹配的规则是从上到下,匹配即停止。
一但启用了view视图,所有的zone必须在view格式段里面,而且多个view里面的zone的数量必须相同
主配置文件里面只能有两个view格式段

view "lan" {
match-clients { mylan; };#匹配acl,名字为mylan
zone "tedu.cn" IN {
type master;
file "tedu.cn.zone.lan"
};
};
view "other" {
match-clients { any; };#匹配任意地址
zone "tedu.cn" IN {
type master;
file "tedu.cn.zone.other"
};
};

5.3.4 systemctl restart named



本文转自 goldwinner 51CTO博客,原文链接:http://blog.51cto.com/355665/2068820,如需转载请自行联系原作者
相关文章
|
9月前
|
弹性计算 运维 安全
优化管理与服务:操作系统控制平台的订阅功能解析
本文介绍了如何通过操作系统控制平台提升系统效率,优化资源利用。首先,通过阿里云官方平台开通服务并安装SysOM组件,体验操作系统控制平台的功能。接着,详细讲解了订阅管理功能,包括创建订阅、查看和管理ECS实例的私有YUM仓库权限。订阅私有YUM仓库能够集中管理软件包版本、提升安全性,并提供灵活的配置选项。最后总结指出,使用阿里云的订阅和私有YUM仓库功能,可以提高系统可靠性和运维效率,确保业务顺畅运行。
|
7月前
|
网络协议 安全 Devops
Infoblox DDI (NIOS) 9.0 - DNS、DHCP 和 IPAM (DDI) 核心网络服务管理
Infoblox DDI (NIOS) 9.0 - DNS、DHCP 和 IPAM (DDI) 核心网络服务管理
279 4
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
479 3
|
自然语言处理 数据可视化 API
淘宝商品评论 API 接口:深度解析用户评论,优化产品与服务
淘宝是领先的中国电商平台,其API为开发者提供商品信息、交易记录及用户评价等数据访问服务。对于获授权的开发者和商家,可通过申请API权限、获取并解析评论数据来进行情感分析和统计,进而优化产品设计、提升服务质量、增强用户互动及调整营销策略。未授权用户可能受限于数据访问。
|
9月前
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
|
网络协议 安全 文件存储
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问,即使IP地址变化,也能通过DDNS服务保持连接。适用于家庭网络远程访问设备及企业临时或移动设备管理,提供便捷性和灵活性。示例代码展示了如何使用Python实现基本的DDNS更新。尽管存在服务可靠性和安全性挑战,DDNS仍极大提升了网络资源的利用效率。
1713 6
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
安全 测试技术 数据安全/隐私保护
原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验
原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验
|
域名解析 网络协议
DNS服务工作原理
文章详细介绍了DNS服务的工作原理,包括FQDN的概念、名称解析过程、DNS域名分级策略、根服务器的作用、DNS解析流程中的递归查询和迭代查询,以及为何有时基于IP能访问而基于域名不能访问的原因。
1556 2
DNS服务工作原理
|
弹性计算 自然语言处理 数据可视化

相关产品

  • 云解析DNS
  • 推荐镜像

    更多
  • DNS