互联网dns架构实现&&智能dns实现

实验环境:准备8台虚拟机,具体ip配置如下图
实验目的:互联网DNS工作原理的简单实现(域名解析、只缓存DNS服务器、DNS子域委派和转发、主从复制、CDN智能DNS)

一、互联网dns架构实现

10.35.78.69:web服务搭建:
]# yum install httpd
]# systemctl start httpd
]# systemctl enable httpd
]# echo www.yahu.com on 10.35.78.69 > /var/www/html/index.html

10.35.78.63:管理yahu.com域的主dns服务器搭建
]# vim /etc/named.conf
options {
listen-on port 53 { any; }; #监听在本机所有网口的ip上
……
allow-query { any; }; #允许查询dns的机器
……
};
]# vim /etc/named.rfc1912.zones
zone “yahu.com” IN {
type master;
file “yahu.com.zone”;
};
]# cp -a /var/named/named.empty /var/named/yahu.com.zone
]# vim /var/named/yahu.com.zone
$TTL 3H
@ IN SOA master ljh (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS master
NS salve
master A 10.35.78.63
salve A 10.35.78.64
www A 10.35.78.69

]# rndc reload

10.35.78.64:管理yahu.com域的(从dns服务器)slave搭建
]# vim /etc/named.conf
options {
listen-on port 53 { any; }; #监听在本机所有网口的ip上
……
allow-query { any; }; #允许查询dns的机器
……
};
]# vim /etc/named.rfc1912.zones
zone “yahu.com” IN {
type slave;
file “slaves/yahu.com.salve.zone”;
masters { 10.35.78.63; };
};
]# rndc reload
]# ll /var/named/slaves/ #从dns服务器数据同步完成
-rw-r–r-- 1 named named 344 Nov 2 03:39 yahu.com.salve.zone

10.35.78.25: #管理com域的主dns服务器搭建
]# vim /etc/named.rfc1912.zones
zone “com” IN {
type master;
file “com.zone”;
};

]# vim /var/named/com.zone
$TTL 3H
@ IN SOA ns admin (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns
yahu NS ns1 #子域委派
ns A 10.35.78.25
ns1 A 10.78.78.63 #主从都可以委派
ns1 A 10.35.78.64

]# rndc reload

10.35.78.24:自定义根dns服务器搭建
]# vim /etc/named.conf
zone “.” IN { #修改根区域的区域数据文件
type master;
file “root.zone”;
};
]# vim /var/named/root.zone
$TTL 3H
@ IN SOA ns admin (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns
com NS ns1
ns A 10.35.78.24
ns1 A 10.35.78.25

]# rndc reload

10.35.78.26:
]# vim /etc/named.conf
options {
listen-on port 53 { any; };
……
allow-query { any; };
……
dnssec-enable no;
dnssec-validation no;
……
};

]# vim /var/named/named.ca
. 518400 IN NS a.root-servers.net.
a.root-servers.net. 518400 IN A 10.35.78.24

]# rndc reload

10.35.78.29:只缓存DNS服务器(LDNS),dns转发服务器
options {
listen-on port 53 { any; };
……
allow-query { any; };
……
dnssec-enable no; #关键
dnssec-validation no; #关键
forward first; #将dns查询转发给10.35.78.26,不会直接向根dns请求
forwarders {10.35.78.26;};
……
};

]# rndc reload

10.35.78.27:
]# dig www.yahu.com @10.35.78.29

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7 <<>> www.yahu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43459
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION: # 问题:查询www.yahu.com的A记录
;www.yahu.com. IN A

;; ANSWER SECTION: # 答复:www.yahu.com的A记录为10.35.78.69
www.yahu.com. 10788 IN A 10.35.78.69

;; AUTHORITY SECTION:
yahu.com. 10787 IN NS ns1.com.

;; ADDITIONAL SECTION: # 权威dns服务器ip有两个:10.35.78.64和10.35.78.63
ns1.com. 10787 IN A 10.35.78.64
ns1.com. 10787 IN A 10.78.78.63

;; Query time: 1 msec
;; SERVER: 10.35.78.29#53(10.35.78.29)
;; WHEN: Tue Nov 03 10:32:13 CST 2020
;; MSG SIZE rcvd: 107

