SlideShare ist ein Scribd-Unternehmen logo
1 von 7
CDN 智能 DNS 解析流程

(1)用户访问网站,浏览器提交域名请求; 

(2)当地 DNS 向“.”DNS 请求“cn.”DNS 的域名解析; 

(3) “.”DNS 响应请求并反馈“cn.”DNS 解析结果; 

(4)当地 DNS 向“cn.”DNS 请求“testweb.cn.”DNS 的域名解析; 

(5) “cn.”DNS 响应请求并反馈“testweb.cn.”DNS 解析结果; 

(6) 当地 DNS 向“testweb.cn.”DNS 请求“www.testweb.cn.”的域名解析; 

(7) “testweb.cn.”DNS 响应请求并反馈“www.testweb.cn.”解析结果为 CNAME 记录,

且指向域名“www.testweb.cn.cdn.mailserver.com.”;

(8) 当地 DNS 向“.”DNS 请求“com.”DNS 的域名解析; 

(9) “.”DNS 响应请求并反馈“com.”DNS 解析结果; 

(10) 当地 DNS 向“com.”DNS 请求“mailserver.com.”DNS 的域名解析; 

(11) “com.”DNS 响应请求并反馈“mailserver.com.”DNS 解析结果; 

(12) 当地 DNS 向“mailserver.com.”DNS 请求“cdn.mailserver.com.”DNS(即智能

DNS)的域名解析;

(13) “mailserver.com.”DNS 响应请求并反馈“cdn.mailserver.com.”DNS(即智能

DNS)解析结果; 

(14) 当地 DNS 向“cdn.mailserver.com.”DNS(即智能 DNS)请求

“www.testweb.cn.cdn.mailserver.com.”DNS 的域名解析; 

(15) “cdn.mailserver.com.”DNS(即智能 DNS)响应请求并反馈

“www.testweb.cn.cdn.mailserver.com.”DNS 解析结果; 

(16)当地 DNS 将解析结果反馈给用户浏览器,并保存解析结果; (2*)当地 DNS 已保

存有域名 www.testweb.cn 的解析记录时,立即反馈用户浏览器解析结果;

(3*)/(17)用户浏览器获得域名 www.testweb.cn 的解析 IP 后,向该 IP 的 CDN Node

发出访问请求; 

(4*)/(18)该 CDN Node 收到请求后作出处理和响应。
智能 DNS 配置过程


注:对于配置智能 DNS,主要用途为:1、解决不同运营商访问速度问题 2、实现区域规划(不同区域访
问各自最近的服务器),下面以解决网通与电信连接问题的配置。至于实现 2 的功能,只需稍加更改即可。




一、DNS 服务器安装......................................................................................... 1
二、named.conf 的配置....................................................................................... 2
三、更新根区文件:.......................................................................................... 3
四、建立启动脚本:.......................................................................................... 4
五、添加一个 NS............................................................................................... 5
六、添加一个域名.............................................................................................. 5
附:获取 IP 地址范围方法:................................................................................. 7




一、DNS 服务器安装


1、 软件列表
BIND 9.3.2
ftp://ftp.isc.org/isc/bind9/9.3.2/bind-9.3.2.tar.gz
ftp://ftp.isc.org/isc/bind9/9.4.0a6/bind-9.4.0a6.tar.gz
2、 安装 BIND 9
安装 BIND9:
# tar zxvf bind-9.3.2.tar.gz
# cd bind-9.3.2
# ./configure --prefix=/usr/local/named --disable-ipv6
# make && make install
建立 BIND 用户:
# groupadd bind
# useradd -g bind -d /usr/local/named -s /sbin/nologin bind
创建配置文件目录:
# mkdir –p /usr/local/named/etc
# chown bind:bind /usr/local/named/etc
# chmod 700 /usr/local/named/etc


二、named.conf 的配置


