网络协议之:Domain name service DNS详解

网络协议之:Domain name service DNS详解,第1张

现在是互联网的世界,大家从各种网站中获取各类资源和信息,通常我们只需要牢记一个网站地址即可,至于这个网站后台的服务器在什么地方,我们并不需要关心。当我们的请求指向这个网址之后,接下来就只需要等待请求被转发到该网址的后端服务器上,得到返回的处理结果即可。

这个将网站名称解析成为服务IP地址的服务就是DNS服务,它的全称是Domain Name System,也就是域名解析服务。

那么DNS到底是怎么工作的呢?

有聪明的小伙伴可能会说了,那还不简单,搞一个统一的服务器,把世界上所有的域名对应的IP都存起来,每次需要解析的时候从这个服务去取就行了。确实,在互联网的初期就是这么干的,那时候网站还不多,域名维护的成本还不高,并且最开始还没有域名系统

作为互联网的技术基础的ARPANET(The Advanced Research Projects Agency Network)是第一个具有分布式控制的广域分组交换网络,也是最早应用 TCP/IP 协议的网络设施。

在ARPANET网络中,每个主机都有一个数字地址,但是这个数字地址明显是反人类记忆模式的,所以科学家们希望能够给这些主机起一些好记的名字,那么就需要维护这些名字和主机之间的映射关系,在这个时候斯坦福研究所(现在被称为SRI International)接下了这个任务,他们维护了一个HOSTSTXT 的文本文件,在这个文件中描述了主机地址和主机名字之间的映射关系。

如果有人想要更新这个HOST文件,那么需要在工作时间打电话给SRI网络信息中心,由信息中心的工作人员将主机名和地址添加到HOSTSTXT文件中。当然这样的 *** 作对少量的数据更新来说还可以,但是如果数据量太大的情况下就有问题了。

后面一个叫做Elizabeth Feinler的人在SRI网络信息中心的基础上搭建了WHOIS目录,用于检索有关资源、联系人和实体的信息,并且提出了域名的概念

最开始的维护都是在一个单一的服务器上进行集中式管理,但是这种维护方式已经不能够满足日益增长的网络需求,于是在1983年Paul Mockapetris在南加州大学创建了DNS系统,并在1983年11月于RFC 882 和 RFC 883发布了相关的原始规范。

后面DNS经过一系列的发展,于1987年11月,RFC 1034和 RFC 1035取代了1983年的DNS规范。

前面我们也提过了,DNS最基本的作用就是将用户提供的域名转换成为服务器的地址。

比如我们现在有个域名叫做 =">流媒体的传输协议\x0d\\x0d\大家在观看网上或者电视时,一般都会注意到这些文件的连接都不是用>

WEB服务器流量超负载问题解决方法

Web应用服务器集群系统,是由一群同时运行同一个web应用的服务器组成的集群系统,在外界看来,就像是一个服务器一样。为了均衡集群服务器的负载,达到优化系统性能的目的,集群服务器将众多的访问请求,分散到系统中的不同节点进行处理。从而实现了更高的有效性和稳定性,而这也正是基于Web的企业应用所必须具备的特性。

一、计算WEB服务器负载量的两种方法

web应用服务器集群系统,是由一群同时运行同一个web应用的服务器组成的集群系统,在外界看来,就像是一个服务器一样。为了均衡集群服务器的负载,达到优化系统性能的目的,集群服务器将众多的访问请求,分散到系统中的不同节点进行处理。从而实现了更高的有效性和稳定性,而这也正是基于Web的企业应用所必须具备的特性。

高可靠性可以看作为系统的一种冗余设定。对于一个特定的请求,如果所申请的服务器不能进行处理的话,那么其他的服务器能不能对之进行有效的处理呢?对于一个高效的系统,如果一个Web服务器失败的话,其他的服务器可以马上取代它的位置,对所申请的请求进行处理,而且这一过程对用户来说,要尽可能的透明,使用户察觉不到!

稳定性决定了应用程序能否支持不断增长的用户请求数量,它是应用程序自身的一种能力。稳定性是影响系统性能的众多因素的一种有效的测量手段,包括机群系统所能支持的同时访问系统的最大用户数目以及处理一个请求所需要的时间。

在现有众多的均衡服务器负载的方法中,广泛研究并使用的是以下两个方法:

DNS负载平衡的方法RR-DNS(Round-Robin Domain Name System)

负载均衡器

以下,我们将就这两种方法进行讨论。

