首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >何时更新arp表?

何时更新arp表?
EN

Network Engineering用户
提问于 2015-10-01 18:00:46
回答 4查看 19.5K关注 0票数 3

设备的arp表是只在收到来自先前发送的arp请求的答复时才更新,还是在设备接收到帧/数据包时更新?

向B发送arp请求

B向A发送arp回复

A的arp表被更新。

C向A发送一个数据包(假设C在其arp表中已经有A的IP/MAC )

A的arp表由于某种原因没有C的条目

A立即用C的IP/MAC更新其arp表

EN

回答 4

Network Engineering用户

发布于 2015-10-01 18:25:17

RFC不处理您的第二个场景。原因是主机C发送到主机A的网络可能与主机A不同。在这种情况下,具有ARP缓存项的主机A没有意义,因为主机A永远不会在其ARP缓存中查找主机C。主机A总是知道主机C不在它的网络上,所以当它想发送到主机C时,它总是在它的ARP缓存中寻找它自己的网关的条目。

有些实现可以按照您所描述的那样执行,但标准并没有对其进行处理,而且它似乎浪费了ARP缓存内存。

票数 4
EN

Network Engineering用户

发布于 2015-10-01 18:37:08

我会试着逐一回答你们的问题。但是前提是,只有在看到arp响应时,ARP条目才会在主机上生成。主机通常不做mac-从所有帧学习。开关起这个作用。

A向B发送arp请求,向更新的arp表发送arp答复。

  • 正确的说法是,A不向B具体发送arp请求。它发送一个arp请求(句号)。这是发送给广播MAC的。因此,子网上的每个人(广播域),包括B都会得到它。现在B发送一个arp回复。这是一种非常特殊的数据包格式(请参阅RFC)。一旦A得到这个,它将更新它的ARP表。

C向A发送数据包(假设C在其arp表中已经有A的IP/MAC ) arp表没有C的条目,原因是A立即更新了C的IP/MAC

的arp表

  • 不是的。在这种情况下,如果A没有C的MAC,并且需要向C发送响应,它将首先为IP映射发送一个ARP请求。(A WHOIS)。这会传到bcast MAC那里。C,谁看到这将作出反应,这将导致A更新其映射

所有这些都假设它们位于同一个子网上。否则,网关就会进入画面。请看罗恩的回答。

票数 3
EN

Network Engineering用户

发布于 2015-10-02 06:25:00

解释arp请求的图表:

首先,在这个例子中,Poste1希望向poste4发送一个数据包,但是它没有poste 4的@MAC,所以它发送了一个广播ARP。在这个请求中,poste 1会问:“192.168.0.44 IP地址的MAC地址是什么?”

邮政B只回答邮政1,“我是192.168.0.44,mys @MAC是9c-d2-1e-31-19-44”

最后,Poste1用poste 4的新值更新他的MAC表。这个条目将在操作系统决定的时期内保留在这个表中。

票数 0
EN
页面原文内容由Network Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://networkengineering.stackexchange.com/questions/22980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档