创建主要的配置文件:
# vi /usr/local/named/etc/named.conf
===========================named.conf======================
=
acl "trust-lan" { 127.0.0.1/8; 192.168.0.0/16;};
options {
directory "/usr/local/named/etc/";
pid-file "/var/run/named/named.pid";
version "0.0.0";
datasize 40M;
allow-transfer {
"trust-lan";};
recursion yes;
allow-notify {
"trust-lan";
};
allow-recursion {
"trust-lan";
};
auth-nxdomain no;
forwarders {
211.162.106.9;
211.162.106.254;};
};
logging {
channel warning
{ file "/var/log/named/dns_warnings" versions 3 size 1240k;
severity warning;
print-category yes;
print-severity yes;
print-time yes;
};
channel general_dns
{ file "/var/log/named/dns_logs" versions 3 size 1240k;
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category default { warning; };
category queries { general_dns; };
};
zone "." {
type hint;
file "named.root";
};
acl "CNC" {
58.16.0.0/16;
58.17.0.0/17;
58.17.128.0/17;
58.18.0.0/16;
58.19.0.0/16;
58.20.0.0/16;
58.21.0.0/16;
注:这些根据情况输入 IP 地址段
};
view "view_cnc" {
match-clients { CNC; };
zone "." {
type hint;
file "named.root";
};
zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "localhost.rev";
};
include "master/cnc.def";
};
view "view_any" {
match-clients { any; };
zone "." {
type hint;
file "named.root";
};
zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "localhost.rev";
};
include "master/telecom.def";
};
添加完成后,保存。


三、更新根区文件:


# cd /usr/local/named/etc/
# wget ftp://ftp.internic.org/domain/named.root
创建 PID 和日志文件:
# mkdir /var/run/named/
# chmod 777 /var/run/named/
# chown bind:bind /var/run/named/
# mkdir /var/log/named/
# touch /var/log/named/dns_warnings
# touch /var/log/named/dns_logs
# chown bind:bind /var/log/named/*
# mkdir master
# touch master/cnc.def
# touch master/telecom.def
生成 rndc-key:
# cd /usr/local/named/etc/
# ../sbin/rndc-confgen > rndc.conf
把 rndc.conf 中:
# Use with the following in named.conf, adjusting the allow list as needed:
后面以的部分加到/usr/local/named/etc/named.conf 中并去掉注释
运行测试:
# /usr/local/named/sbin/named -gc /usr/local/named/etc/named.conf &
状态检查:
# /usr/local/named/sbin/rndc status




四、建立启动脚本:


# vi /etc/init.d/named
==============================
named.sh============================
#!/bin/bash
#
# named      a network name service.
#
#
# chkconfig: 545 35 75
# description: a name server
#
if [ `id -u` -ne 0 ]
then
echo "ERROR:For bind to port 53,must run as root."
exit 1
fi
case "" in
start)
if [ -x /usr/local/named/sbin/named ]; then
/usr/local/named/sbin/named -u bind -c /usr/local/named/etc/named.conf && echo . &&
echo 'BIND9 server started.'
fi
;;
stop)
kill `cat /var/run/named/pid` && echo . && echo 'BIND9 server stopped.'
;;
restart)
echo .
echo "Restart BIND9 server"
stop
sleep 10
start
;;
*)
echo " start | stop | restart"
;;
esac
===============================named.sh===================
=========
# chmod 755 /etc/init.d/named
# chown root:root /etc/init.d/named
# chkconfig --add named
# chkconfig named on




五、添加一个 NS


     在域名的管理网站上,设定 NS 服务器为你安装的 DNS




六、添加一个域名


# cd /usr/local/named/etc/master
# mkdir cnc
# mkdir telecom
# vi cnc.def
添加
zone "724cn.com" {
type master;
file "master/cnc/724cn.com";
};
# vi telecom.def
添加
zone "724cn.com" {
type master;
file "master/telecom/724cn.com";
};
添加网通的解析,解析到的 IP 为 61.45.55.78
#vi cnc/724cn.com
添加
$TTL 3600
$ORIGIN 724cn.com.
@ IN SOA ns.724cn.com. root.ns.724cn.com.(
2005121013 ;Serial
3600 ; Refresh ( seconds )
900 ; Retry ( seconds )
68400 ; Expire ( seconds )
15 );Minimum TTL for Zone ( seconds )
;
@ IN NS ns.724cn.com.
@ IN A 211.162.106.9
www IN A 211.162.106.9
;
;end
添加电信的解析,解析到的 IP 为 210.75.1.178
#vi telecom/724cn.com
添加
$TTL 3600
$ORIGIN 724cn.com.
@ IN SOA ns.724cn.com. root.ns.724cn.com.(
2005121013 ;Serial
3600 ; Refresh ( seconds )
900 ; Retry ( seconds )
68400 ; Expire ( seconds )
15 );Minimum TTL for Zone ( seconds )
;
@ IN NS ns.724cn.com.
@ IN A 211.162.106.254
www IN A 211.162.106.254
;
;end
#/usr/local/named/sbin/rndc reload
OK,到此你的 DNS 服务器就算是跑起来了。试一下分别用网通和电信的线路 ping 一下吧.

