域名主机服务器ip网卡与网站之间的关系是什么?
关于这个问题,我们从用户访问一个网站的整个过程来实例说明这些概念。
用户要访问一个网站(假设今日头条),第一步要做的是啥,用电脑或者手机浏览器(不是头条APP)输入头条的地址"https://www.toutiao.com",这个第一部分https是指https协议,是安全的http访问协议。://是固定表达。最后的"www.toutiao.com"就是头条的域名,这就是我们通常说的网站域名。
域名:A记录,CNAME,子域名,根域名,顶级域名其实这个域名还可以细分为三部分,www为根域名的一个A记录(一般小网站,直接解析成IP)、CNAME(跳转到其他域名)或者"www.toutiao.com"为一个子域名(可以配自己的A记录、CNAME);
"toutiao.com"才是头条的根域名;
".com"也是一个域名,我们叫它顶级域名。好了关于域名就说这些。
DNS,递归解析浏览器收到输入的url,解析出来域名,去请求各级dns(域名解析服务),请求过程多级递归解析,dns会把域名转化为ip(由用户在域名商设置,或者自己的dns设置)返回给浏览器,浏览器再给这个ip发出http请求。
回答问题1和问题3问题1的答案在这,大型网站域名对应不是一个IP,多个IP是这样对应的:
首先第一层是智能域名解析,根据访问用户的ip,选择一个链路最近服务器ip。这个ip为负载均衡的vip,这就是第二层负载均衡。
由负载均衡调度到不同的实体服务器,这为第三层CDN或者反向代理。
由反向代理再到web应用服务器,这是第四层,通常小网站域名直接解析到这个ip,没有前面三层。
实体服务器请求应用服务器(一台或者多台),这是第五层。
应用服务器根据需要访问数据库服务器,或者文件服务器(比如图片服务器),这是第六层。
第六层。或者前面几层中的数据可能访问硬盘或者专门存储,一般来说存储或者各层都是高可用设计,都有冗余,故障时候可以自动切换。
在上述的负载均衡或者代理层,都是一个ip(vip或者代理ip)可对应多个ip。走lvs有三种模式其中直接路由dr模式,必须后面主机都要有公网ip。nat方式(代理也是走这种方式),可为公网ip或者内网IP。
IP,主机、WEB服务器、网站这个ip有可能是cdn、负载均衡vip、代理啥的,最终会转发请求到实体机器,这个机器上的web服务器,比如nginx,apache等会响应请求,从服务器中取出需要的数据返回,浏览器收到数据(html信息)然后呈现出内容来,就是头条的首页。头条首页再链接到其他页面,这许多页组到一起就是一个网站。这就是ip、主机服务器和网站。
回答问题2在web服务器中可以设置不同的站点host,即域名,所以可以配置多个域名,对应不同的站点目录,不同的应用服务器(对应php,java等),不同的数据库(多个库,或者表)。这些都可以通过程序在web设置对应到空间商的管理后台。常用的软件有cPanel,WHM。
网络分层和网卡我们上面说的呈现页面的数据(html,其实上也包括css还有js)都是网络高层应用层的内容。而实际上信息在网络中传输的时候是2进制数据(物理层),二进制打包成tcp/ip信息包(网络层),这些包从物理线路上的二进制数据传到主机时候打包然后给网卡处理,网卡把这些tcp/ip包根据顺序连到一起再传给上层的应用层(web服务器或浏览器)。这就是网卡的作用,接受和处理tcp包。
四层网络结构
OSI七层网络结构
好了,整个访问的详细流程清楚了,这些概念也就清楚了。实际上每一个概念都可以展开大篇幅论述,但是那就不是这个回答要说的了,大家如果感兴趣请关注虫虫,给虫虫留言,虫虫会在合适时候给大家细说。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有