域名解析

cdn技术浅谈

自作多情 提交于 2020-02-22 00:02:59
CDN,即内容分发网络。cdn,一种网络缓存技术,将网站的内容发布到最接近用户的网络"边缘",使用户可以就近取得所需的内容,解决Internet网络拥塞状况,提高用户访问网站的响应速度。就是当用户访问加入CDN服务的网站时候,域名解析请求将最终交给全局负载均衡DNS处理。解决因分布、带宽、服务器性能带来的访问延迟的问题,适用于站点加速,点播,直播等场景。比如微信朋友圈,抖音,新浪微博等大IP就用到这项技术。 最简单的CDN网络架构:一个DNS服务以及几个缓存节点。 通过上图,我们可以了解到,使用了CDN缓存后的网站的访问过程变为:   1)、用户向浏览器提供要访问的域名;   2)、浏览器调用域名解析库对域名进行解析,由于CDN对域名解析过程进行了调整,所以解析函数库一般得到的是该域名对应的CNAME记录,为了得到实际IP地址,浏览器需要再次对获得的CNAME域名进行解析以得到实际的IP地址;在此过程中,使用的全局负载均衡DNS解析,如根据地理位置信息解析对应的IP地址,使得用户能就近访问。   3)、此次解析得到CDN缓存服务器的IP地址,浏览器在得到实际的IP地址以后,向缓存服务器发出访问请求;   4)、缓存服务器根据浏览器提供的要访问的域名,通过Cache内部专用DNS解析得到此域名的实际IP地址,再由缓存服务器向此实际IP地址提交访问请求;   5)

DNS 标志位简要解析

本秂侑毒 提交于 2020-02-21 18:17:15
根据规范,一个 DNS 包可以分为下面的几个部分。 其中,身份 ID 占 16 个位,标志符占 16 个位,下面的分别是请求数、回答数、权威域名服务器数、其他记录数,再下面一点的就是回答的内容了(请求、回答、权威域名服务器、其他记录) 可以对照下面这个 Wireshark 抓到的针对本站 imlonghao.com 的一次 DNS 请求进行理解 本博文主要讲述的是 DNS 包中的几个标志位 标志位 正如上面所提供的 Wireshark 的截图,我们可以看到一个名为 Flags 的栏目,这个就是我们今天要讲的标志位。 标志位总长 16 个位,也就是两个字符。 有相应值的位标记为 1 ,没有的则标记为 0 。 最后这 16 个二进制的位通过进制转换即可变成十六进制的,在图中也就是 81 80 QR 1bit 0 为客户端请求包 1 为服务器响应包 Opcode 4bits 0000 为普通的 DNS 请求 0001 为 rDNS 请求 0002 为服务器状态 0003 无 0004 为通知 (Notify) 0005 为更新 (Update) 0006 - 0015 保留 AA 1bit 0 为应答服务器不是该域名的权威解析服务器 1 为应答服务器是该域名的权威解析服务器 TC 1bit 0 为报文未截断 1 为报文过长被截断 (只返回了前 512 个字节) RD 1bit 0

2020/2/20 端口绑定和域名解析

