文章目录
封面
问题描述
问题探究
什么是DNS?
分布式,层次数据库
如何理解分布式?
如何理解层次?
本地DNS服务器
迭代查询,递归查询
DNS缓存
参考资料
封面
问题描述
从甲方项目组返回公司后,我习惯性连上公司WiFi,准备百度一个bug,突然我发现无打开百度,F5刷新了好几次也没用,浏览器报了下面的错误信息
尝试ping了一下 www.badu.com,好家伙,直接丢包
然后运行 ipconfig/all 命令看了一下本机的DNSF服务器信息
我的本机DNS地址是192.168.0.1
通常,本机DNS地址若为192.168.0.1,说明所连WiFi的路由器可能被设定为执行DNS转发职责,或者是期望客户端直接使用路由器作为DNS解析的入口点。而192.168.0.1一般是路由器的默认IP地址,并非一个标准的公共DNS服务器地址。在这种情况下,访问不了外网,例如百度,新浪微博等,有可能是路由器的DNS转发功能没有正常工作,或者路由器自身没有被配置正确以访问外部的DNS服务器。
最简单直接的解决方法是手动设置主机的DNS地址为公共的DNS服务器地址
Google DNS:8.8.8.8 & 8.8.4.4
Cloudflare DNS: 1.1.1.1
中国电信:114.114.114.114
中国联通:223.5.5.5
OK,可以正常访问百度了
这不仅让我产生了非常浓烈的好奇,从浏览器上输入URL到显示页面,中间究竟发生了什么?
问题探究