2013-02-24 114 views
1

我使用Wireshark来从udp.port == 53捕获23包在UDP端口53

捕获数据包,当我做“平域”的名字。我可以捕捉在udp.port 2包= = 53.

当我做同样的ping我没有捕获任何事情,我必须改变域名,以捕获数据包。

为什么会发生,或者实际发生了什么,为什么我首先捕获它们?

+0

如果我的理解正确,你'ping域'和捕获数据包,然后'ping域',并不捕获数据包。 “我必须更改域名才能捕获数据包”=>您可以使用“ping XXXXXX”再次捕获数据包。这听起来像你的电脑缓存DNS查找,这很好。 http://en.wikipedia.org/wiki/Time_to_live – 2013-02-24 07:52:04

+0

很好的答案,但为什么53端口可以捕获23个数据包? – TravellingSalesWoman 2013-02-24 08:02:36

+0

可以请你解释我缓存DNS查找更多我看了链接中的东西,但我没有很好理解 – TravellingSalesWoman 2013-02-24 08:12:13

回答

2

您第一次执行“ping {域名}”,如果系统没有缓存的{域名}的IP地址,它会发送一个DNS请求来查找并获取一个DNS响应,第一个端口53端口,第二个端口53端口。

当第一次DNS查询完成后,解析器将缓存结果,以便后续尝试查找{域名}将而不是做DNS查找 - 它们只会返回以前DNS查找的结果 - 并且因此会更快地发生并导致更少的网络流量和更少的DNS服务器负载。它永远不会记住结果,因为该主机名的IP地址可能会改变;查找的结果有一个“生存时间”,并且在该时间到期之后,缓存的结果将被丢弃,并且将完成新的DNS查找。

请参阅the "Record Caching" section of the Wikipedia page for DNS