我们知道,一个IP可以对应多个域名,那么一个域名可以对应多个IP吗?

理论上,一个域名是可以对应多个IP的,而在用户访问过程中,指向某一个具体IP,并不会同时访问多个IP。但不同用户在不同地点访问同一个域名,可能会访问到不同的IP地址,但表象仍旧是这个域名。

例如成都用户访问西部数码官网(www.west.cn),同一时刻,杭州用户也在访问西部数码,那么两人虽然都是访问的同一个域名,但访问的对应IP地址却可能是不同的,根据西部数码负载均衡EasySLB服务功能,服务器将根据各地的访问IP,到达域名IP中路由跳数最小的那个IP地址作为访问的域名IP地址。这样能保证一个域名被访问时,能最大限度提供高速稳定的访问体验。同时,由于有多个备选IP,当其中一个出现问题时,可以实现故障自动切换,提高业务可用性,并提高资源利用率。

这个时候就需要了解下域名解析器(DNS):

1.DNS定义:

DNS(Domain Name System)是因特网的一项服务,它作为域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。

2.DNS作用:

(1)解析域名

人们在通过浏览器访问网站时只需要记住网站的域名即可,而不需要记住那些不太容易理解的IP地址。在DNS系统中有一个比较重要的的资源类型叫做主机记录也称为A记录,A记录是用于名称解析的重要记录,它将特定的主机名映射到对应主机的IP地址上。如果你有一个自己的域名,那么要想别人能访问到你的网站,你需要到特定的DNS解析服务商的服务器上填写A记录,过一段时间后,别人就能通过你的域名访问你的网站了。

(2)负载均衡

DNS除了能解析域名之外还具有负载均衡的功能,下面是利用DNS工作原理处理负载均衡的工作原理图:

由上图可以看出,在DNS服务器中应该配置了多个A记录,如:


  1. www.apusapp.com IN A 114.100.20.201;

  2. www.apusapp.com IN A 114.100.20.202;

  3. www.apusapp.com IN A 114.100.20.203;

因此,每次域名解析请求都会根据对应的负载均衡算法计算出一个不同的IP地址并返回,这样A记录中配置多个服务器就可以构成一个集群,并可以实现负载均衡。上图中,用户请求www.apusapp.com,DNS根据A记录和负载均衡算法计算得到一个IP地址114.100.20.203,并返回给浏览器,浏览器根据该IP地址,访问真实的物理服务器114.100.20.203。所有这些操作对用户来说都是透明的,用户可能只知道www.apusapp.com这个域名。

3.DNS域名解析负载均衡有如下优点:

1. 将负载均衡的工作交给DNS,省去了网站管理维护负载均衡服务器的麻烦。

2. 技术实现比较灵活、方便,简单易行,成本低,使用于大多数TCP/IP应用。

3. 对于部署在服务器上的应用来说不需要进行任何的代码修改即可实现不同机器上的应用访问。

4. 服务器可以位于互联网的任意位置。
5. 同时许多DNS还支持基于地理位置的域名解析,即会将域名解析成距离用户地理最近的一个服务器地址,这样就可以加速用户访问,改善性能。

4.DNS域名解析也存在如下缺点:

1. 目前的DNS是多级解析的,每一级DNS都可能缓存A记录,当某台服务器下线之后,即使修改了A记录,要使其生效也需要较长的时间,这段时间,DNS任然会将域名解析到已下线的服务器上,最终导致用户访问失败。

2. 不能够按服务器的处理能力来分配负载。DNS负载均衡采用的是简单的轮询算法,不能区分服务器之间的差异,不能反映服务器当前运行状态,所以其的负载均衡效果并不是太好。

3. 可能会造成额外的网络问题。为了使本DNS服务器和其他DNS服务器及时交互,保证DNS数据及时更新,使地址能随机分配,
一般都要将DNS的刷新时间设置的较小,但太小将会使DNS流量大增造成额外的网络问题。

事实上,大型网站总是部分使用DNS域名解析,利用域名解析作为第一级负载均衡手段,即域名解析得到的一组服务器并不是实际提供服务的物理服务器,而是同样提供负载均衡服务器的内部服务器,这组内部负载均衡服务器再进行负载均衡,再请求发到真实的服务器上,最终完成请求。

