漫画:这是我见过对DNS最通俗易懂的解释了
亲爱的,我出去一趟。
你要去干嘛?
有事。
有什么事?
我跟同事讨论下网络方案。
讨论什么方案?
我跟你说了,你也不知道。
你说呀!你不说怎么知道我不知道。
那好吧,我给你讲一讲,看你能不能给我一点建议。最近有个局点需要配置DNS代理功能。
什么是DNS?
DNS就像是网络世界的地图,根据域名查找对于的IP地址,能够让用户更方便的上网。
我上网的时候,会用到DNS吗?
我们上网都有用到它,例如访问某个网站,输入的是网址,实际机器访问的是ip地址。
首先查找电脑上的DNS缓存列表,如果有记录,那么直接返回对于IP地址,否则进行下一步;
查找电脑上的HOST文件的映射关系,如果有记录,那么返回对于IP地址,否则进行下一步;
查找互联网线路供应商的本地DNS服务器(即中国电信、中国移动或中国联通),本地DNS服务器先查找自己的缓存记录,如果有记录,那么返回对于IP地址,否则本地DNS服务器向根域名服务器发生请求;
根域名服务器收到请求后,查看是.com顶级域名,于是返回.com顶级域名服务器的IP地址给到本地DNS服务器;
本地DNS服务器收到回复后,向.com顶级域名服务器发起请求;
.com顶级域名服务器收到请求后,查看是.baidu.com次级域名,于是返回.baidu.com次级域名服务器的IP地址给到DNS服务器;
本地DNS服务器收到回复后,向.baidu.com次级域名服务器发起请求;
.baidu.com次级域名服务器收到请求后,查看是自己管理的域名,于是查看域名和IP地址映射表,把www.baidu.com的IP地址返回给本地DNS服务器;
本地DNS服务器收到回复后,向电脑回复域名对应IP地址,并把记录写入本地DNS服务器的缓存里;
电脑收到回复后,使用IP地址访问网站,并把记录写入电脑DNS缓存中。
那你说的DNS代理有是干什么用的?
顾名思义,DNS代理代替电脑跟DNS服务器进行请求和查询。作用是简化网络配置和集中管理。
DNS代理(DNS Proxy)用于在DNS Client和DNS Server之间转发DNS请求和应答报文。局域网内的DNS Client把DNS Proxy当作DNS Server,将DNS请求报文发送给DNS Proxy。DNS Proxy将该请求报文转发至DNS Server,并将DNS Server的应答报文返回给DNS Client,从而实现域名解析。
使用DNS Proxy功能后,当DNS Server的地址发生变化时,只需改变DNS Proxy上的配置,无需改变局域网内每个DNS Client的配置,从而简化了网络管理。
上次我打开百度网站,却跳转到一个广告网站,这是怎么回事?
这个就是DNS劫持,把目标网站域名解析到错误的IP地址上。这时可以把DNS地址设置成运营商提供的IP地址,或者设置成公共DNS服务器IP地址。就像你买衣服一样的,去商场买名牌,尽量不去买质量和服务都不靠谱的地摊货。
说到买衣服,我的建议是陪我去逛街看看衣服吧,为双十一做准备。
这 ......
关注「开源Linux」加星标,提升IT技能