Weitere ähnliche Inhalte

Was ist angesagt?

DNS协议与应用简介
DNS协议与应用简介DNS协议与应用简介
DNS协议与应用简介
琛琳 饶
 
一次详细的渗透Wordpress教程
一次详细的渗透Wordpress教程一次详细的渗透Wordpress教程
一次详细的渗透Wordpress教程
WASecurity
 
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 newX64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
Yiwei Ma
 
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
cachowu
 
高性能No sql数据库redis
高性能No sql数据库redis高性能No sql数据库redis
高性能No sql数据库redis
paitoubing
 
Shell奇技淫巧
Shell奇技淫巧Shell奇技淫巧
Shell奇技淫巧
David Xie
 
Hadoop平台搭建
Hadoop平台搭建Hadoop平台搭建
Hadoop平台搭建
Liyang Tang
 

Was ist angesagt? (19)

高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
 
DNS协议与应用简介
DNS协议与应用简介DNS协议与应用简介
DNS协议与应用简介
 
OpenResty/Lua Practical Experience
OpenResty/Lua Practical ExperienceOpenResty/Lua Practical Experience
OpenResty/Lua Practical Experience
 
Nae client(using Node.js to create shell cmd)
Nae client(using Node.js to create shell cmd)Nae client(using Node.js to create shell cmd)
Nae client(using Node.js to create shell cmd)
 
現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧
 
一次详细的渗透Wordpress教程
一次详细的渗透Wordpress教程一次详细的渗透Wordpress教程
一次详细的渗透Wordpress教程
 
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 newX64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
 
現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows
現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows
現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows
 
Perl在nginx里的应用
Perl在nginx里的应用Perl在nginx里的应用
Perl在nginx里的应用
 
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
 
Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)
 
高性能No sql数据库redis
高性能No sql数据库redis高性能No sql数据库redis
高性能No sql数据库redis
 
前端工程師一定要知道的 Docker 虛擬化容器技巧
前端工程師一定要知道的 Docker 虛擬化容器技巧前端工程師一定要知道的 Docker 虛擬化容器技巧
前端工程師一定要知道的 Docker 虛擬化容器技巧
 
Shell奇技淫巧
Shell奇技淫巧Shell奇技淫巧
Shell奇技淫巧
 
Node.js长连接开发实践
Node.js长连接开发实践Node.js长连接开发实践
Node.js长连接开发实践
 
Effective linux.2.(tools)
Effective linux.2.(tools)Effective linux.2.(tools)
Effective linux.2.(tools)
 
Hadoop平台搭建
Hadoop平台搭建Hadoop平台搭建
Hadoop平台搭建
 
Linux 教育訓練
Linux 教育訓練Linux 教育訓練
Linux 教育訓練
 
Mongo db部署架构之优先方案
Mongo db部署架构之优先方案Mongo db部署架构之优先方案
Mongo db部署架构之优先方案
 

Andere mochten auch

P2 computer systems
P2 computer systemsP2 computer systems
P2 computer systems
Ryan-Parish
 
Ellig Wiseman Wine Isnie Presentation 2006
Ellig Wiseman Wine Isnie Presentation 2006Ellig Wiseman Wine Isnie Presentation 2006
Ellig Wiseman Wine Isnie Presentation 2006
Mercatus Center
 
Антонина Иванова
Антонина ИвановаАнтонина Иванова
Антонина Иванова
Antonina Ivanova
 
Roos Door Kunneman (2)
Roos Door Kunneman (2)Roos Door Kunneman (2)
Roos Door Kunneman (2)
reinier82
 

Andere mochten auch (8)

3 presentatie cbt productieleider
3   presentatie cbt productieleider3   presentatie cbt productieleider
3 presentatie cbt productieleider
 