一个域名对应多个IP地址相关推荐

  1. 引子 我想大家应该都很熟悉DNS了,这回在DNS前面加了一个D又变成了什么呢?这个D就是Dynamic(动态),也就是说,按照传统,一个域名所对应的IP地址应该是定死的,而使用了DDNS后,域名所对应

    引子 我想大家应该都很熟悉DNS了,这回在DNS前面加了一个D又变成了什么呢?这个D就是Dynamic(动态),也就是说,按照传统,一个域名所对应的IP地址应该是定死的,而使用了DDNS后,域名所对应 ...

  2. 实现一个域名对应多个IP地址和DNS优缺点详解!

    实现一个域名对应多个IP地址和DNS优缺点详解! 1.DNS定义: DNS(Domain Name System)是因特网的一项服务,它作为域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访 ...

  3. 负载均衡实现,一个域名对应多个IP地址

    http://www.cnblogs.com/cuihongyu3503319/archive/2012/07/09/2583129.html 使用负载均衡实现,传统和常规做法,其他方式需要特殊处理. ...

  4. DNS域名解析实现一个域名对应多个IP地址DNS以及优缺点

    1.DNS定义: DNS(Domain Name System)是因特网的一项服务,它作为域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网. 2.DNS作用: (1)解析域名 人们 ...

  5. 负载均衡之DNS域名解析,实现一个域名对应多个IP地址

        DNS(Domain Name System)是因特网的一项服务,它作为域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网.人们在通过浏览器访问网站时只需要记住网站的域名即可 ...

  6. 负载均衡实现,一个域名对应多个IP地址【转】

    来自:https://www.cnblogs.com/cuihongyu3503319/archive/2012/07/09/2583129.html 使用负载均衡实现,传统和常规做法,其他方式需要特 ...

  7. 多活主备选择性DNS解析(一个域名对应多个IP)

    多活主备选择性DNS 问题背景 知识背景 DNS解析存在多级缓存(此处仅列举到DNS服务器层:后续流程不涉及) DNS一对多域名的解析随机性 DNS 域名解析负载均衡缺点: 可能方案 方案一.dns解 ...

  8. 一个网站服务器有多少个ip,一个服务器可以有多少个ip地址

    一个服务器可以有多少个ip地址 内容精选 换一换 华为云帮助中心,为用户提供产品简介.价格说明.购买指南.用户指南.API参考.最佳实践.常见问题.视频帮助等技术文档,帮助您快速上手使用华为云服务. ...

  9. 计算机名和DNS域名的关系,域名、DNS、IP地址的对应关系

    什么是域名?什么是IP地址? 域名(英语:Domain Name),简称域名.网域,是由一串用点分隔的名字组成的上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置) ...

  10. dns 解析,一个域名解析到多个ip地址

    域名解析 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务. IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址. 域名解析就是域 ...

最新文章

  1. 7000p可以加装固态吗_玩车十年的大神都加装防倾杆,但真的可以提高车身刚性吗?...
  2. SAP RETAIL 商品主数据里影响自动补货结果的几个参数 I
  3. python人工智能-Python 人工智能应用快速入门 (一)
  4. 动态添加的路由 直接访问_VUE 动态路由(二)
  5. 【机器学习算法-python实现】svm支持向量机(2)—简化版SMO算法
  6. 8 种最坑的 SQL 错误用法,你有没有踩过坑?
  7. java 全局变量 内存不回收_JAVA知识梳理:内存管理与垃圾回收机制
  8. 大学生计算机二级大集报名最好,在校大学生如何报名计算机二级?
  9. linux csh错误,运行lampp时报错,错误信息如下,求解决方案
  10. 第十天 Oracle安装前准备工作
  11. mysql半同步模式_MySQL 半同步复制模式的实现
  12. 【刨根问底】解决我的世界启动,报错openGL版本不足的问题
  13. python画多层次五角星
  14. T229473 D. 背单词的小智 (二分
  15. 在线制作banner
  16. 【强化学习】优势演员-评论员算法(Advantage Actor-Critic , A2C)求解倒立摆问题 + Pytorch代码实战
  17. 当面试官问Webpack的时候他想知道什么
  18. 后厂村折叠:月薪追赶五万,生活低于五千
  19. Unity踩坑:FindObjectsOfType can only be called from the main thread
  20. 画【Python折线图】的一百个学习报告(三、自动生成单一数据折线图)

热门文章

  1. 简述 矩阵-DirectX 原理,并详解世界坐标转屏幕坐标,附C++实现。
  2. oracle solaris 10 系统 下载,更新 Oracle Solaris 11 系统中的软件
  3. Simulink 产生 2ASK、4ASK、2FSK、4FSK、2PSK、4PSK、16QAM以及 64QAM 信号
  4. OpenCV下载/OpenCV国内镜像/opencv_contrib下载
  5. c++ opencv 摄像头断线重联
  6. Qt使用语言家进行国际化,实现多国语言切换
  7. Java之棋牌游戏——编写一个斗地主洗牌发牌的程序,要求按照斗地主的规则完成洗牌发牌的过程
  8. 医院计算机网络系统的现状,医院信息系统应用的现状与发展
  9. lj2400恢复出厂_联想LJ2400加粉后如何清零
  10. 计算机组成原理笔记(一):概述