我对DNS如何工作的过程感到很困惑。每个环节都说不同的东西,可能会是一样的,但我无法理解。 我会尽力提出我所知道的所有内容。请添加此内容并在出现问题时进行更正。
This帖子说我们的系统配置了DNS服务器,操作系统向这些服务器发送请求。
现在,DNS解析器在哪里出现。他们在做什么。 This帖子称DNS解析器是由ISP进行翻译的计算机。然后是Browser -> Hosts File-> DNS resolvers -> DNS servers
之类的请求序列?但谁向谁发送请求?
请更正以上内容。任何帮助将不胜感激。
答案 0 :(得分:1)
列表中的一到五个是正确的。浏览器会询问您的DNS解析器(您的ISP或您在网络设置中放置的任何内容)。如果解析器不知道答案就会开始询问。
我将stackoverflow.com
作为示例
解析器会询问root servers
,他们会回复TLD servers
com
TLD servers
的权威。
解析器会询问name servers
,他们会回复stackoverflow.com
为domain registrar
name servers
配置的A record(s)
。
解析器会询问A record
,他们会回复TTL
解析器将TTL
缓存一段时间(记录的name servers
,或者它有自己的时间覆盖Browser -> Hosts File -> DNS resolver ->(rq*) Root servers -> TLD servers -> Name servers -> NS records
给出的NS records
并且当再次询问解析器时它会返回它在缓存中的内容(除非TTL已过期,然后它再次开始询问)
总结如下:
www.stackoverflow.com
询问name servers
是否要打开name server
,它们就像sub domains
(NS实际上代表FileOutputStream fos = context.openFileOutput(fileName, Context.MODE_PRIVATE);
ObjectOutputStream os = new ObjectOutputStream(fos);
os.writeObject(set);
os.close();
fos.close();
),但是FileInputStream fis = context.openFileInput(fileName);
ObjectInputStream is = new ObjectInputStream(fis);
Set<Set<String>> set = (Set) is.readObject();
is.close();
fis.close();
。
答案 1 :(得分:0)
要了解有关DNS查找的更多详细信息,请参阅以下示例:
整个周期只需几分之一秒。
浏览器 - &gt; OS - &gt; DNS查找 - &gt; RNS - &gt;根名称服务器 - &gt; TLD - &gt; ANS - &gt; RNS - &gt; OS - &gt;浏览器强>