DNS服务之智能DNS

简介:

前言和实验背景

智能DNS是一个很关键的应用,也是直观体现工资的一项技能。智能DNS现在的技术已经非常的成熟,而且可以进化成CDN(内容分发网络)。基本掌握了智能DNS和CDN的技术,就代表你已经成为一名合格的中高级网页服务器运维工程师了。


大陆的网络垄断情况在全球算得上前三名,中国联通和中国电信基本瓜分了大陆80%的网络宽带进线份额,而联通电信大概的分布情况也是南北分治,北方的使用联通的网比较多,南方的使用电信的情况比较常见,这种现象的网速落差比较直观的体现就是在网络游戏上。


回来说网页服务器,公司企业既然开门做生意,那么面对的客户自然来自大江南北。为了保证用户能够有好的网页视觉体验,自然要有很快的网页开启的速度,这一点在视频服务器上体现尤为重要。那么智能DNS就可以做到“根据来访用户的ip地址,然后把同一个域名解析成不同的ip地址,然后提供给用户最适合的ip地址”。举个例子,如图:

wKioL1bxP4CyhmgfAABBYLQkQGs958.png

这个例子里的DNS服务器只写了一个,实际生产应该会有多个。默认9.9.0.0网段的用户都是联通的用户,那么9.9.0.0网段的用户数据肯定会走DNS服务器的9.9.9.9网卡,同时DNS服务器会把lnsjb.com解析成9.9.9.1反馈给用户;5.5.0.0网段的用户同理,他们得到的网页ip地址是5.5.5.1,虽然网页是一样的,但是由于两个ip不同,两个用户都是就近访问,保证了访问速度。


这种例子是可以搭配nginx实现的,使用nginx的host语句,就能判断来访ip,然后根据不同的ip分配不同的网页,或繁体中文或简体中文或英文。这里主要说的是用bind软件实现解析同一域名的不同ip,其实现的主要部件就是view。


#man named.conf一下就能看到整个named.conf的功能,在view模块里的内容更是非常的丰富,可以毫不夸张的说,bind这个软件就足够写出一本书,所以bind软件非常值得挖掘。


每一个view对应一类用户,结合上面的例子,9.9.0.0/24就是一类用户、5.5.0.0/24也是一类用户。所以view要分别写两个,分别匹配好各自的客户端,然后就是声明zone。


实验操作的前期准备

首先安装bind软件主体,#yum install bind -y。然后安装一个扩展包,#yum install caching-nameserver。不过如果是centos 6以上的系统,就不用执行扩展包的安装,bind会直接自带caching-nameserver。安装完毕之后,在/etc下就会看见多了一个叫named.rfc1912.zones这个文件。

wKiom1bxR1uD_lbyAAAllkGBowM109.png

#vim /etc/named.rfc1912.zones一下,看看里面的内容。

wKioL1bxSFOCzImzAABNltT-Jsw347.png

可以看见这个文件跟named.conf的格式很相似,都是声明了最基础dns的三个解析域。但是这个文件里每个域都有一个“allow-update”,这个“自动更新”功能就是针对dhcp而来的,如果网页服务器使用的是动态地址,那么每更新一次动态地址,这个文件也会把Address更新成新的ip地址。


dhcp应用于网页服务器上是很危险的,因为这给了黑客可趁之机,他可能会把网页服务器里的付款界面ip地址更新成一个钓鱼网站的地址,这样对公司的声誉将会是巨大的破坏!所以一般这个allow-update后面都会跟着一个{ none; },即不准许动态更新。


实验的具体操作步骤

那么开始在/etc/下写named.conf。

wKiom1bxVDeRLVVCAAByIHsCX0w386.png

:wq保存退出之后,#named-checkconf一下,检查这个named.conf文件语法问题。确认无误之后,就可以专心的写lnsjb.com.zone.unicom和lnsjb.com.zone.telecom这两个区域文件。


lnsjb.com.zone.unicom和lnsjb.com.zone.telecom这两个文件跟之前DNS主服务器文章里的区域文件写法一模一样,区别就是要对应加上不同的ip地址。


如何检验?

文件写完之后,在服务器上#ifconfig eth0:1 9.9.9.9/24#ifconfig eth0:2 5.5.5.5/24,然后别忘了#service named restart#netstat -tnlp |grep :53一下,看一下9.9.9.9和5.5.5.5的53端口是否被监听。


然后就可以在客户机上设定网卡是9.9.0.0/24网段,然后#dig -t lnsjb.com @ 9.9.9.9,看一下得到的answer应该是9.9.9.1。5.5.0.0/24的结果一样。



 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1754070



相关文章
|
13天前
|
监控 负载均衡 Cloud Native
ZooKeeper分布式协调服务详解:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入剖析ZooKeeper分布式协调服务原理,涵盖核心概念如Server、Client、ZNode、ACL、Watcher,以及ZAB协议在一致性、会话管理、Leader选举中的作用。讨论ZooKeeper数据模型、操作、会话管理、集群部署与管理、性能调优和监控。同时,文章探讨了ZooKeeper在分布式锁、队列、服务注册与发现等场景的应用,并在面试方面分析了与其它服务的区别、实战挑战及解决方案。附带Java客户端实现分布式锁的代码示例,助力提升面试表现。
30 2
|
1月前
|
网络协议 Linux
Linux DNS服务详解——DNS主从架构配置
Linux DNS服务详解——DNS主从架构配置
407 4
|
1月前
|
域名解析 缓存 网络协议
Linux DNS服务详解——DNS基础知识
Linux DNS服务详解——DNS基础知识
73 1
|
2月前
|
SQL 监控 数据库连接
数字安全网:深入解析服务容错的三大绝招“
数字安全网:深入解析服务容错的三大绝招“
22 1
|
3月前
|
域名解析 网络协议
IP协议, TCP协议 和DNS 服务分别是干什么的?
IP协议, TCP协议 和DNS 服务分别是干什么的?
233 0
|
3月前
|
存储 数据管理 物联网
深入解析数据仓库与数据湖:建构智能决策的桥梁
在当今信息时代,数据成为企业决策与创新的关键资源。本文将深入探讨数据仓库与数据湖的概念与应用,介绍其在数据管理和分析中的作用,以及如何构建智能决策的桥梁。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
AI大发展:人机交互、智能生活全解析
AI大发展:人机交互、智能生活全解析
53 0
|
2天前
|
存储 开发工具 对象存储
Javaweb之SpringBootWeb案例之阿里云OSS服务入门的详细解析
Javaweb之SpringBootWeb案例之阿里云OSS服务入门的详细解析
10 0
|
20天前
|
测试技术 API 智能硬件
语言模型在提升智能助手引用解析能力中的创新应用
【4月更文挑战第4天】苹果研究团队推出了ReALM,一种利用大型语言模型解决引用解析的新方法,提升智能助手理解用户意图和上下文的能力。ReALM将引用解析转化为语言建模问题,尤其擅长处理屏幕上的实体,比现有系统提升超5%,性能接近GPT-4但参数更少。其模块化设计易于集成,可在不同场景下扩展。然而,复杂查询处理和依赖上游数据检测器可能影响其准确性和稳定性。
63 6
语言模型在提升智能助手引用解析能力中的创新应用
|
1月前
|
域名解析 缓存 网络协议
探索Qt 网络编程:网络地址与服务类全解析
探索Qt 网络编程:网络地址与服务类全解析
55 0

相关产品

  • 云解析DNS
  • 推荐镜像

    更多