P2 computer systems
P2 computer systemsP2 computer systems
P2 computer systems
 
Presentatie Waterpark De Zoutpoel
Presentatie Waterpark De ZoutpoelPresentatie Waterpark De Zoutpoel
Presentatie Waterpark De Zoutpoel
 
Ellig Wiseman Wine Isnie Presentation 2006
Ellig Wiseman Wine Isnie Presentation 2006Ellig Wiseman Wine Isnie Presentation 2006
Ellig Wiseman Wine Isnie Presentation 2006
 
Антонина Иванова
Антонина ИвановаАнтонина Иванова
Антонина Иванова
 
Roos Door Kunneman (2)
Roos Door Kunneman (2)Roos Door Kunneman (2)
Roos Door Kunneman (2)
 
MSN en school
MSN en schoolMSN en school
MSN en school
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 

Ähnlich wie 智能Dns工作流程及配置

Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
acqua young
 
CentOS5 apache2 mysql5 php5 Zend
CentOS5 apache2 mysql5 php5 ZendCentOS5 apache2 mysql5 php5 Zend
CentOS5 apache2 mysql5 php5 Zend
wensheng wei
 
unix toolbox 中文版
unix toolbox 中文版unix toolbox 中文版
unix toolbox 中文版
Jie Bao
 
Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版
redhat9
 
九州通 Tsm重新配置文档(2008 11 10)
九州通 Tsm重新配置文档(2008 11 10)九州通 Tsm重新配置文档(2008 11 10)
九州通 Tsm重新配置文档(2008 11 10)
heima911
 
九州通 Tsm重新配置文档(2008 11 10)
九州通 Tsm重新配置文档(2008 11 10)九州通 Tsm重新配置文档(2008 11 10)
九州通 Tsm重新配置文档(2008 11 10)
heima911
 
Centos下安装apache + subversion
Centos下安装apache + subversionCentos下安装apache + subversion
Centos下安装apache + subversion
Yiwei Ma
 
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用
redhat9
 
Linux安全配置终极指南
Linux安全配置终极指南Linux安全配置终极指南
Linux安全配置终极指南
wensheng wei
 
域名系统简介
域名系统简介域名系统简介
域名系统简介
lurga
 
0118 Windows Server 2008 的伺服器核心 (Server Core)
0118 Windows Server 2008 的伺服器核心 (Server Core)0118 Windows Server 2008 的伺服器核心 (Server Core)
0118 Windows Server 2008 的伺服器核心 (Server Core)
Timothy Chen
 
利用Cent Os快速构建自己的发行版
利用Cent Os快速构建自己的发行版利用Cent Os快速构建自己的发行版
利用Cent Os快速构建自己的发行版
xingsu1021
 

Ähnlich wie 智能Dns工作流程及配置 (20)

93 dn 2
93 dn 293 dn 2
93 dn 2
 
Asm+aix
Asm+aixAsm+aix
Asm+aix
 
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
 
CentOS5 apache2 mysql5 php5 Zend
CentOS5 apache2 mysql5 php5 ZendCentOS5 apache2 mysql5 php5 Zend
CentOS5 apache2 mysql5 php5 Zend
 
unix toolbox 中文版
unix toolbox 中文版unix toolbox 中文版
unix toolbox 中文版
 
Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版
 
九州通 Tsm重新配置文档(2008 11 10)
九州通 Tsm重新配置文档(2008 11 10)九州通 Tsm重新配置文档(2008 11 10)
九州通 Tsm重新配置文档(2008 11 10)
 
九州通 Tsm重新配置文档(2008 11 10)
九州通 Tsm重新配置文档(2008 11 10)九州通 Tsm重新配置文档(2008 11 10)
九州通 Tsm重新配置文档(2008 11 10)
 
Ruby on Rails 開發環境建置 for Ubuntu
Ruby on Rails 開發環境建置 for UbuntuRuby on Rails 開發環境建置 for Ubuntu
Ruby on Rails 開發環境建置 for Ubuntu
 
Centos下安装apache + subversion
Centos下安装apache + subversionCentos下安装apache + subversion
Centos下安装apache + subversion
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and Design
 