二、DNS轮流排程的优势及缺点

域名服务器(Domain Name Server)中的数据文件将主机名字映射到其IP地址。当你在浏览器中键入一个URL时(例如:解释。基于所读出的这些信息,负载均衡器就可以重写报头并将请求发往集群中合适的节点上,该节点维护着相应客户端请求的会话信息。在>Linux上的heartbeat双机热备服务架设
一 安装前环境设定
两台主机硬件环境(不必完全一致):
CPU: Xeon 3G 2 (EM64T)
MEM: 2G
NIC: Intel 1G 2
eth0: 对外IP
eth1: 对内IP(HA专用)
两台主机的eth1使用双机对联线直接连接。
分区方式:
Filesystem 容量 挂载点
/dev/sda2 97G /
/dev/sda6 45G /Datas
/dev/sda1 99M /boot
none20G /dev/shm
/dev/sda3 97G /opt
另外每台主机应预留500M的raw空间或者更多来作为共用空间被HA使用。
*** 作系统:
RedHat Enterprise 4 Update2 (269-22 EL)
预安装软件:
@ X Window System
@ GNOME Desktop Environment
@ KDE Desktop Environment
@ Editors
@ Engineering and Scientific
@ Graphical Internet
@ Text-based Internet
@ Authoring and Publishing
@ Server Configuration Tools
@ Development Tools
@ Kernel Development
@ X Software Development
@ GNOME Software Development
@ KDE Software Development
@ Administration Tools
@ System Tools
二安装前网络环境设定:
node1: 主机名:servers201 ( HA01 )
eth0: 19216810201 //对外IP地址
eth1: 1000201 //HA心跳使用地址
node2: 主机名:servers202 ( HA02 )
eth0: 19216810202 //对外IP地址
eth1: 1000202 //HA心跳使用地址
特别注意要检查以下几个文件:
/etc/hosts
/etc/hostconf
/etc/resolvconf
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
/etc/nsswitchconf
#vi /etc/hosts
node1的hosts内容如下:
127001 localhostlocaldomain localhost
19216810201 servers201 HA01
1000201 HA01
1000202 HA02
19216810202 server202
node2的hosts内容如下:
127001 localhostlocaldomain localhost
19216810202 servers202 HA02
1000202 HA02
1000201 HA01
19216810201 server201
#cat /etc/hostconf
order hosts,bind
#cat /etc/resolvconf
nameserver 61139269 //DNS地址
#cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=servers201 //主机名
GATEWAY="192168101" //网关
GATEWAY="eth0" //网关使用网卡
ONBOOT=YES //启动时加载
FORWARD_IPV4="yes" //只允许IPV4
#cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=19216810201
NETMASK=2552552550
GATEWAY=192168101
TYPE=Ethernet
IPV6INIT=no
#cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
IPADDR=1000201
NETMASK=2552552550
TYPE=Ethernet
[node1] 与 [node2] 在上面的配置中,除了
/etc/hosts
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
要各自修改外,其他一致。
配置完成后,试试在各自主机上ping对方的主机名,应该可以ping通:
/root#ping HA02
PING HA02 (1000202) 56(84) bytes of data
64 bytes from HA02 (1000202): icmp_seq=0 ttl=64 time=0198 ms
64 bytes from HA02 (1000202): icmp_seq=1 ttl=64 time=0266 ms
64 bytes from HA02 (1000202): icmp_seq=2 ttl=64 time=0148 ms
--- HA02 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0148/0204/0266/0048 ms, pipe 2
三安装HA 与HA依赖包
rpm -Uvh libnet-1121-1rhelum1i386rpm //可以不装
rpm -Uvh heartbeat-pils-204-1el4i386rpm
rpm -Uvh heartbeat-stonith-204-1el4i386rpm
rpm -Uvh heartbeat-204-1el4i386rpm
rpm -Uvh ipvsadm-124-5i386rpm
四 配置 HA的各配置文件
配置心跳的加密方式:authkeys
#vi /etc/had/authkeys
如果使用双机对联线(双绞线),可以配置如下:
#vi /etc/hcd/authkeys
auth 1
1 crc
存盘退出,然后
#chmod 600 authkeys
配置心跳的监控:haresources
#vi /etc/had/haresources
各主机这部分应完全相同。
server201 IPaddr::19216810200 ipvsadm >

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13439232.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-06
下一篇 2023-08-06

发表评论

登录后才能评论

评论列表(0条)

保存