DNS解析的流程

薄洪涛6年前Linux1111

最近在做DNS解析方面的事情,今天正好整理一下DNS解析的过程

先说下什么叫DNS解析;

简单来说,就是每台服务器都有自己的IP地址,比如我想上百度网,我会在浏览器中输入http://119.75.217.109/,这样就可以打开百度,但是对人来说,记住很多无意义的ip是非常困难的,所以就有了域名,我之后上百度就只要输入https://www.baidu.com/就可以了,当我输入https://www.baidu.com/后,DNS服务器或者本地把https://www.baidu.com/解析成http://119.75.217.109/的过程叫DNS解析;DNS服务器的作用就是记录域名和ip的对应关系,当你给DNS服务器域名的时候,他返回给你你要访问的网站的服务器的IP地址;


从网上找了一张图来说明下

20171211190812796.png



1. 以用户在浏览器中输入一个网址www.baidu.com时,浏览器自身先查看浏览器的缓存中是不是存在www.baidu.com所对应的ip地址,如果有就直接访问

2. 如果浏览器缓存中不存在,那我们就检查系统的hosts文件中是不是存在对应关系,如下图这是我电脑的hosts文件,可以看到里面是有域名和ip的对应关系的,你可以把www.baidu.com  127.0.0.1对应关系写入hosts文件,然后保存,你就会发现你上不去百度了,这是因为浏览器信任hosts文件中的对应关系,127.0.0.1表示本地;

图片1.png


3. 如果本地的hosts文件中找不到对应关系,那就需要去dns服务器中查找了,首先我们先去当地的域名服务器(LDNS)中查找,一般LDNS离你比较近,链接速度快;一般大部分的域名都会在这里解析出来;

4. 如果LDNS未命中,就需要继续请求上游服务器(Root Server)进行报告,上游服务器(Root Server)会向LDNS传递一个能解析这个域名的主域名服务器地址(主域名服务器:G-TLD,国际域名服务器);

5. LDNS请求G-TLD,G-TLD查找并返回该网站注册的域名服务器,LDNS请求这个域名服务器,一定会查找到对应的IP,然后缓存这个域名和ip的对应关系;

6. LDNS把这个对应关系返回给用户,用户缓存到本地系统中


标签: DNS解析

相关文章

Nginx解决跨域问题

不解释,做个记录location / {     add_header Access-Control-Allow-Origin&n...

Cannot establish FTP connection to an SFTP server.

Cannot establish FTP connection to an SFTP server.

今天想上传个JDK,惊奇的发现,FileZilla连接不上,出现如下错误;很明显,我用FTP协议与一台使用了SFTP的服务器建立连接肯定是不行的,所以要改变协议;解决方法如下:打开File-Site...

git忽略上传配置文件

在使用git上传代码到github的时候,通常我们使用的编辑器(比如phpstorm等)会产生一些配置文件(.idea等),或者一些项目的配置信息,比如数据库信息;我们是不希望提交这些文件的;所以要用...

PHP调用不起来Python脚本

前几天做了个自动处理文件的python脚本,目前python脚本需要手动把文件放到特定文件夹下,自动去读取处理;但是老大觉得不方便,让我写了个文件上传页面,然后调用python的脚本,导出处理后的文件...

chmod引出的问题

chmod引出的问题

上传代码后,尝试访问出现如下错误先尝试对文件修改权限[root@host wechat.bohongtao.online]# chmod -R 755 ...

php脚本以守护进程的方式运行

写了一个聊天室,需要手动执行php start.php start命令去启动workerman的握手程序,但是退出xshell后,进程会被杀掉,因为之前用过node的forever,感觉php应该也有...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。