Open Street Map安裝指引 (Ubuntu 12.04)
Open Street Map安裝指引 (Ubuntu 12.04)Open Street Map安裝指引 (Ubuntu 12.04)
Open Street Map安裝指引 (Ubuntu 12.04)
 
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用
 
Hadoop 安装
Hadoop 安装Hadoop 安装
Hadoop 安装
 
Linux安全配置终极指南
Linux安全配置终极指南Linux安全配置终极指南
Linux安全配置终极指南
 
域名系统简介
域名系统简介域名系统简介
域名系统简介
 
Docker
DockerDocker
Docker
 
0118 Windows Server 2008 的伺服器核心 (Server Core)
0118 Windows Server 2008 的伺服器核心 (Server Core)0118 Windows Server 2008 的伺服器核心 (Server Core)
0118 Windows Server 2008 的伺服器核心 (Server Core)
 
利用Cent Os快速构建自己的发行版
利用Cent Os快速构建自己的发行版利用Cent Os快速构建自己的发行版
利用Cent Os快速构建自己的发行版
 
Mopcon2014 - 使用 Sinatra 結合 Ruby on Rails 輕鬆打造完整 Full Stack 網站加 API Service服務
Mopcon2014 - 使用 Sinatra 結合 Ruby on Rails 輕鬆打造完整 Full Stack 網站加 API Service服務Mopcon2014 - 使用 Sinatra 結合 Ruby on Rails 輕鬆打造完整 Full Stack 網站加 API Service服務
Mopcon2014 - 使用 Sinatra 結合 Ruby on Rails 輕鬆打造完整 Full Stack 網站加 API Service服務
 

Mehr von Yiwei Ma

Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qconCibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Yiwei Ma
 
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qconCibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Yiwei Ma
 
Taobao casestudy-yufeng-qcon
Taobao casestudy-yufeng-qconTaobao casestudy-yufeng-qcon
Taobao casestudy-yufeng-qcon
Yiwei Ma
 
Alibaba server-zhangxuseng-qcon
Alibaba server-zhangxuseng-qconAlibaba server-zhangxuseng-qcon
Alibaba server-zhangxuseng-qcon
Yiwei Ma
 
Zhongxing practice-suchunshan-qcon
Zhongxing practice-suchunshan-qconZhongxing practice-suchunshan-qcon
Zhongxing practice-suchunshan-qcon
Yiwei Ma
 
Taobao practice-liyu-qcon
Taobao practice-liyu-qconTaobao practice-liyu-qcon
Taobao practice-liyu-qcon
Yiwei Ma
 
Thoughtworks practice-hukai-qcon
Thoughtworks practice-hukai-qconThoughtworks practice-hukai-qcon
Thoughtworks practice-hukai-qcon
Yiwei Ma
 
Ufida design-chijianqiang-qcon
Ufida design-chijianqiang-qconUfida design-chijianqiang-qcon
Ufida design-chijianqiang-qcon
Yiwei Ma
 
Spring design-juergen-qcon
Spring design-juergen-qconSpring design-juergen-qcon
Spring design-juergen-qcon
Yiwei Ma
 
Netflix web-adrian-qcon
Netflix web-adrian-qconNetflix web-adrian-qcon
Netflix web-adrian-qcon
Yiwei Ma
 
Google arch-fangkun-qcon
Google arch-fangkun-qconGoogle arch-fangkun-qcon
Google arch-fangkun-qcon
Yiwei Ma
 
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qconCibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Yiwei Ma
 
Alibaba arch-jiangtao-qcon
Alibaba arch-jiangtao-qconAlibaba arch-jiangtao-qcon
Alibaba arch-jiangtao-qcon
Yiwei Ma
 
Twitter keynote-evan-qcon
Twitter keynote-evan-qconTwitter keynote-evan-qcon
Twitter keynote-evan-qcon
Yiwei Ma
 
Netflix keynote-adrian-qcon
Netflix keynote-adrian-qconNetflix keynote-adrian-qcon
Netflix keynote-adrian-qcon
Yiwei Ma
 
Facebook keynote-nicolas-qcon
Facebook keynote-nicolas-qconFacebook keynote-nicolas-qcon
Facebook keynote-nicolas-qcon
Yiwei Ma
 
Domainlang keynote-eric-qcon
Domainlang keynote-eric-qconDomainlang keynote-eric-qcon
Domainlang keynote-eric-qcon
Yiwei Ma
 