智能dns实现

10.35.78.63
]# vim /var/named/yahu.com.zone
$TTL 3H
@ IN SOA master lujihui (
7 ; serial #修改版本号,同步slave
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS master
NS salve
master A 10.35.78.63
salve A 10.35.78.64
www CNAME www.xmj.com. #只添加一条cname,舍弃原来的A记录

]# rndc reload

10.35.78.25
]# vim /var/named/com.zone
添加如下记录
xmj NS ns2
ns2 A 10.35.78.79

10.35.78.79 (智能dns)
]# vim /etc/named.conf
在options前添加
acl beijing { 10.35.78.27;};
acl zhengzhou { 10.35.78.80;};
acl other { any;};

view beijingview {
match-clients {beijing;};
include “/etc/named.beijingview.zones”;
};
view zhengzhouview {
match-clients {zhengzhou;};
include “/etc/named.zhengzhouview.zones”;
};
view otherview {
match-clients {other;};
include “/etc/named.rfc1912.zones”;
};

/include “/etc/named.rfc1912.zones”;/

]# vim /etc/named.beijingview.zones
zone “xmj.com” {
type master;
file “xmj.com.zone.bj”;
};

]# vim /etc/named.zhengzhouview.zones
zone “xmj.com” {
type master;
file “xmj.com.zone.zz”;
};

]# vim /var/named/xmj.com.zone.bj
$TTL 86400 ; 1 day
@ IN SOA dns1 dnsadmin (
3 ; serial
86400 ; refresh (1 day)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10800 ; minimum (3 hours)
)
NS dns1.xmj.com.
dns1 A 10.35.78.79
websrv A 10.35.78.25
www CNAME websrv

]# vim /var/named/xmj.com.zone.zz
$TTL 86400 ; 1 day
@ IN SOA dns1 dnsadmin (
3 ; serial
86400 ; refresh (1 day)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10800 ; minimum (3 hours)
)
NS dns1.xmj.com.
dns1 A 10.35.78.79
websrv A 10.35.78.69
www CNAME websrv

10.35.78.27,10.35.78.80,将dns服务器设置为10.35.78.29
]# curl www.yahu.com # 会得到不同服务器的返回

CDN原理:
我们在地址栏键入一个网址,浏览器发现本地没有关于这个网址的 DNS 缓存,所以向网站的 DNS 服务器发起请求。
网站的 DNS 服务器设置了 CNAME,指向了某个 CDN 服务器,也就是我们常见的阿里云、腾讯云、Cloudflare 之类的,去请求 CDN 中的智能 DNS 均衡负载系统。
均衡负载系统解析域名,把对用户响应最快的节点返回给用户,然后用户向该节点发出请求。
如果是第一次访问该内容,CDN 服务器会向源站请求数据并缓存,否则的话,直接在缓存节点中找到该数据,将请求结果发给用户。
对于最简单的 CDN 系统而言,只要一台 DNS 调度服务器和一个节点服务器即可,但在复杂的应用中,会存在多级缓存,多台 Cache 来协同工作。

