我目前正在努力了解更高级的网络概念。我这样做的方法是在我作为系统管理员管理的其中一台服务器上运行网络捕获以查看和理解数据。(我运行此捕获的机器是 serveriamon.networkname.local,IP 为 172.16.2.7)
这让我在网络上进行了这次交流:
1127 11:46:55 12/10/2012 30.2960887 172.16.3.30
serveriamon.networkname.local ARP ARP:Request, 172.16.3.30 asks for 172.16.2.7
1128 11:46:55 12/10/2012 30.2961939 serveriamon.networkname.local 172.16.3.30 ARP ARP:Response, 172.16.2.7 at 78-2B-CB-23-8D-07
我能理解这种交流。位于 172.16.3.30 的机器想要找出 172.16.2.7 的 MAC 在哪里以及它是什么。该地址的服务器(本服务器)以其包含 Mac 地址的 ARP 响应进行回复。
紧接着此帧出现:
1129 11:46:55 12/10/2012 30.2964210 172.16.3.30 serveriamon.networkname.local SNTP SNTP:NTPv3 Request, Leap = 0, Mode = 3, RID = 5154 {SNTP:377, UDP:376, IPv4:375}
据我所知,这是对服务器时间的请求。没关系。下一帧让我感到困惑:
1130 11:46:55 12/10/2012 30.2972641 serveriamon.networkname.local 172.16.3.30 ARP ARP:Request, 172.16.2.7 asks for 172.16.3.30
源地址嵌入在 SNTP 请求的第 1129 帧中。为什么服务器会立即进行广播以找出 IP 地址在哪里?
我怀疑我只是误解了它是如何工作的,但我真的很感兴趣。在应该已经有信息的情况下推出 ARP 似乎“浪费”和“嘈杂”?