Devjam keynote-david-qcon
Devjam keynote-david-qconDevjam keynote-david-qcon
Devjam keynote-david-qcon
Yiwei Ma
 
Baidu keynote-wubo-qcon
Baidu keynote-wubo-qconBaidu keynote-wubo-qcon
Baidu keynote-wubo-qcon
Yiwei Ma
 
淘宝线上线下性能跟踪体系和容量规划-Qcon2011
淘宝线上线下性能跟踪体系和容量规划-Qcon2011淘宝线上线下性能跟踪体系和容量规划-Qcon2011
淘宝线上线下性能跟踪体系和容量规划-Qcon2011
Yiwei Ma
 

Mehr von Yiwei Ma (20)

Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qconCibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
 
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qconCibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
 
Taobao casestudy-yufeng-qcon
Taobao casestudy-yufeng-qconTaobao casestudy-yufeng-qcon
Taobao casestudy-yufeng-qcon
 
Alibaba server-zhangxuseng-qcon
Alibaba server-zhangxuseng-qconAlibaba server-zhangxuseng-qcon
Alibaba server-zhangxuseng-qcon
 
Zhongxing practice-suchunshan-qcon
Zhongxing practice-suchunshan-qconZhongxing practice-suchunshan-qcon
Zhongxing practice-suchunshan-qcon
 
Taobao practice-liyu-qcon
Taobao practice-liyu-qconTaobao practice-liyu-qcon
Taobao practice-liyu-qcon
 
Thoughtworks practice-hukai-qcon
Thoughtworks practice-hukai-qconThoughtworks practice-hukai-qcon
Thoughtworks practice-hukai-qcon
 
Ufida design-chijianqiang-qcon
Ufida design-chijianqiang-qconUfida design-chijianqiang-qcon
Ufida design-chijianqiang-qcon
 
Spring design-juergen-qcon
Spring design-juergen-qconSpring design-juergen-qcon
Spring design-juergen-qcon
 
Netflix web-adrian-qcon
Netflix web-adrian-qconNetflix web-adrian-qcon
Netflix web-adrian-qcon
 
Google arch-fangkun-qcon
Google arch-fangkun-qconGoogle arch-fangkun-qcon
Google arch-fangkun-qcon
 
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qconCibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
 
Alibaba arch-jiangtao-qcon
Alibaba arch-jiangtao-qconAlibaba arch-jiangtao-qcon
Alibaba arch-jiangtao-qcon
 
Twitter keynote-evan-qcon
Twitter keynote-evan-qconTwitter keynote-evan-qcon
Twitter keynote-evan-qcon
 
Netflix keynote-adrian-qcon
Netflix keynote-adrian-qconNetflix keynote-adrian-qcon
Netflix keynote-adrian-qcon
 
Facebook keynote-nicolas-qcon
Facebook keynote-nicolas-qconFacebook keynote-nicolas-qcon
Facebook keynote-nicolas-qcon
 
Domainlang keynote-eric-qcon
Domainlang keynote-eric-qconDomainlang keynote-eric-qcon
Domainlang keynote-eric-qcon
 
Devjam keynote-david-qcon
Devjam keynote-david-qconDevjam keynote-david-qcon
Devjam keynote-david-qcon
 
Baidu keynote-wubo-qcon
Baidu keynote-wubo-qconBaidu keynote-wubo-qcon
Baidu keynote-wubo-qcon
 
淘宝线上线下性能跟踪体系和容量规划-Qcon2011
淘宝线上线下性能跟踪体系和容量规划-Qcon2011淘宝线上线下性能跟踪体系和容量规划-Qcon2011
淘宝线上线下性能跟踪体系和容量规划-Qcon2011
 

