携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第14天,点击查看活动详情
前言
大家好,周一又到了,挺过周一周末还远吗?
本次给大家讲解以下计算机网络基础的内容,毕竟面试java你不能只会个java吧,不然怎么扩展你的技术栈。
先带大家认识下什么是DNS。
揭开DNS的棉纱
DNS 是域名系统 (Domain Name System) 的缩写,他主要用于域名解析,那什么是域名解析呢,假设现在你面前站了一个人,你只知道他是个人但是你不知道他叫什么名字,而这个名字一半就是域名,这个域名你把它解析了他就是ip,对比过来就是人 == ip,他的名字 == 域名,所以你可以通过名字来找到这个人。在我们软件开发中域名用的特别多,实用场景经常在注册中心服务中存在,因为注册中心不知道你ip多少但是有一个域名之后,注册中心只需要域名寻找你这个服务即可,nacos就是这样做的。
不过我们平常的DNS域名解析是由一个专门的云上DNS服务器商解析的,比如www.baidu.com这种域名 又或者其他的什么域名,我们要么在本地的host文件里面配置上dns的地址就像这样 eg:192.168.10.10 www.baidu.com
DNS解析流程处理
这样配完,我们讲下dns的处理优先级,他会优先寻找本地HOST文件,如果寻找到了,那么直接使用本地dns进行解析,没有找到则会进行远程服务器匹配,去你的ip配置的dns服务器中寻找解析,他会一级一级向上匹配,区域级别-》 市级别 -》省级别 -》国级别最后在依次向下传递,最后返回给主机电脑进行访问上网。完成DNS处理。