互联网dns架构实现智能dns实现相关推荐

  1. DNS云学堂 | 智能DNS让CDN乘风破浪

    智能DNS是DNS领域经常被提及的一个概念.在和运营商客户进行技术交流时,也总是被问及,到底什么是智能DNS?智能DNS在CDN中扮演什么角色?它是怎么样的工作机制?今天DNS云学堂就来具体讲解下.e ...

  2. mysql与dns_借助mysql和DNS view实现智能DNS(centos6.3 x64环境)

    开篇说明 关于智能DNS和CDN的东西可以看我之前的一篇博文 上次的博文简单使用了BIND的视图功能实现了简单的智能dns,此篇博文结合了mysql实现真正意义上的智能DNS系统 需要准备东西 首先y ...

  3. DNS加速之“智能DNS”跟“双线加速”、“CDN加速”的区别

    "智能DNS"跟"双线加速"."CDN加速"的区别 相信,很大部分IDC用户可能还没弄清楚状况,有人觉得智能DNS跟双线加速.CDN加速是类 ...

  4. DNS服务之智能DNS

    前言和实验背景 智能DNS是一个很关键的应用,也是直观体现工资的一项技能.智能DNS现在的技术已经非常的成熟,而且可以进化成CDN(内容分发网络).基本掌握了智能DNS和CDN的技术,就代表你已经成为 ...

  5. linux创建出口dns,Linux创建智能DNS

    根据客户端源IP地址的不同,DNS服务提供不同的解析地址 1.安装dns服务,修改全局配置文件/etc/named.conf # yum -y install bind # vim /etc/name ...

  6. linux 搭建智能dns,Linux配置智能DNS服务

    一.在虚拟机svr11上构建dawai.com的权威DNS服务器 1)安装bind.bind-chroot软件包 [root@svr11 ~]# yum -y ×××tall bind bind-ch ...

  7. bind9 dlz mysql_利用BIND+DLZ+MYSQL构建企业智能DNS

    目录: 一.简介 二.服务规划 三.安装BIND及基本环境 四.配置Bind-View-DLZ-MYSQL 五.添加相关记录并进行测试 六.配置从DNS 七.本文以FreeBSD 10.2 stabl ...

  8. Linux DNS服务详解——DNS服务搭建细节

    前几天,我陆续给大家介绍了DNS服务的相关内容,今天,我给大家补充介绍一下DNS服务中一些小问题. 前文链接: Linux DNS服务详解--DNS基础知识 Linux DNS服务详解--DNS实战配 ...

  9. 怎么删除已经安装的mysql_怎么样删除已经安装的mysql | wdlinux致力于Linux服务器架构,性能优化.免费CDN加速系统,免费智能DNS解析,负载均衡,集群分流...

    [root@localhost ~]# rpm -qa|grep mysql php-mysql-5.1.6-27.el5 mysql-5.0.77-4.el5_5.3 perl-DBD-mysql- ...

最新文章

  1. 连接统计学、机器学习与自动推理的新兴交叉领域——因果科学读书会再起航...
  2. 【线下首场免费报名啦】阿里云2020云内存数据库峰会 年度开发者的盛宴
  3. 数据操作DataBaseCtrl
  4. android 和 iphone x,在快充方面,iPhone X和iPhone 8系列都落后于Android 旗舰
  5. CSMAR 智能财经报告分析平台帮助
  6. 【完整代码】使用Semaphore实现限流代码示例
  7. SAP ABAP实用技巧介绍系列之 ABAP XSLT apply_template keyword
  8. solr模糊查询_《Solr实战》之一
  9. python read()函数_Python File read()方法
  10. 记一次 .NET医疗布草API程序 内存暴涨分析
  11. 扬尼斯定律:程序员的开发效率每6年提高一倍
  12. 标题、段落标签(HTML)
  13. 剑指offer面试题15. 二进制中1的个数(位运算)
  14. mysql 临时表 创建和插入
  15. 进程互斥(当前程序已运行)
  16. 《App架构师实践指南》---笔记
  17. 项目管理知识体系(PMBOK)
  18. 网络传输的两种方式——同步传输和异步传输的区别
  19. seo结构化数据_为什么使用结构化数据有助于您网站的SEO
  20. 打字练习。。又退步了

热门文章

  1. 移动魔百盒CM311-3-YST-晨星MSO9385-语音首页正常-TTL刷机包
  2. 和平精英修改服务器内存,和平精英极限帧率怎么调 极限帧率修改攻略[多图]
  3. HTML播放华为云视频流,华为云点播服务视频管理功能强大,上云就是省心
  4. 天秀!GitHub 硬核项目:动漫生成器让照片秒变手绘日漫风!!!
  5. 2015境外人气餐厅榜单!你吃过几家?
  6. 模型量化论文阅读#2----BRECQ: PUSHING THE LIMIT OF POST-TRAINING QUANTIZATION BY BLOCK RECONSTRUCTION
  7. POP3, SMTP, IMAP 和 Exchange 的区别
  8. 加群android代码那个是,QQ加群组件-iPhone、Android、网页上加入QQ群
  9. LoRaEdge LR1120 卫星直连通信解读
  10. 在Windows(VMware)环境中安装Linux虚拟机(CentOS)