智能Dns工作流程及配置

  • 1. CDN 智能 DNS 解析流程 (1)用户访问网站,浏览器提交域名请求;  (2)当地 DNS 向“.”DNS 请求“cn.”DNS 的域名解析;  (3) “.”DNS 响应请求并反馈“cn.”DNS 解析结果;  (4)当地 DNS 向“cn.”DNS 请求“testweb.cn.”DNS 的域名解析;  (5) “cn.”DNS 响应请求并反馈“testweb.cn.”DNS 解析结果;  (6) 当地 DNS 向“testweb.cn.”DNS 请求“www.testweb.cn.”的域名解析;  (7) “testweb.cn.”DNS 响应请求并反馈“www.testweb.cn.”解析结果为 CNAME 记录, 且指向域名“www.testweb.cn.cdn.mailserver.com.”; (8) 当地 DNS 向“.”DNS 请求“com.”DNS 的域名解析;  (9) “.”DNS 响应请求并反馈“com.”DNS 解析结果;  (10) 当地 DNS 向“com.”DNS 请求“mailserver.com.”DNS 的域名解析;  (11) “com.”DNS 响应请求并反馈“mailserver.com.”DNS 解析结果;  (12) 当地 DNS 向“mailserver.com.”DNS 请求“cdn.mailserver.com.”DNS(即智能 DNS)的域名解析; (13) “mailserver.com.”DNS 响应请求并反馈“cdn.mailserver.com.”DNS(即智能 DNS)解析结果;  (14) 当地 DNS 向“cdn.mailserver.com.”DNS(即智能 DNS)请求 “www.testweb.cn.cdn.mailserver.com.”DNS 的域名解析;  (15) “cdn.mailserver.com.”DNS(即智能 DNS)响应请求并反馈 “www.testweb.cn.cdn.mailserver.com.”DNS 解析结果;  (16)当地 DNS 将解析结果反馈给用户浏览器,并保存解析结果; (2*)当地 DNS 已保 存有域名 www.testweb.cn 的解析记录时,立即反馈用户浏览器解析结果; (3*)/(17)用户浏览器获得域名 www.testweb.cn 的解析 IP 后,向该 IP 的 CDN Node 发出访问请求;  (4*)/(18)该 CDN Node 收到请求后作出处理和响应。
  • 2. 智能 DNS 配置过程 注:对于配置智能 DNS,主要用途为:1、解决不同运营商访问速度问题 2、实现区域规划(不同区域访 问各自最近的服务器),下面以解决网通与电信连接问题的配置。至于实现 2 的功能,只需稍加更改即可。 一、DNS 服务器安装......................................................................................... 1 二、named.conf 的配置....................................................................................... 2 三、更新根区文件:.......................................................................................... 3 四、建立启动脚本:.......................................................................................... 4 五、添加一个 NS............................................................................................... 5 六、添加一个域名.............................................................................................. 5 附:获取 IP 地址范围方法:................................................................................. 7 一、DNS 服务器安装 1、 软件列表 BIND 9.3.2 ftp://ftp.isc.org/isc/bind9/9.3.2/bind-9.3.2.tar.gz ftp://ftp.isc.org/isc/bind9/9.4.0a6/bind-9.4.0a6.tar.gz 2、 安装 BIND 9 安装 BIND9: # tar zxvf bind-9.3.2.tar.gz # cd bind-9.3.2 # ./configure --prefix=/usr/local/named --disable-ipv6 # make && make install 建立 BIND 用户: # groupadd bind # useradd -g bind -d /usr/local/named -s /sbin/nologin bind 创建配置文件目录: # mkdir –p /usr/local/named/etc # chown bind:bind /usr/local/named/etc # chmod 700 /usr/local/named/etc 二、named.conf 的配置 创建主要的配置文件:
  • 3. # vi /usr/local/named/etc/named.conf ===========================named.conf====================== = acl "trust-lan" { 127.0.0.1/8; 192.168.0.0/16;}; options { directory "/usr/local/named/etc/"; pid-file "/var/run/named/named.pid"; version "0.0.0"; datasize 40M; allow-transfer { "trust-lan";}; recursion yes; allow-notify { "trust-lan"; }; allow-recursion { "trust-lan"; }; auth-nxdomain no; forwarders { 211.162.106.9; 211.162.106.254;}; }; logging { channel warning { file "/var/log/named/dns_warnings" versions 3 size 1240k; severity warning; print-category yes; print-severity yes; print-time yes; }; channel general_dns { file "/var/log/named/dns_logs" versions 3 size 1240k; severity info; print-category yes; print-severity yes; print-time yes; }; category default { warning; }; category queries { general_dns; }; }; zone "." { type hint; file "named.root";
  • 4. }; acl "CNC" { 58.16.0.0/16; 58.17.0.0/17; 58.17.128.0/17; 58.18.0.0/16; 58.19.0.0/16; 58.20.0.0/16; 58.21.0.0/16; 注:这些根据情况输入 IP 地址段 }; view "view_cnc" { match-clients { CNC; }; zone "." { type hint; file "named.root"; }; zone "0.0.127.IN-ADDR.ARPA" { type master; file "localhost.rev"; }; include "master/cnc.def"; }; view "view_any" { match-clients { any; }; zone "." { type hint; file "named.root"; }; zone "0.0.127.IN-ADDR.ARPA" { type master; file "localhost.rev"; }; include "master/telecom.def"; }; 添加完成后,保存。 三、更新根区文件: # cd /usr/local/named/etc/ # wget ftp://ftp.internic.org/domain/named.root 创建 PID 和日志文件: # mkdir /var/run/named/ # chmod 777 /var/run/named/
  • 5. # chown bind:bind /var/run/named/ # mkdir /var/log/named/ # touch /var/log/named/dns_warnings # touch /var/log/named/dns_logs # chown bind:bind /var/log/named/* # mkdir master # touch master/cnc.def # touch master/telecom.def 生成 rndc-key: # cd /usr/local/named/etc/ # ../sbin/rndc-confgen > rndc.conf 把 rndc.conf 中: # Use with the following in named.conf, adjusting the allow list as needed: 后面以的部分加到/usr/local/named/etc/named.conf 中并去掉注释 运行测试: # /usr/local/named/sbin/named -gc /usr/local/named/etc/named.conf & 状态检查: # /usr/local/named/sbin/rndc status 四、建立启动脚本: # vi /etc/init.d/named ============================== named.sh============================ #!/bin/bash # # named a network name service. # # # chkconfig: 545 35 75 # description: a name server # if [ `id -u` -ne 0 ] then echo "ERROR:For bind to port 53,must run as root." exit 1 fi case "" in start) if [ -x /usr/local/named/sbin/named ]; then /usr/local/named/sbin/named -u bind -c /usr/local/named/etc/named.conf && echo . && echo 'BIND9 server started.' fi
  • 6. ;; stop) kill `cat /var/run/named/pid` && echo . && echo 'BIND9 server stopped.' ;; restart) echo . echo "Restart BIND9 server" stop sleep 10 start ;; *) echo " start | stop | restart" ;; esac ===============================named.sh=================== ========= # chmod 755 /etc/init.d/named # chown root:root /etc/init.d/named # chkconfig --add named # chkconfig named on 五、添加一个 NS 在域名的管理网站上,设定 NS 服务器为你安装的 DNS 六、添加一个域名 # cd /usr/local/named/etc/master # mkdir cnc # mkdir telecom # vi cnc.def 添加 zone "724cn.com" { type master; file "master/cnc/724cn.com"; }; # vi telecom.def 添加 zone "724cn.com" { type master; file "master/telecom/724cn.com";
  • 7. }; 添加网通的解析,解析到的 IP 为 61.45.55.78 #vi cnc/724cn.com 添加 $TTL 3600 $ORIGIN 724cn.com. @ IN SOA ns.724cn.com. root.ns.724cn.com.( 2005121013 ;Serial 3600 ; Refresh ( seconds ) 900 ; Retry ( seconds ) 68400 ; Expire ( seconds ) 15 );Minimum TTL for Zone ( seconds ) ; @ IN NS ns.724cn.com. @ IN A 211.162.106.9 www IN A 211.162.106.9 ; ;end 添加电信的解析,解析到的 IP 为 210.75.1.178 #vi telecom/724cn.com 添加 $TTL 3600 $ORIGIN 724cn.com. @ IN SOA ns.724cn.com. root.ns.724cn.com.( 2005121013 ;Serial 3600 ; Refresh ( seconds ) 900 ; Retry ( seconds ) 68400 ; Expire ( seconds ) 15 );Minimum TTL for Zone ( seconds ) ; @ IN NS ns.724cn.com. @ IN A 211.162.106.254 www IN A 211.162.106.254 ; ;end #/usr/local/named/sbin/rndc reload OK,到此你的 DNS 服务器就算是跑起来了。试一下分别用网通和电信的线路 ping 一下吧.