自闭症网瘾萝莉.ら 提交于 2020-02-21 04:19:48
端口绑定和域名解析 TCP服务器的同一个端口不能够启动、绑定两次;但UDP服务器可以,但客户端连接上以后,信息只能发送给最新绑定的那个服务器端口,相当于端口被重新绑定了。 域名解析函数 struct hostent{ char *h_name; //主机名 char **h_aliases; //别名 int h_addrtype; //协议类型 int h_length; //网络地址大小 char **h_addr_list; //指向网络地址的指针 }; #include <netdb.h> struct hostent *gethostent(void); struct hostent* gethostbyname(const char *hostname); void sethostent(int stayopen); void endhostent(void);//有get就有end,用于释放内存 查看/etc/hosts文件可以知道本机的IP和域名 利用gethostbyname解析域名 源代码 #include <netdb.h> #include <stdio.h> #include <stdlib.h> #include <memory.h> #include <arpa/inet.h> void out_addr(struct hostent *h) {

DNS原理及其解析过程

橙三吉。 提交于 2020-02-18 13:07:09
前言 最近在了解边缘计算,发现我们经常听说的CDN也是边缘计算里的一部分。那么说到CDN,好像只知道它中文叫做内容分发网络。那么具体CDN的原理是什么?能够为用户在浏览网站时带来什么好处呢?解决这两个问题是本文的目的。 CDN概念 CDN全称叫做“Content Delivery Network”,中文叫内容分发网络。 实际上CDN这个概念是在1996年由美国麻省理工学院的一个研究小组为改善互联网的服务质量而提出的。那么它到底是怎么改善互联网服务质量的呢? 原理分析 我们知道,当我们使用域名访问某一个网站时,实际上就是将请求包(以Http请求为例)通过网络传输给某台服务器,比如访问“www.baidu.com”时: 首先解析出该域名所对应的IP地址(DNS域名解析) 然后将Http请求包通过网络路由到IP地址所对应的服务器 我们通常说“服务器的IP地址”,这其实不太准确,IP地址是和网卡绑定的,一个服务器可以有多个网卡,也就是可能有多个IP地址。 我们先来看第一步:域名解析 域名解析: DNS原理及其解析过程 解析域名分为两种: 将一个域名解析为一个IP地址 将一个域名解析为另外一个域名 其实解析思路不难,我们在域名服务商购买了一个域名之后,需要去映射一个IP地址,可以用Map来表示这个关系: {域名:IP} 。 同时我们也可以给某个域名取一个别名,比如“www.baidu.com

3、dns服务搭建

蓝咒 提交于 2020-02-17 11:54:35
3.1、dns服务简介: 1、DNS(Domain Name System)域名系统。 目前提供网络服务的应用使用唯一的32位的IP地址来标识,但是由于数字比较复杂、难以记忆,因此产生了域名系统(DNS), 通过域名系统,可以使用易于理解和形象的字符串名称来标识网络应用(如www.baidu.com、www.taobao.com)。访问互联 网应用可以使用域名,也可以通过IP地址直接访问该应用,在使用域名访问网络应用时,DNS负责将域名解析为IP地址。 2.、主机名和域名的区别: 主机名是内网的名字;域名是外网的名字。 主机名和域名其实是两个完全可以不同的名字,但是有很多软件(如邮件系统postfix)会默认认为它们一致。 全世界共有有13台DNS根域服务器。 3、顶级域名: .com .org .edu .gov .net .mil .info 商业 组织 教育 政府 通讯 军事 信息 4、DNS服务器特点: 分布式的数据库; 解决了数据不一致,避免了名字冲突; 有缓存机制,提高了性能和可靠性; 5、域名解析过程: 为了将一个名字解析成一个IP地址,用户应用程序调用一个称为解析器的库程序,将名字作为参数传递给它,形成DNS用户; 然后DNS用户发送查询请求给本地域名服务器,服务器首先在其管辖区域内查找名字,名字找到后,把对应的IP地址返回给DNS客户。

DNS自主搭建域名解析

天大地大妈咪最大 提交于 2020-02-16 23:36:02
DNS域名解析 以解析www.qqcy.com和mail.qqcy.com为例子 1.自主搭建域名解析服务器 a.下载bind 和 bind-chroot软件包 yum -y install bind-chroot bind b.启动DNS服务并开机自启 systemctl restart named systemctl enable named 可以用systemctl status named查看状态 2.配置DNS服务 .DNS的配置文件和地址库文件分别为如下: /etc/named.conf /var/named/… a.vim进去主配置文件> 改第13行的IP地址为改第19行的localhost为 b.复制52-55行,粘贴到文件的最末尾 zone “qqcy.com” IN { ##指定域名区域 type master; ##域名的类型 file “qqcy.com.zone”; ##指定地址库文件名称 }; c.保存退出后检查主配置文件的语法是否有问题 named-checkconf /etc/named.conf #没有任何的输出信息则表示语法正确 3.创建地址库文件 a.其中 /var/named/named.localhost是模板文件 直接拷贝模板文件为自己指定的地址库文件 cp -p /var/named/named.localhost /var/named

DNS服务器的搭建

喜你入骨 提交于 2020-02-15 15:26:15
更详细的dns笔记整理: http://services.linuxpanda.tech/DNS/index.html 1 DNS介绍 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库, 能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。 DNS协议运行在UDP协议之上,使用端口号53。 2. 环境准备 2.1 环境介绍 我这里使用的是centos7,内核版本是3.10.0-514.el7.x86_64 主dns:192.168.137.101 从dns:192.168.137.100 2.2查看默认bind的安装情况 [root@mail ~]# rpm -qa bind bind-9.9.4-37.el7.x86_64 2.3 主要文件介绍 /etc/named.conf :   主配置文件, 定义了bind的工作属性,区域的定义。 /etc/rndc.key  :  秘钥文件,配置文件是/etc/rndc.conf。 /var/named/   :   区域数据文件存放位置。 /usr/sbin/named-checkconf  :   检查主配置文件 /usr/sbin/named-checkzone  : 

Linux运维面试总结

让人想犯罪 __ 提交于 2020-02-15 00:35:59
1.ssh远程连接的问题? 第一种是远程连接慢的问题: (1)可以通过ssh -v 来检测哪个步骤出现的问题。根据对应的问题,来针对性的进行解决。 (2)可能是DNS反向解析不正确导致的.正常情况下默认配置下 sshd 初次接受 ssh 客户端连接的时候会自动反向解析客户端 IP 以得到 ssh 客户端的域名或主机名。如果这个时候 DNS 的反向解析不正确,sshd 就会等到 DNS 解析超时后才提供 ssh 连接,这样就造成连接时间过长、ssh 客户端等待的情况,一般为10-30秒左右。有个简单的解决办法就是在 sshd 的配置文件(sshd_config)里取消 sshd 的反向 DNS 解析。 # vi /etc/ssh/sshd_config UseDNS no # systemctl restart sshd 如果没有这种配置项,可以直接把DNS服务禁掉,如下: # cat /etc/resolv.conf # Generated by NetworkManager #search openstacklocal #nameserver xxxx.xxxx.xxxx.xxxx #nameserver xxxx.xxxx.xxxx.xxxx 解决方案总结: 1、在server上/etc/hosts文件中把你本机的ip和hostname加入; 2、在server上/etc

DNS域名服务

梦想的初衷 提交于 2020-02-14 23:09:18
DNS域名服务 域名系统dns服务 DNS: 名字解析服务,将名称解析为ip地址 dns端口号: 53/tcp 53/udp 本地名称解析文件 : /etc/hosts 文件,优先级高于dns 默认dns解析服务器文件 : /etc/resolv.conf dns主配置文件: /etc/named.conf dns数据解析库文件: /var/named/*.zone 语法检查 主配置文件语法检查 :named-checkconf 解析库配置文件语法检查:maned-checkzone ssy.org /var/named/ssy.org 配置文件生效:systemctl reload named DNS域名分布式结构 例: www.google.com. = 主机名+域名 根域: . 解析com. 顶级域: com,org 解析google 二级域: google, baidu 解析www 主机名: www,stady DNS相关工具 软件: 服务器端 bind 客户端 bind-utils rndc 命令: reload 生效dns配置文件 flush 清空dns缓存 dig 解析测试工具: dig www.ssy.com @10.0.0.137 指定137主机解析名称 -x 反向解析 host 解析测试工具: host www.ssy.org 10.0.0.137 curl

【Distributed】CDN

心已入冬 提交于 2020-02-13 13:00:39
一、概述 1.1 Web前端优化 1.2 DNS域名解析过程 1.3 传统方式请求静态资源 二、CDN内容分发 2.1 什么是CDN 2.2 CDN内容分发原理 2.3 阿里云环境实战搭建CDN内容分发 一、概述 1.1 Web前端优化 网站动静分离动静分离动态的资源和静态资源分别部署到不同的服务器上,使用Nginx实现静态服务器,因为nginx实现静态服务器访问速度的效果比tomcat实现静态服务器访问效果好很多。 要使用浏览器缓存,客户端(浏览器)内置缓存技术,只要访问一次静态资源请求,都会缓存到本地客户端,304状态码表示客户端缓存一般服务器上线的时候一定要在静态js、css资源后面加上时间戳,目的是为了防止发布版本与资源有冲突。 页面减少Http请求合并CSS或者JS资源,JS或者CSS一定使用压缩技术。 压缩文件变为.min 使用CDN内容分发,缓存静态资源(JS、 图片、CS),让用户从最近的服务器访问,减少客户端与服务器端宽带传输速度。使用CDN可以配置压缩。nginx也可以配置。 前后分离技术。异步化、ajax、 vue 1.2 DNS域名解析过程 DNS即Domain Name System,是域名解析服务的意思。它在互联网的作用是:把域名转换成为网络可以识别的ip地址。人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是一一对应的